AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi ALTER wird im Script für TIBSQL nicht erkannt
Thema durchsuchen
Ansicht
Themen-Optionen

ALTER wird im Script für TIBSQL nicht erkannt

Ein Thema von Jens Schumann · begonnen am 12. Feb 2006 · letzter Beitrag vom 12. Feb 2006
 
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#1

ALTER wird im Script für TIBSQL nicht erkannt

  Alt 12. Feb 2006, 10:02
Datenbank: Firebird • Zugriff über: IBX 6
Hallo,
ich habe ein merkwürdiges Problem mit TIBSQL.
In einer Textdatei befindet sich folgendes Script. (Das Script wird von der IBConsole einwandfrei verarbeitet.)
SQL-Code:
CREATE TABLE "INPUT_TEST"
(
  "JAHR"   TINT ,
  "VER"   TINT ,
  "KATEGORIE"   TSTRING30 COLLATE DE_DE,
  "PARTNER"   TSTRING15 COLLATE DE_DE,
  "EMPF"   TSTRING15 COLLATE DE_DE,
  "PLANWERT"   DOUBLE PRECISION,
  "POSNR"   TSTRING30 COLLATE DE_DE,
  "BWA"   TSTRING15 COLLATE DE_DE,
  "SAISON"   TINT
);
ALTER TABLE "INPUT_TEST" ADD FOREIGN KEY ("VER") REFERENCES "VERSIONEN" ("ID") ON UPDATE CASCADE ON DELETE CASCADE;
SET TERM ^ ;


/* Triggers only will work for SQL triggers */

CREATE TRIGGER "TRG_INPUT_TEST _0" FOR "INPUT_TEST"  
ACTIVE BEFORE INSERT POSITION 0
as
begin
  if (new.ver is null) then SELECT id FROM versionen WHERE aktive=1 INTO new.ver;
end
 ^
SET TERM ;^
Mit folgendendem Code möchte ich das Script verarbeiten
Delphi-Quellcode:
procedure TFormDatasources.CreateTable(const Tablename: String);
// Über den Pararmeter Tablename soll später der Tabellenname kommen
// Hinter SystemDataprovider.DbDataprovider.Command2 verbirgt sich TIBSQL.
var
  aSQL : TStringList;
begin
  aSQL:=TStringList.Create;
  Try
    aSQL.LoadFromFile(ApplicationPath+'Datenbank\createtable.txt'); // Just for testing
    With DM do
      begin
      SystemDataprovider.DbDataprovider.Transaction2.StartTransaction;
      Try
        SystemDataprovider.DbDataprovider.Command2.SQL:=aSQL;
        SystemDataprovider.DbDataprovider.Command2.ExecQuery;
      Finally
        SystemDataprovider.DbDataprovider.Transaction2.Commit;
        end;
      end;
  Finally
    aSQL.Free;
    end;
end;
Während der Ausführung tritt dann dieser Fehler auf
Code:
Dynamic SQL Error
        SQL error code = -104'
        Token unknown - line 1' +'3, char 1'
        'ALTER'
Hat jemand dafür eine Erklärung das ALTER hier nicht bekannt ist oder evt. sogar eine Lösung?
I come from outer space to save the human race
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:59 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 by Thomas Breitkreuz