Prozedur ignoriert scheinbar Parameter? - Druckversion +- PHP Rocks (https://www.php-rocks.de) +-- Forum: Datenbanken (https://www.php-rocks.de/https://www.php-rocks.de/forum/6-datenbanken.html) +--- Forum: MySQL (https://www.php-rocks.de/https://www.php-rocks.de/forum/7-mysql.html) +--- Thema: Prozedur ignoriert scheinbar Parameter? (/https://www.php-rocks.de/thema/148-prozedur-ignoriert-scheinbar-parameter-.html) |
Prozedur ignoriert scheinbar Parameter? - Arne Drews - 19.10.2017 Hallo, Ich habe eine Prozedur, die ganz einfach nur Werte aus mehreren Tabellen entfernen soll: Code: CREATE PROCEDURE deleteBatch ( id INT ) Code: CALL deleteBatch( 5 ) Habe ich einen Denkfehler? Danke RE: Prozedur ignoriert scheinbar Parameter? - Arne Drews - 21.10.2017 Hallo, Problem gefunden. Ich persönlich halte das zwar für einen Bug, aber wenn man es weiß, kann man damit umgehen. Das grundsätzliche Problem war, dass ich auf die Tabellennamen verzichtet habe, die Procedure muss so aussehen: Code: CREATE PROCEDURE deleteBatch ( id INT ) Ich finde das Verhalten grundsätzlich nur falsch, so schlau sollte selbst MySQL sein, denn führe ich die DELETEs direkt aus, wird Zeile für Zeile korrekt abgearbeitet, auch ohne Tabellenangabe in der WHERE-Klausel. Es hat also was mit den PROCEDUREs zu tun. Jedenfalls läuft es jetzt. Gruß Arne |