Mysql 版本 14.14 发行版 5.1.41
我有一个要编译的存储过程,但不断出现错误。我的存储过程准备一个插入语句,执行它,释放准备好的语句,然后尝试返回最后一个插入 ID。这是一个伪提取:
1 CREATE PROCEDURE `audit`( IN pExampleValue varchar(50))
2
3 BEGIN
4 PREPARE stmt FROM 'INSERT INTO `Audit` (`Value`) VALUES (?)';
5 EXECUTE stmt USING @pExampleValue;
6 DEALLOCATE PREPARE stmt
7
8 RETURN LAST_INSERT_ID() AS `AuditId`;
9 END$$
从我能够收集到的 mysql 版本中,可以在存储过程中使用准备好的语句。但是我得到的错误是。
SQL Error (1313): RETURN is only allowed in a FUNCTION
正如错误所说,我无法从程序返回。但是我可以从程序中退出吗?我很难找到查询被 OUT'ed 的示例,我将如何从这个示例中做到这一点。