mysql DateTimePicker und Time



  • Hi ich habe eine MYSQL Datenbank mit einem Time Feld. nun soll in dieses Feld mit dem DateTimePicker eine Zeit eingetragen werden. z.B. so ->

    ADOTable1->FieldByName("So1")->AsDateTime = DateTimePicker1->Time;

    geht aber nicht.
    Compilieren läuft ohne Probleme, sobald der DateTimePicker zum Einsatz kommt -> Absturz Die Fehlermeldung lautet:
    Die zu aktualisierende Zeile wurde nicht gefunden etc.
    was mach ich falsch?



  • Wie greifst du denn generell auf die Tabelle zu (mittels Komponenten oder per Sourcecode)? Zeig mal etwas mehr Code.

    P.S. Die DateTimePicker-Komponente ist nicht datensensitiv.
    Wenn du eine DBDateTimePicker-Komponente benötigst, dann kann ich dir eine schicken?

    Eine andere gibt es z.B. unter http://www.geocities.com/SiliconValley/Hills/8946/zip/DBDateTimePicker.zip



  • Erst mal vielen Dank für dein angebot. Den DBDateTimePicker habe ich runtergeladen aber noch bin ich zu unerfahren um ihn einzubinden?
    Da mein eigentliches Programm mit 8 Forms immer ewig lang kompiliert habe ich ein kleines Testprogramm geschrieben. Ich hatte die Datenbank von Access (lokal) auf mysql (im Netz) gewechselt. alle anderen Dinge gehen soweit.

    Für den Zugriff habe ich eine ADOConnection -> dann eine ADOTable -> DataSource Komponente.

    Im DBGrid läuft auch alles (bis auf die Time Felder)

    der Code ist nun ganz schlicht bei DateTimePicker1Change:

    ADOTable1->Open();
    ADOTable1 -> Edit();
    ADOTable1->FieldByName("So1")->AsDateTime = DateTimePicker1->Time;
    ADOTable1->Post();



  • Mit deinem Code bist du auf jeden Fall nicht synchron zu den datensensitiven Komponenten (DBGrid etc.).

    Du öffnest die Tabelle und editierst dann immer den ersten Eintrag.
    Warum jetzt die Fehlermeldung "Die zu aktualisierende Zeile wurde nicht gefunden" kommt, kann ich dir aber nicht sagen. Gibt es evtl. einen Fehler beim Öffnen der Tabelle? Du kannst den Status mit der Eigenschaft 'State' abfragen (dsInactive wäre der Fehlerfall).

    Um den DBDateTimePicker einzubinden, einfach "Komponente installieren" aufrufen und den Pfad auf die Komponente eintragen.


Anmelden zum Antworten