Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Erstellen eines Triggers klappt nicht (https://www.delphipraxis.net/155672-erstellen-eines-triggers-klappt-nicht.html)

pustekuchen 3. Nov 2010 15:43

Datenbank: Firebird • Version: 2.5 • Zugriff über: isql.exe

Erstellen eines Triggers klappt nicht
 
Guten Tag,

Ich möchte einen Trigger erstellen. In Delphi klappt es wunderbar. Doch per ISQL.exe streikt er komischer weise.
SQL-Code:
CREATE TRIGGER trgTEST for Test
active before insert position 0
as
begin
  if ((new.id is null) or (new.id = 0)) then
  begin
    new.id = gen_id( gidTest, 1 );
  end
end
Wenn ich so in die Console Kopiere kommt folgender fehler:
Code:
Statement failed, SQLSTATE = 42000
Dynamic SQL Error
-SQL error code = -104
-Unexpected end of command - line 7, column 40
Wo liegt der fehler? Danke schonmal für alle Antworten ;)

mkinzler 3. Nov 2010 15:46

AW: Erstellen eines Triggers klappt nicht
 
SQL-Code:
SET TERM = !! ;
CREATE TRIGGER trgTEST for Test
active before insert position 0
as
begin
  if ((new.id is null) or (new.id = 0)) then
  begin
    new.id = gen_id( gidTest, 1 );
  end
end !!
set Term ; !!

pustekuchen 4. Nov 2010 15:22

AW: Erstellen eines Triggers klappt nicht
 
Guten Tag,
Danke für den Hinweis auf SET TERM.Doch irgendwie steh ich wohl aufm Schlauch.

Hier mal die Komplette Eingabe/Ausgabe.

SQL-Code:
SQL> SET TERM = ^ ;
SQL> CREATE TRIGGER trgMitarbeiter for mitarbeiter
CON> active before insert position 0
CON> as
CON> begin
CON>   if ((new.id is null) or (new.id = 0)) then
Statement failed, SQLSTATE = 42000
Dynamic SQL Error
-SQL error code = -104
-Unexpected end of command - line 5, column 33
CON>   begin
CON>      new.id = gen_id( genMitarbeiter, 1 );
Statement failed, SQLSTATE = 42000
Dynamic SQL Error
-SQL error code = -104
-Token unknown - line 1, column 1
-0
CON>   end
CON> end ^
CON> set Term ; ^
Mag er die if nicht?

Gruß Marc

tsteinmaurer 4. Nov 2010 15:57

AW: Erstellen eines Triggers klappt nicht
 
Nimm das '=' aus dem ersten SET TERM raus, dann sollte es klappen.

lg
Thomas

mkinzler 4. Nov 2010 17:30

AW: Erstellen eines Triggers klappt nicht
 
Zitat:

Zitat von tsteinmaurer (Beitrag 1059677)
Nimm das '=' aus dem ersten SET TERM raus, dann sollte es klappen.

lg
Thomas

Ist mir irgendwie reingerutscht :oops:

pustekuchen 5. Nov 2010 06:39

AW: Erstellen eines Triggers klappt nicht
 
Das wars ;) Danke an euch beide :dp:


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:16 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