HEJ
Eftersom du er fra IHA går jeg ud fra det er Visual Studio du bruger?? Men hvis det nu er borland er der indbyggede komponenter, ret simple. Det er ADO komponenterne...
Kan du ikke oplyse lidt mere med udviklings miljø??
Der udvikles i MS visual studio .NET og der ønskes ikke at anvende ATL bibliotekerne.
Det skal køre som en WIN32 konsol applikation og ikke en managed applikation.
Lars Sarbæk Kristiansen
IKT-ingeniør studerende
Ingeniørhøjskolen i Århus
Hej Lars!
Jeg kan kun forklare dig hvordan det kan gøres i MS Visual Studio.NET ved hjælp af Managed Code hvis du vil have det...? Håber også at du ved, at en WIN32 applikation også kan udvikles med Managed Code...?
Her er et kode-eksempel i Managed C++:
#include "stdafx.h"
#using <mscorlib.dll>
#using <System.dll> // For Console I/O
#using <System.Data.dll> // For ADO.NET
#include <tchar.h>
using namespace System;
using namespace System:
ata; // Generic ADO.NET definitions
using namespace System:
ata:
leDb; // Specific definitions for SQL Server data provider
int _tmain(void)
{
OleDbConnection* cnMinDB = new OleDbConnection();
cnMinDB->ConnectionString = S"Din Database connection string skal skrives her... hvordan så ellers ser ud...";
try
{
cnPubs->Open();
Console::WriteLine(S"Connected to database successfully!");
Console::WriteLine();
OleDbCommand* cmMinComm = new OleDbCommand();
cmMinComm->CommandText = S"SELECT etellerandet FROM etellerandet"; // Her sættes SQL kommandoen!
cmMinComm->CommandType = CommandType::Text;
cmMinComm->Connection = cnMinDB;
Object* numberOfTitles = cmMinComm->ExecuteScalar();
Console::Write(S"Number of titles: ");
Console::WriteLine(numberOfTitles);
Console::WriteLine();
int rowsAffected = cmMinComm->ExecuteNonQuery();
Console::Write(S"Number of affected entries: ");
Console::WriteLine(rowsAffected);
OleDbDataReader* reader = cmMinComm->ExecuteReader();
Console::WriteLine(S"\\n-----------------------------------");
while (reader->Read())
{
Console::Write(reader->GetString(0));
Console::Write(S", ");
if (reader->IsDBNull(1))
{
Console::WriteLine(S"No price yet");
}
else
{
Console::WriteLine(reader->GetDecimal(1));
}
}
}
catch(OleDbException* Xcp)
{
Console::Write(S"Error occurred: ");
Console::WriteLine(Xcp->Message);
}
// Tjecker om min DB er åben... Hvis den er det lukker vi den for at frigive memory
if (cnMinDB->State != ConnectionState::Closed)
{
cnMinDB->Clone();
}
Console::WriteLine(S"The database connection is now closed");
return 0;
}
Håber du kan bruge det... Hvis det skal være med Unmanaged C++ kan jeg måske ikke hjælpe dig...
- Jonas
"Vive su vida a través de sus propios ojos!"[Redigeret d. 10/10-02 13:39:29 af Jonas Midstrup]