TSQLScript funktioniert nicht

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
am2
Lazarusforum e. V.
Beiträge: 116
Registriert: Di 21. Dez 2010, 09:59
OS, Lazarus, FPC: Win (L 0.9.26 beta FPC 2.2.2)
CPU-Target: 32 Bit

TSQLScript funktioniert nicht

Beitrag von am2 »

zumindest nicht, wie erwartet. Kann aber auch an den Erwartungen liegen.

Ich will auf einer Oracle- Datenbank ein Script starten.

TOracleConnection -> TSQLTransaction -> TSQLScript

- Verbindung klappt.
- Warum ich zwingend eine Transaktion brauche, weiß ich zwar nicht, da beispielsweise mein DDL- Anweisungen sowieso nicht der Transaktionssteuerung unterliegen ...
- Script an sich ist getestet und funktioniert auch direkt auf der DB

Ich habe jetzt alle Varianten und Kombinationen ausprobiert, die mir einfallen.
- Script mit und ohne Semikolon oder Slash
- nur eine einzige Anweisung
- Transaktion vorher explizit starten
- Transaktion hinterher mit commit beenden
- Execute / ExecuteScript

Im Moment kommen nicht einmal Oracle- Fehlermeldungen, wenn ich Fehler einbaue. Er macht schlicht gar nix.
Habe es auch mal nach diesem System probiert: http://wiki.freepascal.org/TSQLScript

Habt ihr eine Idee, was ich falsch mache?

Vielen Dank
am2

rvk
Beiträge: 2
Registriert: Do 21. Aug 2014, 00:49
OS, Lazarus, FPC: Win7 64 bit, Laz trunk, FPC trunk
CPU-Target: 32Bit

Re: TSQLScript funktioniert nicht

Beitrag von rvk »

Haben Sie versucht die sqlscript.terminator := '^'; und das script zu schließen mit a ^?
TSQLScript sendet nur das script, falls sich der Terminator trifft.

am2
Lazarusforum e. V.
Beiträge: 116
Registriert: Di 21. Dez 2010, 09:59
OS, Lazarus, FPC: Win (L 0.9.26 beta FPC 2.2.2)
CPU-Target: 32 Bit

Re: TSQLScript funktioniert nicht

Beitrag von am2 »

Das scheint des Rätsels Lösung zu sein. Jetzt funktioniert es, muss nur noch ermitteln, was alles minimal dazu gehört.

Im Moment gehe ich davon aus, dass ich
- eine Connection
- eine Transaction
- ein SQLScript
brauche.

Wenn ich fertig bin, dann schreibe ich mal den kompletten Ablauf hier herein.

AM

Antworten