我在HSQLDB中创建了一个具有以下结构的表
CREATE TABLE salary (
emp_no INT NOT NULL,
salary_amount INT NOT NULL,
bonus INT NOT NULL,
PRIMARY KEY (emp_no)
);
和下面的存储过程
CREATE PROCEDURE add_bonus_by_emp_no(IN EMP_KEY integer, IN ADDL_BONUS integer)
BEGIN
UPDATE salary
SET bonus = ADDL_BONUS + bonus
WHERE emp_no=EMP_KEY;
运行此命令时出错,收到错误
不需要的令牌UPDATE:ATOMIC:line:2 /错误代码-5581 / 42581
谢谢,
答案 0 :(得分:0)
该消息表示您必须使用BEGIN ATOMIC。有关您需要进行的其他添加,请参阅“指南”中的示例:
http://hsqldb.org/doc/2.0/guide/sqlroutines-chapt.html#src_psm_vars