1
我使用下面的代碼創建了一個存儲過程;從MYSQL中刪除存儲程序
DELIMITER //
CREATE PROCEDURE DeleteCandidate(IN `vid` integer, IN `aid` integer)
BEGIN
DELETE FROM `app_appointment` WHERE `vid` = vid and `aid` = aid;
DELETE FROM `app_declare` WHERE `vid` = vid and `aid` = aid;
END //
DELIMITER ;
當我調用過程Call DeleteCandidate(1, 1547)
,而不是刪除其中vid = vid
和aid = aid
,它將刪除表中的所有數據。
任何人都可以幫助我解釋爲什麼會發生這種情況。當我在dbForge工作室調試它顯示了援助= 1547及VID = 1
非常感謝
您是否考慮過CASCADE - 或簡單的JOIN? – Strawberry