2 回答
开心每一天1111
TA贡献1836条经验 获得超13个赞
oracle 里面 := 是 存储过程的 赋值的意思
例如:
SQL> DECLARE
2 testvalue VARCHAR2(20);
3 BEGIN
4 testvalue := 'First Test!';
5 dbms_output.put_line( testvalue );
6 END;
7 /
First Test!
PL/SQL procedure successfully completed.
至于 =:
这个我怀疑, 有可能是 触发器里面的判断处理
例如:
CREATE OR REPLACE TRIGGER BeforeInsertDetail
BEFORE INSERT ON OrderDetail
FOR EACH ROW
DECLARE v_nowCount INT;
BEGIN
SELECT
Amount INTO v_nowCount
FROM
Goods
WHERE
ID = :new.GoodsID;
IF v_nowCount - :new.Amount < 0 THEN
RAISE_APPLICATION_ERROR(-20000, '库存不足!');
ELSE
UPDATE
Goods
SET
Amount = Amount - :new.Amount
WHERE
ID = :new.GoodsID;
END IF;
END;
- 2 回答
- 0 关注
- 710 浏览
添加回答
举报
0/150
提交
取消