CREATE PROCEDURE reset_xyz_autoincrement
BEGIN
SELECT @max := MAX(ID)+ 1 FROM ABC;
PREPARE stmt FROM 'ALTER TABLE XYZ AUTO_INCREMENT = ?'
EXECUTE stmt USING @max
DEALLOCATE PREPARE stmt;
END $$
我从这里获取了代码: How to Reset an MySQL AutoIncrement using a MAX value from another table?
这是 MySQL 输出:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BEGIN
SELECT @max := MAX(ID)+ 1 FROM ABC' at line 2
最佳答案
试试这个
CREATE PROCEDURE reset_xyz_autoincrement
(username varchar(64),password varchar(64)) // here you use your columns
BEGIN
编辑:
试试这个
DROP PROCEDURE IF EXISTS reset_xyz_autoincrement;
CREATE PROCEDURE reset_xyz_autoincrement (userid INT)
BEGIN
关于MySQL 不接受此过程。你能帮忙吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13913482/