So, noch eine Frage:
Kann es sein, dass die
MySQL-C-
API (libmySQL.dll) die Datenbank cachet? Folgendes Szenario:
1. Ich führe ein Programm aus, welches meine
DLL, welche via
MySQL-C-
API (libmySQL.dll) auf einen
SQL-Server zugreift und die Verbindung beim Startet herstellt und beim Beenden trennt (also nicht nach jedem Aufruf, sondern beim Einbinden), aus.
2. Ich bringe die
DLL dazu, eine Abfrage zu tätigen und dieses Ergebnis auszugeben
3. Ich füge mittels EMS
MySQL Manager via
SQL Editor (also getippem
SQL-Code) einen Datensatz hinzu
4. Ich drücke nochmals "Execute
Query" und mir wird ein Fehler ausgegeben, dass der Datensatz nicht nochmal eingefügt werden kann, da ein Feld auf
UNIQUE steht (ist auch gut so; wollte nur testen, dass der Datensatz auch gepostet wurde).
5. Ich sage der
DLL, sie soll mir den neuen Datensatz anzeigen (Programm und
DLL wurden zwischen 1. Abfrage und Einfügen des neuen Datensatzes nicht neu gestartet bzw neu geladen)
6. Kein Datensatz erscheint, da mysql_num_rows 0 ergibt. (Wieso auch immer...
)
7. Ich starte das Programm neu (somit wird auch die
DLL neu eingebunden und die Verbindung neu aufgebaut)
8. Der neue Datensatz kann abgefragt werden.
Woran liegt das? Speichert die
DLL ev. die Tabelle im Cache oder wieso ist das so? Wäre für jeden Tipp froh.
Grüße
Faux