[gelöst]TSQLscript, Fehler beim einlesen von SQL-Dump

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
atroesch
Beiträge: 36
Registriert: Mo 7. Jul 2025, 10:05

[gelöst]TSQLscript, Fehler beim einlesen von SQL-Dump

Beitrag von atroesch »

wenn ich per TSQL-Script ein mit PHPmyAdmin erstellten Dump einlesen lasse, bleibt er bei
der Anweisung
START TRANSACTION;
mit einem MySQL-Fehler 1295 hängen.
Wenn ich die Zeile aus dem Dump rausnehme ist alles ok.
Die wird aber in jedem Dump erzeugt, oder?
Zuletzt geändert von atroesch am So 10. Aug 2025, 10:15, insgesamt 1-mal geändert.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6924
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: TSQLscript, Fehler beim einlesen von SQL-Dump

Beitrag von af0815 »

Ist das jetzt eine Frage über PHPmyAdmin ?

Erstelle ein Dump mit T-SQL und schau ob die Zeile dort drinnen ist. Ich gehe davon aus, das die Zeile von PHPmyAdmin verwendet wird um den Dump selbst zurück zu spielen.
This command is not supported in the prepared statement protocol yet
Das Kommando wird nicht unterstützt. Versions Problem bei den Treibern ?
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

charlytango
Beiträge: 1154
Registriert: Sa 12. Sep 2015, 12:10
OS, Lazarus, FPC: Laz stable (2.2.6, 3.x)
CPU-Target: Win 32/64, Linux64
Wohnort: Wien

Re: TSQLscript, Fehler beim einlesen von SQL-Dump

Beitrag von charlytango »

Meine Strategie so ein Problem einzukreisen ist es, das SQL Script in einem externen Programm wie zb Heidisql auszuführen.
Du kannst auch irgend ein anderes Programm nehmen weil Heidisql jetzt auch in Lazarus umgeschrieben würde.

Ich gehe dann einfach davon aus dass in externen Programmen alles richtig verdrahtet ist. Wenn es dort klappt muss es in Lazarus auch klappen

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6924
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: TSQLscript, Fehler beim einlesen von SQL-Dump

Beitrag von af0815 »

Ich gehe davon aus, das das eine Datei ist, die aus meheren Blöcken besteht (bei MsSQL zB. mit GO getrennt). Die Komponente die er verwendet, braucht aber einzelne Statements und die Transaktionsverwaltung läuft ja bei Lazarus extra. Deswegen kann es sein, der mySQLServer sagt, in diesen Kontext will ich das STatement nicht verstehen.

Ist ja beim MsSQL so, wenn ich mit GO getrennte Datei einlesen und in einer Query oder ST ausführe, das er das nicht will.

Ein Dump einer schnell erstellten Testdatenbank würde da schon helfen. Nur mit der Beschreibung alleine, braucht man eine gute Glaskugel.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

charlytango
Beiträge: 1154
Registriert: Sa 12. Sep 2015, 12:10
OS, Lazarus, FPC: Laz stable (2.2.6, 3.x)
CPU-Target: Win 32/64, Linux64
Wohnort: Wien

Re: TSQLscript, Fehler beim einlesen von SQL-Dump

Beitrag von charlytango »

af0815 hat geschrieben: Sa 9. Aug 2025, 10:38 braucht man eine gute Glaskugel
Schon komisch. Meine ist meistens beim Service. :D

atroesch
Beiträge: 36
Registriert: Mo 7. Jul 2025, 10:05

Re: TSQLscript, Fehler beim einlesen von SQL-Dump

Beitrag von atroesch »

es liegt einfach nur an dieser Zeile.
START TRANSACTION;
ich denke das dieser befehl doppelt ausgeführt wird.
also in Lazarus ja schon eine Transaktion ausgeführt wird.
In PHPMyAdmin gibt es keine Probleme mit dem Dump.
Und ja es sind mehrere Blöcke, halt erstellen von Tabellen und
füllen mit Daten.
create tabel....
Insert into Table...
usw.

charlytango
Beiträge: 1154
Registriert: Sa 12. Sep 2015, 12:10
OS, Lazarus, FPC: Laz stable (2.2.6, 3.x)
CPU-Target: Win 32/64, Linux64
Wohnort: Wien

Re: TSQLscript, Fehler beim einlesen von SQL-Dump

Beitrag von charlytango »

Jetzt bin ich mal ganz keck und behaupte PHPMyAdmin ist nicht Lazarus/FPC.

Ich nehme an, PHPMyAdmin wird als Weboberflöche einen Dump erstellen der idealerweise von PHPMyAdmin wieder verwendet werden soll.
Auf andere Umgebungen und deren Eigenheiten wird keine Rücksicht genommen.

In einem schnell mit PHPMyAdmin erstellten Dump steht tatsächlich "Start transaction" am Beginn und auch nirgends ein Stop oder Ende.

Ich würde die Zeile einfach löschen bzw mit einer anderen externen Applikation testen

anse
Beiträge: 9
Registriert: So 23. Feb 2025, 16:17
OS, Lazarus, FPC: Winux (L 4.2 FPC 3.2.2)
CPU-Target: 64Bit
Kontaktdaten:

Re: TSQLscript, Fehler beim einlesen von SQL-Dump

Beitrag von anse »

Evtl. versuchst du ein LOAD DATA INFILE per PREPARE/EXECUTE auszuführen (was von MySQL nicht unterstützt wird)?
Versuche stattdessen das LOAD DATA INFILE direkt auszuführen, also ohne PREPARE/EXECUTE.

atroesch
Beiträge: 36
Registriert: Mo 7. Jul 2025, 10:05

Re: TSQLscript, Fehler beim einlesen von SQL-Dump

Beitrag von atroesch »

@charlytango
ja seh ich auch so.

ich habe die zeile einfach rausgenommen. der rest geht wunderbar..
erledigt

Antworten