![]() |
Datenbank: FireBird • Version: ? • Zugriff über: IBC
Firebird INTEGER = NotNull
Hallo,
habe Probleme mit der Spalte "Einsatznummer" hier soll automatisch eine Nr. angelegt werden. Einsatznummer(PK)INTEGER NOTNULL
Delphi-Quellcode:
Einsatz.Insert;
Einsatz.Edit; z := z +1; Einsatz.FieldByName('MELDUNG').Text := MemoText; Einsatz.FieldByName('EINSATZNUMMER').Text := InttoStr(z); // Was ist falsch? Einsatz.FieldByName('Sondersignal').Text := '0'; Einsatz.Post; |
AW: Firebird INTEGER = NotNull
Wieso versuchst Du händisch, den PK zu setzen? Üblicherweise benutzt man dafür einen Generator und einen BEFORE INSERT-Trigger und hat damit dann quasi ein AutoInc-Feld.
|
AW: Firebird INTEGER = NotNull
Abgesehen von dem überflüssigen Edit (du machst ja direkt davor schon ein Insert), was funktioniert denn nicht?
|
AW: Firebird INTEGER = NotNull
Also,
"Edit" ist jetzt raus! Aber es wird nicht hochgezählt, es wird immer eine 1 gesetzt! :( |
AW: Firebird INTEGER = NotNull
Jetzt geht es! :-)
Delphi-Quellcode:
Einsatz.Insert;
z := z + 1; Einsatz.FieldByName('MELDUNG').Text := MemoText; Einsatz.FieldByName('EINSATZNUMMER').Text := InttoStr(z+1); Einsatz.FieldByName('Sondersignal').Text := '0'; Einsatz.Post; |
AW: Firebird INTEGER = NotNull
es geht doch nicht :-(
es wird nicht hochgezählt! |
AW: Firebird INTEGER = NotNull
Warum versuchst Du ein Integerfeld als Text zu setzen?
Delphi-Quellcode:
Was für einen Wert hat z am Anfang?
Einsatz.FieldByName('MELDUNG').Value := z+1;
Es ist, wie schon erwähnt äusserst gefährlich den PK derartig zu setzen, verwenden einen Generator, welchen Du per Trigger setzen lässt. Möglicherweise ist schon eine BI-Trigger aktiv. |
AW: Firebird INTEGER = NotNull
hallo mkinzler,
die Datenbank ist vorgegeben, wo ich was reinschreiben möchte. Ein Trigger Trigger_BI ist auch vorhanden, wie kann ich diesen mit einbinden? |
AW: Firebird INTEGER = NotNull
Zitat:
Wo kommt denn der Inhalt von
Delphi-Quellcode:
her?
z
Und warum wird doppelt hochgezählt? |
AW: Firebird INTEGER = NotNull
Kommentier die Zeile doch mal aus, in der Du versuchst, die Nummer zu beschreiben.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz