create or replace trigger production_trigger
before insert on T.t1
for each row
declare
record_id number(20);
work_id number(20);
-- local variables here
begin
select T.hibernate_sequence.nextval into record_id from dual;
:new.t1_ID:=record_id;
select T.hibernate_sequence.nextval into work_id from dual;
insert into T.wf_work values(work_id,'/defaultroot/WorkFlowProcAction.do?qq=1',sysdate(),record_id,'window.open("/detroot/work_flow/workflow_cancelReason.jsp?workStatus=1&workId=work_id&tableId=32174&processName=生产进度看板&recordId=record_id&processId=32226&remindValue=1&moduleId=1&remindField=SQTSMT$t3057_f3764S","","TOP=0,LEFT=0,scrol
lbars=no,resizable=no,width=480,height=250")');
select T.hibernate_sequence.nextval into work_id from dual;
insert into T.wf_work values(X,X,X,X,X,X);
end production_trigger;
触发器代码如图,请问各位高手,怎么样才能让红色部分在插入数据库后显示的是从序列取出的数值,而不是work_id和record_id这样的字符.
解决方案 »
- 如何在虚拟机基础上搭建一个oracle 开发环境。
- 怎么查出数据库最近频繁增删改的库表?
- 管理员 我发的oracle erp帖子怎么没了 是这不能招人吗?但CSDN哪个版块还能有oracle erp的人呢
- (急)面试题:批量更改数据库中的数据(oracle) 在线等待中……
- 如何快速对数据进行有序化?
- 下面的存储过程错在哪了?各位前辈,解决立马散分
- 数据量在50W左右 开发单机版应用软件 选择哪个数据库比较好?
- 为什么我安装不上Oracle 9i?
- 太奇怪了,隔一段时间就报错,然后数据库就连不上了,我给用户骂死了,请问各位老大帮忙啊!
- 指点迷经:
- oracle触发器(急)
- 急,Enterprise Manager 无法连接到数据库实例。下面列出了组件的状态
create or replace trigger production_trigger
before insert on T.t1
for each row
declare
record_id number(20);
work_id number(20);
-- local variables here
begin
select T.hibernate_sequence.nextval into record_id from dual;
:new.t1_ID:=record_id;
select T.hibernate_sequence.nextval into work_id from dual;
insert into T.wf_work values(work_id,'/defaultroot/WorkFlowProcAction.do?qq=1',sysdate(),record_id,'window.open("/detroot/work_flow/workflow_cancelReason.jsp?workStatus=1&workId=work_id&tableId=32174&processName=生产进度看板&recordId=record_id&processId=32226&remindValue=1&moduleId=1&remindField=SQTSMT$t3057_f3764S","","TOP=0,LEFT=0,scrol
lbars=no,resizable=no,width=480,height=250")');
select T.hibernate_sequence.nextval into work_id from dual;
insert into T.wf_work values(X,X,X,X,X,X);
end production_trigger;
直接贴吧create or replace trigger production_trigger
before insert on T.t1
for each row
declare
record_id number(20);
work_id number(20);
-- local variables here
begin
select T.hibernate_sequence.nextval into record_id from dual;
:new.t1_ID:=record_id;
select T.hibernate_sequence.nextval into work_id from dual;
insert into T.wf_work values(work_id,'/defaultroot/WorkFlowProcAction.do?qq=1',sysdate(),record_id,'window.open("/detroot/work_flow/workflow_cancelReason.jsp?workStatus=1&workId=work_id&tableId=32174&processName=生产进度看板&recordId=record_id&processId=32226&remindValue=1&moduleId=1&remindField=SQTSMT$t3057_f3764S","","TOP=0,LEFT=0,scrol
lbars=no,resizable=no,width=480,height=250")');
select T.hibernate_sequence.nextval into work_id from dual;
insert into T.wf_work values(X,X,X,X,X,X);
end production_trigger;
你想插序列,直接写values(work_id,T.hibernate_sequence.nextval, ...
lbars=no,resizable=no,width=480,height=250")');
============================================================================================
使用短串进行调试,如:
insert into T.wf_work values(work_id,'test1',sysdate(),record_id,'test2');
‘rkId=’||work_id||‘’
还有很多字符需要转义。具体上网查下吧
VALUES
(WORK_ID,
'/defaultroot/WorkFlowProcAction.do?qq=1',
SYSDATE(),
RECORD_ID,
'window.open("/detroot/work_flow/workflow_cancelReason.jsp?workStatus=1&workId=' ||
WORK_ID || '&tableId=32174&processName=生产进度看板&recordId=' || RECORD_ID ||
'&processId=32226&remindValue=1&moduleId=1&remindField=SQTSMT$t3057_f3764S","","TOP=0,LEFT=0,scrol
lbars=no,resizable=no,width=480,height=250")');
谢谢oracledbalgtu的指教,可以了.