我想将数据插入到一个表中,该表的表名和值是从存储过程中的用户传递的。
enter code here
mysql> DELIMITER //
mysql> CREATE PROCEDURE tableinsertion(IN tablename varchar(20),IN ano int(10))
-> BEGIN
-> SET @s=CONCAT('INSERT INTO ', tablename, 'values', (ano));
-> PREPARE stmt FROM @s;
-> EXECUTE stmt;
-> END //
我正在调用该函数如下 CALL tableinsertion('account','110')// 但是我收到了错误。
答案 0 :(得分:0)
缺少空格
SET @s=CONCAT('INSERT INTO ', tablename, 'values', (ano));
^-----^---here
生成查询
INSERT INTO sometablevalues(ano)