声明并赋值我的sql存储过程(5.0.45)

时间:2010-05-20 09:23:28

标签: mysql stored-procedures

DELIMITER $$

删除程序如果存在quotationssp_addservices $$ CREATE PROCEDURE quotationssp_addservices (在categoryname varchar(25)中,在servicename varchar(250)中,以小时为单位浮点数,在成本浮点数中,基于nvarchar(100)) BEGIN

插入categorydetails(Category_Name)值(categoryname); 如果(类别名!= NULL) 然后   DECLARE category_id int;  set category_id =从categorydetails中选择max(Category_Id); 插入servicesdetails(Service_Name,Category_Id,Hours,Cost,Basis)值(servicename,category_id,hours,cost,basis); 万一; 结束$$

DELIMITER;

这是我的存储过程。我必须检索发布到自动增加的数据库中的categoryid的值。这里我不能声明变量并为变量赋值。如果得到错误

脚本行:4您的SQL语法中有错误;检查与您的MySQL服务器版本对应的手册,以便在'DECLARE category_id int附近使用正确的语法;  set category_id =从第9行的“分类”中选择max(Category_Id) 谁能帮我 提前谢谢。

1 个答案:

答案 0 :(得分:0)

尝试

SELECT MAX(c.category_id) INTO category_id FROM categorydetails c;