Einzelnen Beitrag anzeigen

Benutzerbild von ralfiii
ralfiii

Registriert seit: 30. Mai 2007
489 Beiträge
 
Delphi 2010 Professional
 
#1

IBTable funktioniert nicht mit Not-NULL Generator Feld

  Alt 18. Feb 2011, 11:00
Datenbank: Firebird • Version: 2.1 • Zugriff über: IBX
Hallo!
Ich hab hier eine Firebird-Tabelle die wie folgt definiert ist:

Code:
CREATE TABLE USERS (USER_ID INTEGER NOT NULL,
        NAME VARCHAR(30) NOT NULL,
        FOO SMALLINT,
CONSTRAINT PK_USERS PRIMARY KEY (USER_ID),
CONSTRAINT UNQ_USERS UNIQUE (NAME));

SET TERM ^ ;
CREATE TRIGGER USERS_BI FOR USERS
ACTIVE BEFORE INSERT POSITION 0 
AS
BEGIN
  IF (NEW.USER_ID IS NULL) THEN
    NEW.USER_ID = GEN_ID(GEN_USER_ID,1);
END ^
COMMIT WORK ^
SET TERM ; ^
d.h. das Feld "User_ID" is sowas wie ein AutoInc-Feld. Man brauch sich da nicht kümmern, man kann einfach ein Insert machen, in dem nur das Feld "Name" gesetzt wird, firebird füllt selber das User_Id aus.

Häng ich nun ein IBTable da dran und will die Tabelle über den IBTable befüllen krieg ich eine Fehlermeldung "Feld 'USER_ID' muss einen Wert haben".

???
  Mit Zitat antworten Zitat