gpt4 book ai didi

mysql - 如何将表名传递给函数?

转载 作者:行者123 更新时间:2023-11-30 23:51:41 25 4
gpt4 key购买 nike

有什么方法可以使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="table_name") 测试了它,但它不起作用。

最佳答案

declare varchar(max) @mySQL
set @mySQL = 'DELETE FROM ' + @tablename + 'WHERE id = ' + Convert(varchar, @the_id)
sp_executeSQL @mySQL

并且要在 MySQL 上运行(如评论者所指出的),它应该如下所示:

mysql> prepare stmt from -> 'DELETE FROM ' + @tablename + 'WHERE id = ' + Convert(varchar, @the_id)
mysql> execute stmt;

关于mysql - 如何将表名传递给函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6443359/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com