update1.sql的内容为
DROP PROCEDURE IF EXISTS pcName;
CREATE PROCEDURE pcName()
BEGIN
select 'a';
END;
dos下执行如下命令
C:\SZXYS\METSDatabase\mysql\bin>mysql -uunsername -ppassword dbname<update1.sql
报语法错误
ERROR 1064 (42000):you have an error in your sql syntax;
check the manual that corresponds to your mysql server version...
原因:
是dos下把分号(;)当成了存储过程的结束符,所以出错了。
解决方法,需要加上DELIMITER关键字,声明什么符号做为存储过程结束的分界符,修改如下,则可以执行
DROP PROCEDURE IF EXISTS pcName;
DELIMITER $$
CREATE PROCEDURE pcName()
BEGIN
select 'a';
END;
$$
DELIMITER ;