DDL in Firebird über TSQLScript

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
GNR82
Beiträge: 6
Registriert: Fr 10. Sep 2010, 12:24

DDL in Firebird über TSQLScript

Beitrag von GNR82 »

Hallo Forum,

ich möchte über das TSQLScript Datenbankobjekte anlegen und bearbeiten was aber nicht funktioniert. Ich verwende Firebird 2.1 und Lazarus 0.9.28.2.
Folgendes Beispiel soll zeigen wo das Problem liegt:

Es soll folgende Procedur erstellt werden:

Code: Alles auswählen

CREATE PROCEDURE NEW_PROCEDURE 
AS
begin
 
  suspend;
end;
Als Fehlermeldung kommt:

Code: Alles auswählen

IbServer : PrepareStatement : 
 -Dynamic SQL Error
 -SQL error code = -104
 -Unexpected end of command - line 5, column 3
Ohne "suspend" wird die Procedur ordentlich erstellt. Ich vermute, dass die TSQLScript-Komponente auf eine ältere Firebird- oder Interbase-Version "zugeschnitten" ist.

Meine Frage ist nun: Hat jemand von Euch eine Idee/Lösung wie ich DDL-Statements aus einer Anwendung heraus ausführen kann?

Vielen Dank für Eure Hilfe

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: DDL in Firebird über TSQLScript

Beitrag von mse »

";" nach "suspend" beendet das definitions-statement -> "set term" benützen.
http://www.firebirdfaq.org/faq78/

GNR82
Beiträge: 6
Registriert: Fr 10. Sep 2010, 12:24

Re: DDL in Firebird über TSQLScript

Beitrag von GNR82 »

Hallo mse,

sorry, dass ich mich jetzt erst zurückmelde. Vielen dank, es funktioniert. Ich dachte zwar, dass ich es auch schon mit "set term" ausprobiert hätte, aber jetzt klappst.

Danke!

Antworten