我正在尝试熟悉Mysql语法。到目前为止我只使用过MSSQL。我下载了MySQL Query Browser并安装了MySQL Version 5.1
我想在MySQL的结果集选项卡中运行这行代码,但我一直遇到以下错误
您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第1行的'declare iCtr int'附近使用正确的语法
代码:
declare iCtr int;
set iCtr = 1;
while iCtr < 1000
begin
insert into employee (emp_id,emp_first_name,emp_last_name,status_id)
values (iCtr, 'firstName' + iCtr, 'lastName' + iCtr, 1)
set iCtr = iCtr + 1;
end
我只想填充我的员工表,但我无法通过MySQL语法。
答案 0 :(得分:1)
来自:http://dev.mysql.com/doc/refman/5.0/en/declare.html
DECLARE只允许在BEGIN ... END复合语句中使用,并且必须在任何其他语句之前的开头。
我认为这可能是麻烦吗?
答案 1 :(得分:1)
试
DELIMITER $$
DROP PROCEDURE IF EXISTS `procedurename`$$
CREATE PROCEDURE `procedurename`()
BEGIN
declare iCtr int;
set iCtr = 1;
while iCtr < 1000 do
insert into employee (emp_id,emp_first_name,emp_last_name,status_id)
values (iCtr, 'firstName' + iCtr, 'lastName' + iCtr, 1);
set iCtr = iCtr + 1;
end while;
END$$
DELIMITER ;