Datenbankenverbindung
-
Hi da bin ich mal wieder.
Ich warne direkt mal jeden, der sich das durchliest! Ich habe noch keine Ahnung, deshalb schreibe ich auch hier rein
Ich will in mein Programm eine Datenbank einbinden. Ich will keine Anwendung schreiben, mit der ich dann mittels Steuerelemente die Datenbank manipulieren kann, sondern das will ich im Code machen.
Es wäre optimal, wenn die Datenbank auch noch dynamisch wäre, also wenn ich mittels Code die Struktur verändern könnte (Spalten hinzufügen etc.) oder wenigstens neue Datenbanken direkt aus dem Programm selber erzeugen könnte.Mir ist egal, wie ausführlich ihr dazu Stellung nehmen könnt, aber mir wäre es wichtig, dass ich zumindest ein bisschen was bekomme, denn ohne die Datenbankeinbindung komme ich nicht weiter. Es hat also erstmal die Verbindung priorität
Danke! Schuri
-
Schau dir mal CDatabase an, da kannst du der Datenbank SQL-Befehle übergeben.
Und zum Datenauslesen (und auch Manipulieren) kannst du CRecordset nehmen.In der FAQ sollte auch noch was zu finden sein. Und in Visual C++ 6 in 21 Tagen steht auch was dazu.
-
Jo, das hab ich mir auch schon durchgelesen, aber ich komme damit irgendwie nicht klar!
Kann mir vielleicht jmd. einfach mal ein Beispiel geben?
-
Nutz mal die Forumsuche:
FAQ: http://www.c-plusplus.net/forum/viewtopic.php?t=39098&highlight=cdatabase
Und 48 Suchergebnisse in diesem Forum nach CDatabase. Nach CRecordset dürfte es sogar noch mehr geben.Und in dem Buch findest du halt auch Beispiele.
-
wenn du datenbanken über odbc dynamisch dann einbinden willst, empfehle ich die Klasse CColumns (da gibts dann ne erklärung in der MSDN).
weiterhin hilft CArray beim dynamischen binden.
für das hinzufügen von spalten kann man viel mit CRecordset->ExecuteSQL machen.
diese sachen funktionieren alle mit ner access-db, ansonsten sollte das aber auch klappen.
viel spass, das ist ne ziemlich fummelei, vor allem, wenn man noch nie was mit datenbanken programmiert hat.
grüsse,
daniel
-
jo, also mit SQL kann ich ja programmieren. Jetzt hab ich nur noch folgendes Problem:
Ich checke hier
virtual BOOL OpenEx( LPCTSTR lpszConnectString, DWORD dwOptions = 0 );
(OpenEx-Funktion von CDatabase) nicht, was ich bei lpszConnectString angeben muss.
MfG, Schuri
-
schuri schrieb:
Ich will keine Anwendung schreiben, mit der ich dann mittels Steuerelemente die Datenbank manipulieren kann, sondern das will ich im Code machen.
ähh, versteckt sich hinter den steuerelementen kein code ?