Mulit Delete bei Strict modus?
hawkmaster
- datenbank
0 dedlfix
Hallo zusammen,
ich habe mal meinen MySQL Server 5.5.13 auf Strict gestellt und schon klappt diese Mulit Delete nicht mehr:
DELETE product A, productdescription B, text C, text D
FROM product A
JOIN text C ON C.textid = A.textid
JOIN productdescription B ON B.productid = A.productid
JOIN text D ON D.text = B.text
LEFT JOIN kproduct E ON E.productid = A.productid
WHERE A.productid = :productid
der gleiche Delete geht aber wenn der Strict modus ausgeschaltet ist.
Was kann die Ursache sein?
vielen Dank und viele Grüße
hawk
Tach!
ich habe mal meinen MySQL Server 5.5.13 auf Strict gestellt und schon klappt diese Mulit Delete nicht mehr:
Wenn du mit Strict Mode jenen meinst, dann beachte bitte den vorletzten Satz. Und "klappt nicht" äußert sich wie? Gibt es einen Fehlermeldungstext?
der gleiche Delete geht aber wenn der Strict modus ausgeschaltet ist.
Was kann die Ursache sein?
Der Strict Mode vermutlich. Multi-Table-Delete dürfte der SQL-Standard nicht kennen. Aber ob Multi-Table-Delete davon betroffen ist? Das Handbuch lässt sich leider weder unter Server SQL Modes über DELETE aus, noch unter der DELETE Syntax über den Strict Mode. Vielleicht ist auch einer der Werte der Übeltäter, wenn ich mir den Traditional Mode so durchlese - der spricht aber nur von INSERT/UPDATE.
Was versprichst du dir vom Strict Mode?
dedlfix.
Hallo dedlfix,
herzlichen Dank wie immer für deine Unterstützung.
Ich bin kein Freund vom Stict Mode bzw. ich hatte das bisher so nie eingestellt.
Ich baue aber gerade eine Installationsroutine für ein Programm. Das setzt MySQL Server vorraus.
Wenn nun jemand den MySQL Server installiert, kann es sein das er den Strict Mode einstellt. (ist soagr default)
Und dann möchte ich halt vermeiden dass es in meiner Anwendung kracht.
Daher habe ich das mal ausprobiert.
Aber ich sehe schon. Das mit dem Multi Delete war zwar schön, aber wenn es kein Standard ist und wenn man vielleicht später auf Postgres umstellt, dann kracht es da bestimmt auch.
Dann mache ich lieber gleich die Deletes einzeln für alles Tabellen
vielen Dank und viele Grüße
hawk