Einzelnen Beitrag anzeigen

Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#10

Re: wie bekomme ich die id des zuletzt geschriebenen Datensa

  Alt 20. Aug 2004, 11:28
Zitat von Grumble:
danke nun klappt es

allerdings addierte
DBForm.query1.SQL.add('Select GEN_ID(GEN_IDRECORDS_ID,1) From RDB$Database'); immer noch ne id dazu...

deshalb hab ichs in
DBForm.query1.SQL.add('Select GEN_ID(GEN_IDRECORDS_ID,0) From RDB$Database'); geaendert... nun krieg ich wirklich die zuletzt geschriebene id raus

wo wird den die ID verwendet und in die Tabelle geschrieben ?
Wenn du es so machst wie oben, kann es dir passieren, wenn zwei gleichzeitig (von verschiedenen Computern) aus einen Eintrag erzeugen, das dann die ID's falsch sind, die die bekommst (mit GEN_ID(GEN_IDRECORDS_ID,0))

daher vielleicht eher so :
Delphi-Quellcode:
DBForm.query1.SQL.add('Select GEN_ID(GEN_IDRECORDS_ID,1) From RDB$Database');
DBForm.query1.Open;
id := DBForm.query1.Fields[0].AsInteger;

DBForm.query1.SQL.Add('insert into IDRECORDS (ID, s, ...) values (:ID, :s);');
DBForm.query1.ParamByName('ID').AsInteger := id;
DBForm.query1.ParamByName('s').AsString := s;
DBForm.query1.ExecQuery;
damit hast du 100% die richtige ID ...

nur als Vorschlag

Gruss
Hans
  Mit Zitat antworten Zitat