易截截图软件、单文件、免安装、纯绿色、仅160KB

请大侠指点下,我的ORACLE创建触发器没反应呢

SQL> create table scott.logon(
2 id number(4) not null primary key,
3 name varchar(10),
4 password varchar(20));

Table created

SQL> create sequence logon_sequence
2 increment by 1
3 start with 1
4 nomaxvalue
5 nocycle
6 cache 10;

Sequence created

SQL> create trigger logon_tg before insert on scott.logon
2 for each row
3 begin
4 select logon_sequence.nextval into:new.id from dual;
5 end;
6 commit;
7
触发器中不能commit 除非使用自治事务

问题时你这触发器中的查询语句在执行时输出到哪儿呢?控制台>


做个标记。
这里的触发器应该用after吧,但会提示ORA-04084:cannot change NEW values for this trigger type。期待高手解决

我测试了一下,除了commit; 没有问题
insert into logon(name) values('aaa');
insert into logon(name) values('aaa');
insert into logon(name) values('bbb');

select * from logon
/

ID NAME PASSWORD
----- ---------- --------------------
1 aaa
2 aaa
3 bbb


引用
我测试了一下,除了commit; 没有问题
insert into logon(name) values('aaa');
insert into logon(name) values('aaa');
insert into logon(name) values('bbb');

select * from logon
/

  ID NAME      PASSWORD
----- ---------- ------


相关问答:

oracle与aix - Oracle / 高级技术

在系统运行的时候总是有一块磁盘始终闪红灯,进入系统后
#topas查看总是有一块磁盘%BUSY为90%以上,
数据库版本:oracle 9.2.0.7 
数据文件挂载的节点:/oradata/pcs/ 逻辑卷号lv04 
#lslv -l lv04 ......

oracle触发器插入问题 - Oracle / 高级技术

我有两个表(A表和B表),机构完全相同:A 表建立触发器
当insert into A(id,name) values('1','zhangsan'); 我只想将name=zhangsan的时候将insert语句插入到B表中而A表不执行操作这个触发器应该怎么实现呢?
如: ......

请教Oracle事务隔离级别问题 - Oracle / 非技术区

查看事务隔离级别的命令,
MySQL使用的是select @@tx_isolation;
在Oracle中查看事务隔离级别的命令是哪个?

SQL code:

SELECT /*+ rule */ s.username,decode(l.type,'TM','TABLE LOCK','TX','ROW LOCK', ......

oracle 执行顺序 - Oracle / 基础和管理

SQL code:

declare
v_deptno number(2);
v_dname varchar2(14);
begin
dbms_output.put_line('请输入部门号和部门名:');
v_deptno:=&deptno;
v_dname:='&dname';
insert into dept01(deptno,dnam ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号