DBEdit



  • Hallo!

    Ich möchte in einem DBEdit Feld die aktuelle Uhrzeit automatisch mit dem Befehl DBEdi7->Text = DateTimeToStr(Now()); reinschreiben lassen und dann mit den Befehlen

    Storungen->DataSource1->DataSet=Storungen->Table1;
    Storungen->Table1->Next();
    Storungen->Table1->Prior();

    es in die Datenbank übertragen.
    Die Uhrzeit wird zwar in das DBEdit feld geschrieben aber wenn ich auf den Button klicke der die oben stehenden Befehle ausführt bleibt die Datenbank leer. Ich möchte noch darauf hinweisen das ich mit DBEdit arbeiten muss und nicht auf andere Objekte zurückgreifen kann.



  • Hallo

    Ohne die Methoden Append()/Edit() und Post() wird nichts in die Datenbank geschrieben. Besser noch ist eine eigene INSERT/UPDATE SQL Anweisung.

    bis bald
    akari



  • Noch ein Hinweis: Wenn das Feld in der Datenbank vom Typ Date oder DateTime ist, sollte man das konvertieren der Datumswerte der Datenbank überlassen. Also am besten ein parametrisiertes Update-Statement verwenden. (Ich kann nicht nachvollziehen, warum Du nur ein TDBEdit verwenden kannst.)

    Von TTable solltest Du dich grundsätzlich verabschieden. Dies funktioniert nur mit dBase- und Paradox-Datenbanken, respektive über die BDE einwandfrei. Alle drei sind allerdings schon seit Jahren 'End of Life' und bereiten auf modernen Rechnern mehr Probleme als sonst was.

    Grüße Joe_M.



  • Was für eine Datenbank benutzt man ansonsten außer TTable???



  • Hallo

    TTable ist keine Datenbank, sondern eine VCL-Komponente aus dem BDE-Package, das einfache Paradox7 Tabellen ohne SQL-Filter anzeigt. Sowohl die DBE, als auch Paradox7 als auch im speziellen TTable gelten als veraltet und unflexibel.
    Als alternative bietet sich zumindetens TQuery bzw. bei Builder6 auch TADOQuery an. Desweiteren gibt es noch externe Libs um auf spezielle Datenbanken nativ zuzugreifen, wie Firebird o.ä.
    Dazu gibts aber schon ne Menge Threads hier im Forum.

    bis bald
    akari


Anmelden zum Antworten