Ich habe folgende Tabelle:
<pre>
CREATE TABLE IBT_FACHRICHTUNG
(
IBDF_FACHRICHTUNG INTEGER NOT NULL,
IBDF_FACHRICHTUNG_BEZEICHNUNG CHAR(50) NOT NULL,
PRIMARY KEY(IBDF_FACHRICHTUNG)
);
und folgenden Befor Insert Trigger
CREATE TRIGGER SET_IBDF_FACHRICHTUNG FOR IBT_FACHRICHTUNG BEFORE INSERT AS
BEGIN
IF (NEW.IBDF_FACHRICHTUNG IS NULL) THEN NEW.IBDF_FACHRICHTUNG = GEN_ID(GEN_IBDF_FACHRICHTUNG,1);
END
^
CREATE GENERATOR GEN_IBDF_FACHRICHTUNG;
SET GENERATOR GEN_IBDF_FACHRICHTUNG TO 1;
</pre>
Füge ich nun einen Datensatz in meiner Anwendung über folgende Stored Produres
<pre>
CREATE PROCEDURE INS_IBT_FACHRICHTUNG(StrBEZEICHNUNG CHAR(50)) AS
BEGIN
INSERT INTO IBT_FACHRICHTUNG (IBDF_FACHRICHTUNG_BEZEICHNUNG)
VALUES ( :StrBEZEICHNUNG);
END
^
</pre>
ein
so funktioniert ein IBTransaction.Commit ohne Probleme.
Verwende ich aber eine IBQuery Komponente mit entsprechender UpdateSql Komponente und schicke ein IBQuery.insert weise dann dem Feld IBDF_FACHRICHTUNG_BEZEICHNUNG einen Wert zu und schicke dann ein IBQuery.Post so erhalte ich eine Fehlermeldung das dem Feld IBDF_FACHRICHTUNG kein Wert zugewiesen wurde.
Wieso wird der Befor Insert Trigger bei einem IbQuery.insert - IbQuery.post nicht ausgelöst?
<pre>
CREATE TABLE IBT_FACHRICHTUNG
(
IBDF_FACHRICHTUNG INTEGER NOT NULL,
IBDF_FACHRICHTUNG_BEZEICHNUNG CHAR(50) NOT NULL,
PRIMARY KEY(IBDF_FACHRICHTUNG)
);
und folgenden Befor Insert Trigger
CREATE TRIGGER SET_IBDF_FACHRICHTUNG FOR IBT_FACHRICHTUNG BEFORE INSERT AS
BEGIN
IF (NEW.IBDF_FACHRICHTUNG IS NULL) THEN NEW.IBDF_FACHRICHTUNG = GEN_ID(GEN_IBDF_FACHRICHTUNG,1);
END
^
CREATE GENERATOR GEN_IBDF_FACHRICHTUNG;
SET GENERATOR GEN_IBDF_FACHRICHTUNG TO 1;
</pre>
Füge ich nun einen Datensatz in meiner Anwendung über folgende Stored Produres
<pre>
CREATE PROCEDURE INS_IBT_FACHRICHTUNG(StrBEZEICHNUNG CHAR(50)) AS
BEGIN
INSERT INTO IBT_FACHRICHTUNG (IBDF_FACHRICHTUNG_BEZEICHNUNG)
VALUES ( :StrBEZEICHNUNG);
END
^
</pre>
ein
so funktioniert ein IBTransaction.Commit ohne Probleme.
Verwende ich aber eine IBQuery Komponente mit entsprechender UpdateSql Komponente und schicke ein IBQuery.insert weise dann dem Feld IBDF_FACHRICHTUNG_BEZEICHNUNG einen Wert zu und schicke dann ein IBQuery.Post so erhalte ich eine Fehlermeldung das dem Feld IBDF_FACHRICHTUNG kein Wert zugewiesen wurde.
Wieso wird der Befor Insert Trigger bei einem IbQuery.insert - IbQuery.post nicht ausgelöst?
Comment