有没有办法使用mysql脚本在mysql中循环更新语句。我的代码如下所示
UPDATE table_name
SET column_name(REPLACE(column_name,Char(16), '')
我希望从16到31循环。请建议。
我尝试创建一个脚本,例如下面的脚本
DELIMETER $$
CREATE DEFINER `root`@`localhost` PROCEDURE `myupdate`()
BEGIN
DECLARE c INT;
SET c 16;
WHILE c < 31 DO
UPDATE table_name
SET column_name = replace(column_name, char(16), '');
commit;
SET c = c + 1;
END WHILE;
END
如果你问我,有点错,但我在mysql中这么新。请提前咨询先生和女士,并提前致谢。
答案 0 :(得分:1)
您未在=
中使用SET c 16;
。
我做了一些改变。尝试:
DELIMETER $$
CREATE DEFINER `root`@`localhost` PROCEDURE `myupdate`()
BEGIN
SET @c = 16;
WHILE @c < 31 DO
UPDATE table_name SET column_name = replace(column_name, char(@c), '');
SET @c = @c + 1;
END WHILE;
END $$
DELIMITER ;