有沒有辦法讓MySQL函數接收表名或字段名?如何將表名轉換爲函數?
是這樣的:
CREATE PROCEDURE delete_row(the_id INT UNSIGNED , @table_name)
BEGIN
IF ....... THEN
BEGIN
DELETE FROM @table_name WHERE id = the_id ;
.............
END
END
我用繩子(SET @ TABLE_NAME = 「表格名」)測試,但它不工作。
我發現有用的答案[這裏](http://stackoverflow.com/questions/2977356 /在MySQL的知識對傳遞一個表名-AS-存儲過程和 - 或 - 功能 - 參數)。通過這個答案,我創建了一串SQL語句並執行字符串。可能是SQL注入的嚴重問題。 –