oracle冒号问题联系触发器中new和old的冒号问题':'
来源:互联网 发布:卡盟官方网站源码 编辑:程序博客网 时间:2024/05/21 06:22
oracle冒号问题联系触发器中new和old的冒号问题':'
问:
这代码中的冒号(:)是什么意思呢?
VARIABLE x REFCURSOR
EXEC authors_sel(:x)
print x
答:
x 是一个主变量
主变量是一个声明在主环境中的变量,它会被传递到一个或多个PL/SQL程序中,
在程序中可以跟其他的变量一样使用。
SQL*Plus和PL/SQL都能引用主变量,SQL*Plus还可以显示主变量的值。
但是,在PL/SQL中引用主变量的时候,我们必须加上冒号(:)前缀
:x表示引用sqlplus中定义的变量
触发器 new 和 old 修饰符
例子:
CREATE OR REPLACE TRIGGER derive_commission_pct
BEFORE INSERT OR UPDATE OF sal ON emp
FOR EACH ROW
WHEN (NEW.job = 'SALESMAN')
BEGIN
IF INSERTING
THEN :NEW.comm :=0;
ELSIF :OLD.comm IS NULL
THEN :NEW.comm := 0;
ELSE :NEW.comm := :OLD.comm * 1.05;
END IF;
END;
/
--------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------
create or replace trigger table_triger
before insert on table
for each row
declare
-- local variables here
begin
IF INSERTING AND :NEW.ID IS NULL THEN
SELECT table.NEXTVAL INTO :NEW.ID FROM SYS.DUAL;
END IF;
end table_triger;
- oracle冒号问题联系触发器中new和old的冒号问题':'
- oracle冒号问题联系触发器中new和old的冒号问题':'
- Orcale触发器中的冒号,new和old
- oracle中冒号的问题 oracle中变量的绑定
- oracle中触发器中:new和:old 的使用
- oracle中触发器中:new和:old 的使用方法
- Oracle触发器中NEW和old的说明
- 触发器中OLD和NEW的使用
- 触发器中 :new 和 :old
- oracle通配符,运算符的使用, 冒号问题
- c++中冒号(:)和双冒号(::)的用法
- c++中冒号(:)和双冒号(::)的用法
- c++中冒号(:)和双冒号(::)的用法
- c++中冒号(:)和双冒号(::)的用法
- c++中冒号(:)和双冒号(::)的用法
- c++中冒号(:)和双冒号(::)的用法
- c++中冒号(:)和双冒号(::)的用法
- c++中冒号(:)和双冒号(::)的用法
- 通过前序遍历和中序遍历重建二叉树以及输出后序遍历(Java实现)
- Java 实现Ping 功能
- uap导出参数模板配置的方法
- IOS开发笔记之常用库索引
- TIBCO Rendezvous — 技术介绍
- oracle冒号问题联系触发器中new和old的冒号问题':'
- Dubbo 入门实例 本地伪集群测试Demo
- java UDP 个人见解
- 让4K融入家庭 F1车迷带你走进赛车世界
- JAVA_OPTS参数设置
- Android 不规则图像填充 小玩着色游戏
- 关于ActiveX Control开发总结 MFC篇
- 单例
- Android第23天 Service