【发布时间】:2018-05-09 04:30:08
【问题描述】:
我从here 复制了代码并进行了少量更改
DELIMITER $$
CREATE PROCEDURE updateTable (IN list_of_ids VARCHAR(32))
BEGIN
set @sql = concat("SELECT (" , list_of_ids, ")");
PREPARE stmt FROM @sql;
EXECUTE stmt;
END$$
call updateTable('1,2,3');
但是当我打电话时,我得到Error 1241: Operand should have one 1 column(s)
我在参数周围使用了" 而不是',但它仍然给出了同样的错误。我还尝试用"1,2,3" 字符串声明一个变量,但它仍然失败,我尝试call updateTable(concat("1,","2,","3")); 无济于事。
我还尝试将程序更改为期望 3 个参数,我得到了预期的错误Error 1318: Incorrect number of arguments
如果有人知道我缺少什么,这一切都在 MySql 中完成,谢谢!我整晚都在谷歌上寻找答案。
【问题讨论】:
标签: mysql arrays string stored-procedures comma