我想写一个程序,在执行另一个程序后,改变表中的自动增量值。问题是程序创建了,但没有工作。尝试运行时出现错误#1210-要执行的参数不正确。我在link中发现了类似的问题:在mysql中通过变量设置auto\ u increment value,但这对我不起作用。
我尝试将@v\u值更改为v\u值(普通变量,而不是@variable)。我还尝试在@v\u sql中使用“?”,但不起作用。我尝试更改“读取sql数据”,但没关系。帮助解决问题。
DELIMITER //
CREATE PROCEDURE check_increment_value()
READS SQL DATA
BEGIN
SET @v_value = (SELECT MAX(id_version)+1 FROM versions);
SET @v_sql = CONCAT('ALTER TABLE `wersje` AUTO_INCREMENT = ',@v_value);
PREPARE st FROM @v_sql;
EXECUTE st USING @v_value;
END
//
感谢您的帮助:)
1条答案
按热度按时间a1o7rhls1#
通过字符串插值传递参数,而不是通过prepared语句,因此不需要指定
using
条款: