Einzelnen Beitrag anzeigen

Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.366 Beiträge
 
Delphi 10.3 Rio
 
#1

Fehler bei Execute Block im Script

  Alt 2. Feb 2011, 11:42
Datenbank: Firebird • Version: 2.1 • Zugriff über: IBObjects
Hallo,

habe das Problem, dass ein Änderungsscript bei der Ausführung in TIB_Script einen Fehler verursacht:

Code:
ISC ERROR CODE:335544333

ISC ERROR MESSAGE:
internal gds software consistency check (Too many savepoints (287), file: tra.cpp line: 2731)
Ursache ist ein Execute Block:
Code:
EXECUTE BLOCK AS BEGIN
if (not exists(select 1 from rdb$relations where rdb$relation_name = 'T_AQ_ASSQUARTAL')) then
execute statement
'CREATE TABLE T_AQ_ASSQUARTAL (
  T_AQ_PAT_ID DOM_ID,
  T_AQ_ASS_ID DOM_ID,
  T_AQ_CHIP_IK DOM_IK,
  T_AQ_QUARTAL DOM_ABR_CHECK,
  T_AQ_LEISTSUM DOM_INTEGER
);';
END
In Verbindung mit der Einstellung bei der Transaktion ServerAutoCommit=true - das bedeutet die Transaktion läuft mit dem Parameter "isc_tpb_autocommit" .

Folgendes habe ich auch noch herausgefunden:
Lass ich nur diesen Execute-Block im Script laufen geht alles. Lass ich das komplette Script laufen gehts nicht. Schmeiße ich den Execute Block raus und lass nur das reine Create Table gehts auch (komplettes Script). Und noch was: die Position an der ich den Execute Block im Script ausführe ist auch egal - sprich, am restlichen Script sollte es daher nicht liegen.

Kennt jemand das Problem? Oder hat jemand einen Tipp für mich? ServerAutoCommit darf ich leider nicht ändern....

Grüße
  Mit Zitat antworten Zitat