Announcement

Collapse
No announcement yet.

Änderungen in TDBGRid in DB speichern.

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Änderungen in TDBGRid in DB speichern.

    Hallo,

    ich habe ein TDBGRid (AutoEdit=true) und möchte die geänderten Daten
    in die Datenbank speichern. Ich verwende die IB-Controls

    welche Befehle muss ich (z.B. in einem Button) ausführen um die Daten in
    in die Datenbank zu speichern?



    hier im Forum habe ich z.B.
    DataModule2->IBTransaction1->Commit();
    DataModule2->IBTransaction1->StartTransaction();
    als Anwort auf eine ähnliche Frage gefunden. Aber damit wird nichts
    gespeichert, lediglich die Inhalte des TDBGrid nicht mehr angezeigt.

  • #2
    Im zugrundeliegenden Dataset die PostMethode aufrufen
    Christian

    Comment


    • #3
      Originally posted by Christian Marquardt View Post
      Im zugrundeliegenden Dataset die PostMethode aufrufen
      OK. Führe ich ein:
      IBDataSet1->Post();
      aus erhalte ich den Fehler: EDatabaseError 'Datenmenge weder im Editier noch im Einfüge-Modus'

      Also noch ein:
      IBDataSet1->Edit();
      davorgeklatscht und jetzt klemmts mit:
      'Eine Datenmenge, die nur zum lesen ist kann nicht geändert werden'

      dazu habe ich noch nichts gefunden, vermute aber dass dies so weitergehen
      wird. Daten in einem DBGrid kann ich zwar darstellen, im Grid ändern aber
      nicht in die Datenbank speichern.

      Kann mir jemand mit einem Link bzw. einen Beispiel zu diesem Thema weiterhelfen? WIE speichert man mit den InterBase Komponenten Daten in eine Datenbank? WIE geht das?

      Comment


      • #4
        ok hat sich erledigt mit:

        DataModule2->TYP->Post();
        DataModule2->IBTransaction1->CommitRetaining();
        DataModule2->TYP->Refresh();
        scheint es zu funktionieren.

        Comment

        Working...
        X