MySQL Problem
-
Bei try/catch-Vorschlägen am besten immer auf den entsprechenden FAQ-Beitrag verweisen.
-
Vieleicht mache ich auch etwas verkehrt?
try
{
Table->ApplyUpdates();}
catch (EDBEngineError& E)
{
MessageBox(0, E.Message.c_str(), "Problem!", MB_ICONSTOP |MB_OK);}
Table->ApplyUpdates() (jetzt werden die Daten erst in eine Datei gespeichert und dann erst an die Datenbank übergeben )
Kommt aber genau der gleiche, als wenn ich es direkt versuche!!
-
Zitat aus der FAQ:
Dass die Exception-Warnung auch mit try beim Testlauf im Debugger auftritt ist normal (kann bei Bedarf in den Debugger-Optionen abgestellt werden).
Wenn das Programm alleine für sich läuft, also über die .exe gestartet wird, dann sollte es nur die von dir vorgesehene Fehlermeldung auswerfen und anschliessend normal weiterlaufen.
-
Auch wenn ich das Projekt (und *.exe starte)erzeuge kommt die gleiche Fehlermeldung!
Fehlermeldung:
Problem!
Merkmal nicht verfügbar!
[MySQL] [ODBC 3.51 Driver] Transactions are not enabled!Kann dann Ok drücken und mit den Programm weiterarbeiten!
Den Catch-Teil spricht er nicht an!
-
Habt Ihr mal darüber nachgedacht, daß mySQL eigentlich keine Transactionen unterstützt, ist das vielleicht die Ursache der Fehlermeldungen ??
-
Das ist garantiert die Ursache, es ging ja nur darum, die Fehlermeldung zu unterdrücken. Was scheinbar auch gelungen ist, zumindest was das Programm betrifft, die neue Fehlermeldung kommt ja direkt von den Treibern.
-
Ich würde schon ganz gern die neuen Daten in die Tabelle kriegen!!
Wenn ich das Programm neu starte, haben alle überschreibenen Daten den alten Wert. Nur die Daten, die neu eingefügt wurden (mit insert) werden korrekt übernommen!
Es muß doch auch die Möglichkeit geben, Daten einer MySQL-Datenbank abzuändern (ohne SQL Befehle Update)
-
Welchen BCB benutzt du denn? Im BCB6Pro/Ent gibt's dbExpress-Treiber für den direkten Zugriff auf MySQL.
-
Ich benutze Borland C++ Bulider 5 Pro mit ODBC-Treiber von MySQl. Um auf die Datenbank zuzugreifen TTable und TQuery +TDatabase verbunden mit ODBC-Treiber
-
Hallo
ich habe dasgleiche problem und die Transaktionen lassen sich doch im ODBC-Treiber abschalten
ODBC-Datenquelle -> mySQL -> Options Disable Transactions
Ich hoffe, das hat keine weiteren Auswirkungen ?
MfG
Klaus