我正在编写一个存储过程来将数据插入到tbluser表中。以下是我的存储过程:
BEGIN
/* Check if user already exits*/
DECLARE user_count INT;
select count(*) from tblusers into user_count where name = 'joseph';
/* Calculate the row count of table and calculate the id for new row*/
DECLARE totalrows,current_id INT;
select count(*) from tblusers into totalrows;
SET current_id = totalrows + 1;
/*Other part of procedure with insert statement*/
END
我收到错误名称MYSQL 1064:在DECLARE totalrows,current_id INT;说mysql语法是错误的。如果我省略了存储过程中的前两个语句,那么它工作正常。请纠正我错在哪里,对于在mysql中使用存储过程是新手
答案 0 :(得分:3)
声明语句必须是begin语句后的第一个语句。第一个选择是抛弃它。见:http://dev.mysql.com/doc/refman/5.0/en/declare.html