Firebird Procedure Speicherproblem

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
Verdi
Beiträge: 7
Registriert: So 1. Jan 2012, 12:42

Firebird Procedure Speicherproblem

Beitrag von Verdi »

Hallo

Ich arbeite mit:
Windows 10
Lazarus 1.4.4
Firebird embedded 2.5.5

Folgende Frage:

Ich möchte übungshalber mit TSQLQuery eine Procedure in Firebird speichern.
(Dass der Code sinnlos ist, ist mir klar, es geht nur um das Üben)

Code: Alles auswählen

  SQLQuery1.SQL.ADD('CREATE PROCEDURE NAME_GET_ALL');
  SQLQuery1.SQL.ADD('returns(kunr integer, name varchar(100))');
  SQLQuery1.SQL.ADD('AS');
  SQLQuery1.SQL.ADD('BEGIN');
  SQLQuery1.SQL.ADD('  FOR SELECT KuNr, Name');
  SQLQuery1.SQL.ADD('  FROM "PERSON"');
  SQLQuery1.SQL.ADD('  into :KuNr, :Name');
  SQLQuery1.SQL.ADD('  DO');
  SQLQuery1.SQL.ADD('  BEGIN');
  SQLQuery1.SQL.ADD('    SUSPEND;');
  SQLQuery1.SQL.ADD('  END');
  SQLQuery1.SQL.ADD('END')
 
  SQLQuery1.ExecSQL;

SQLTransaction1.Commit;

Fehlermeldung:
IBConnection1: PrepareStatement:
-Dynamic SQL Error
-SQL error code = -104
-Token unknown - line 7, column 8
-?.

Wenn ich den selben Code direkt über TurboBird eingebe, funktioniert die Speicherung, allerdings nur, wenn ich den Code folgendermassen beginne und beende:
set term #;
.
.
.
#
set term ;#

Die set term - Anweisungen kann man aber nicht über SQL-Befehle eingeben, da dann schon in Zeile 1 eine Fehlermeldung entsteht.

(Die Speicherung von Triggern und Generatoren über SQL-Kommandos funktioniert einwandfrei).

Kann mir jemand zeigen wie ich die Procedure über SQL-Kommandos erfolgreich speichern kann?

Vielen Dank für die Hilfe.

Herzliche Grüsse
Verdi
Dateianhänge
Stored_Proc.txt
Stored_Proc
(531 Bytes) 61-mal heruntergeladen
Zuletzt geändert von Lori am Di 8. Mär 2016, 17:10, insgesamt 1-mal geändert.
Grund: Highlighter

knight
Beiträge: 802
Registriert: Mi 13. Sep 2006, 22:30

Re: Firebird Procedure Speicherproblem

Beitrag von knight »

Wäre TSQLScript nicht eher für deinen Zweck geeignet?

knight

Verdi
Beiträge: 7
Registriert: So 1. Jan 2012, 12:42

Re: Firebird Procedure Speicherproblem

Beitrag von Verdi »

Vielen Dank für den Hinweis, ich werde es gerne so probieren.
Herzliche Grüsse, Verdi

Antworten