我有以下步骤,当我手动导入时,这是由于一些未知的原因而中断。
CREATE PROCEDURE `register_house`(
IN UID CHAR(17),
IN new_username VARCHAR(16),
IN new_signature CHAR(64),
IN email VARCHAR(128),
IN postcode VARCHAR(16),
IN customer_name VARCHAR(45),
IN phone_number VARCHAR(16)
)
BEGIN
UPDATE bb.checkin SET username = new_username, signature = new_signature WHERE _site = UID;
END我在Mysql Workbench中遇到以下错误-
Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 11有人能建议一下问题出在哪里吗?
更新
正如我所建议的,我已经修改为包括分隔符,现在得到以下错误:
Error Code: 1728. Cannot load from mysql.proc. The table is probably corrupted所有的表看起来都是正确的,如果它们以某种方式损坏了,是不是“去损坏”它们的方法?
发布于 2016-01-13 20:15:13
基于https://stackoverflow.com/a/639356/2381157,试试这个
delimiter //
CREATE PROCEDURE `register_house2`(
IN UID CHAR(17),
IN new_username VARCHAR(16),
IN new_signature CHAR(64),
IN email VARCHAR(128),
IN postcode VARCHAR(16),
IN customer_name VARCHAR(45),
IN phone_number VARCHAR(16)
)
BEGIN
UPDATE bb.checkin SET username = new_username, signature = new_signature WHERE _site = UID;
END
//
delimiter ;它适用于我在MySQL 5.5中的工作
发布于 2016-01-13 20:36:48
这对我很有效..。
将其添加到第1行语句的开头;
DELIMITER $$然后在ver上
END $$最后,为了修复“损坏”的消息,我只需运行以下文件:
C:\xampp\mysql\bin\mysql_upgrade.exehttps://stackoverflow.com/questions/34765844
复制相似问题