MySql --> mit c++ daraus lesen geht, aber wie schreib ich was in die Datenbank
-
Hallo !!
Vielen Dank für Deine Unterstützung
Gerne kannst Du mir Dein Projekt zuschicken: heinz.hemer@t-online.de
Und sobald ich was Neues weiss meld ich mich bei Dir !
Heinz
estartu_de schrieb:
Jetzt muss ich heinz1 aber mal unterstützen!

Ich lese seit Monaten mit, in der Hoffnung, dass genau dieses Thema endlich mal beantwortet wird. Ich suche nämlich auch nach Antworten auf exakt diese Fragen.
Ich hatte sie auch schon mal bekommen, MySQL spezifisch. Aber leider hat sich das DBMS geändert und könnte sich nochmal ändern. Also möchte ich dass jetzt wirklich gerne mit den Klassen der MFC erschlagen.
@alex-t: Wenn es schon so oft im Forum stand, warum zum Henker (*explodier*) finde ich es nicht? Mit welchen Suchbegiffen findet man die Beträge?
Achja, ich vergaß: Die Suche ist ja immernoch kaputt. Man findet also hier im Forum nix.
Wenn du dich noch dran errinnerst, poste doch mal die Links oder hast du vielleicht ein Beispielprojekt?Warum könnt ihr immer nur auf die FAQ verweisen? Klar will man nicht alles immer und immer wieder schreiben - verstehe ich. Aber: Solange die Suche hier nicht geht ist genau der Verweis auf die Suche sehr unfair. Denn die Anleitung steht nicht in der FAQ, sondern wenn überhaupt irgendwo im Forum an sich. Un das durchzusuchen (von Hand) ist unzumutbar.
Also: Bitte, ich möchte es auch wissen!
Wie macht man ein Insert oder Update oder Delete mit der Klasse CRecordset?@heinz1: Wenn du auch eine auf MySQL spezialisierte Variante gebrauchen kannst, kann ich dir ein Beispielprojekt schicken. Ansonsten kannst du dir ja die Klassen und Anleitungen von Unix-Tom anschauen, genau das nutze ich nämlich.
-
Hi,
nachdem ich vor kurzem auch damit gekämpft habe, hier meine Lösung (Ich verwende zwar nicht mySQL, aber CRecordset, um über ODBC auf eine ACCESS-DB zuzugreifen).
Um einen neuen Record in die DB einzufügen, verwende ich ein Member eines CRecordset (z.B. hier m_x), die Variablen sField1 und nField2 sind Columns der Table:
// CRecordset auf Update vorbereiten: m_x.AddNew(); //Felder füllen: m_x.sField1 = "Irgendwas"; m_x.nField2 = 112; //Update/Insert durchführen: m_x.Update(); //Close m_x.Close();Hoffe das hilft...
Gruss
yeti
-
Auch wenn die Suchfunktion nicht geht ist die FAQ nur 4 Seiten lang. Da braucht man nicht viel suchen.
-
estartu_de schrieb:
Ich hatte sie auch schon mal bekommen, MySQL spezifisch. Aber leider hat sich das DBMS geändert und könnte sich nochmal ändern. Also möchte ich dass jetzt wirklich gerne mit den Klassen der MFC erschlagen.
Das RDBMS von MYSQL soll sich geändert haben ?
Nicht das ich wüsste. Selbst die API hat sich nicht geändert.
Mein Klassenlib habe ich vor ca. 3 Jahren geschrieben und die Funktioniert immer noch.
-
@Unix-Tom: Nein, nicht MySQL hat sich geändert. Ich muss ein anderes System verwenden. Perversif oder so, ich hab den Namen nicht richtig verstanden und hatte noch nicht die Möglichkeit genauer nachzufragen.
Ich muss jetzt halt ODBC allein verwenden. Nicht dass ich nochmal umsonst entwickle.
-
@heinz1:
Kannst Du bitte den TOFU mal unterlassen... erleichtert das Lesen Deiner Beiträge ungemein. Danke!
-
Hallo zusammen !!!
Mein besonderer Dank gilt estartu_de, ohne deren Hilfe wäre ich noch lange nicht fertig.
Heinz
estartu_de schrieb:
Jetzt muss ich heinz1 aber mal unterstützen!

Ich lese seit Monaten mit, in der Hoffnung, dass genau dieses Thema endlich mal beantwortet wird. Ich suche nämlich auch nach Antworten auf exakt diese Fragen.
Ich hatte sie auch schon mal bekommen, MySQL spezifisch. Aber leider hat sich das DBMS geändert und könnte sich nochmal ändern. Also möchte ich dass jetzt wirklich gerne mit den Klassen der MFC erschlagen.
@alex-t: Wenn es schon so oft im Forum stand, warum zum Henker (*explodier*) finde ich es nicht? Mit welchen Suchbegiffen findet man die Beträge?
Achja, ich vergaß: Die Suche ist ja immernoch kaputt. Man findet also hier im Forum nix.
Wenn du dich noch dran errinnerst, poste doch mal die Links oder hast du vielleicht ein Beispielprojekt?Warum könnt ihr immer nur auf die FAQ verweisen? Klar will man nicht alles immer und immer wieder schreiben - verstehe ich. Aber: Solange die Suche hier nicht geht ist genau der Verweis auf die Suche sehr unfair. Denn die Anleitung steht nicht in der FAQ, sondern wenn überhaupt irgendwo im Forum an sich. Un das durchzusuchen (von Hand) ist unzumutbar.
Also: Bitte, ich möchte es auch wissen!
Wie macht man ein Insert oder Update oder Delete mit der Klasse CRecordset?@heinz1: Wenn du auch eine auf MySQL spezialisierte Variante gebrauchen kannst, kann ich dir ein Beispielprojekt schicken. Ansonsten kannst du dir ja die Klassen und Anleitungen von Unix-Tom anschauen, genau das nutze ich nämlich.
-
Tja, nur auf meine Fragen hat sich noch keine Antwort gefunden.

Die Lösung mit der direkten Übergabe von SQL-Kommandos ist ja angenehm, aber wohl nicht DBMS unabhängig. Dass muss ich aber sein.
-
meinst du persavive? sieht nach einem totschlagwort aus.
http://www.heise.de/newsticker/data/jk-28.08.02-005/
http://www.pervasive2004.org/cfp.phpmit dem mysql/odbc driver kannst du mysql wie odbc anbinden und verwenden.
vielleicht hilft das.so long
-
ps: aber im grunde brauchst du eine abstraktion der db, die daten anfordert in einem bestimmten format, und die jeweiligen öffnungsprozeduren müssen überschrieben werden mit der spezifikation der jeweilig von der speziellen db erforderten öffnungs- und leseprozedur (bzw. schreibprozedur).
damit hälst du das ganze soweit offen, daß später neue dbs oder was sonst daten liefert angehängt werden können.
-
Danke II, aber irgendwie sieht das nicht nach dem aus, was ich da vermutet hätte. Naja muss ich eh nochmal fragen.
Aber: Ich habe mein MySQL schon über ODBC angebunden. Mein Problem ist blos die originale Handhabung der Klasse CRecordset.
Die Lösung von Unix-Tom ist klasse, aber ich glaube, sie ist nicht DBMS unabhängig...

-
Sie ist zwar nicht Unabhängig aber ich bin dabei eine ODBC-Wrapper zu machen welche die gleichen Methoden exportiert. Man braucht nur die DLL austauschen und der Connect ist anders. Dem Connect bei ODBC übergibt man nur die Datenquelle.
Ist aber noch Beta.Kommt übrigens alles in mein Buch rein.
-
Tja Unix-Tom. Wenn ich aber warte, bis du fertig bist, hat mich mein Chef erschlagen.

Ausserdem muss es doch irgendwo eine Anleitung für die normalen Datenbankzugriffsklassen der MFC und ihre Handhabung geben, oder?
-
In der MSDN
-
[ironie]Danke[/ironie], die Beschreibungen habe ich schon vor Monaten gelesen.
Wenn ich die verstanden hätte bzw. überhaupt was an Beispielen gefunden hätte, dann würde ich hier nicht so nerven.
Mir würde ja schon so ein doofes kleines Progrämmchen weiterhelfen, das mehr macht als nur ein Select.
Wenn man doch blos nicht immer den Quellcode und die Bücher zurücklassen müsste, wenn man die Firma wechselt. Dann könnte ich zum Regal gehen und in ein Buch gucken und da steht das drin. Ich weiß aber weder Titel noch Verlag, sonst hätte ich es mir gekauft.
Also: Ich habe hier die MSDN 10/2000, die ist zwar total kaputt (Verlinkung klappt nicht mehr) aber da drin hab ich auch mit der Suchfunktion nix gefunden. Die MSDN 04/2003 sieht genauso aus.
Hast du mal einen Link zu der Online MSDN, wo Beispiele sind? Oder Suchbegriffe mit denen ich ganz bestimmt was finde? Es kommt mir wirklich ganz besonders auf die Beispiele an.

-
im nachhinein denke ich, du meintest nur 'persistent'
passt besser.. zu datenbanken.eine persistente verbindung...
-
@II: Ich frag nochmal nach, kann ja den richtigen Namen posten, wenn ich ihn weiss.

-
SChau mal in die FAQ. Dort hab ich eine Source gepostet wie man ODBC anbindet und die Datenbank direkt per SQL anspricht
-
Ach Unix-Tom, ich geb es auf.

Das, was du gepostet hast funktioniert wunderbar. Ich kann es auch nutzen, hatte ich bisher ja auch. Das ist ja auch das, was ich heinz1 beigebogen habe.
Ich möchte den "Microsoft Weg" mal machen.
-
Wie war eigentlich die Frage nochmal?
Du wolltest per ODBC auf Datenbanken zugreifen oder ?