2 回答

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超13個(gè)贊
oracle 里面 := 是 存儲(chǔ)過程的 賦值的意思
例如:
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.
至于 =:
這個(gè)我懷疑, 有可能是 觸發(fā)器里面的判斷處理
例如:
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;

TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超22個(gè)贊
=:應(yīng)該相當(dāng)于 a = :b 表明b是個(gè)綁定變量,需要執(zhí)行時(shí)進(jìn)行變量綁定
:= 相當(dāng)于一般編程語言中的 賦值 a := 1 即將 數(shù)字1賦值給變量 a
- 2 回答
- 0 關(guān)注
- 764 瀏覽
添加回答
舉報(bào)