当a表被查入一条数据,这条数据的id字段就自动赋值给这条数据的pid字段
解决方案 »
- 关于Oracle软件的购买方面的问题
- 如何看一下建立的dblink是否成功?通过dblink查询时出现 ORA-12514: TNS: 监听程序当前无法识别连接描述符中
- Oracle中怎么样把一个字段内所有记录的值相加?
- oracle job 怎么不自动执行
- 一个小问题
- MySql关联查询时候少数据,求大神帮忙看看
- oracle表中如何使number型字段自增长呢?
- 快照是什么东西?有什么用?怎么建?
- 请问如何在ORACLE 存储过程中设置回滚断点?
- oracle8.1.5 中nested table的用法
- 求一条简单的SQL语句
- 向oracle中插入数据是000000怎么可读取的是0怎么解决,,谢谢谢谢
--1.先创建序列
scott@YPCOST> create sequence orderNo_seq start with 100 increment by 1 maxvalue 999;序列已创建。scott@YPCOST> create table test(id number,name varchar2(20));表已创建。--2、再加触发器
scott@YPCOST> ed
已写入 file afiedt.bufcreate or replace trigger insert_tri
before insert on test
for each row
declare
begin
select orderNo_seq.nextval into :new.id from dual;
end;
scott@YPCOST> /触发器已创建scott@YPCOST> insert into test(name) values('tom');已创建 1 行。scott@YPCOST> commit;提交完成。scott@YPCOST> select * from test;ID NAME
-------------------- --------------------
100 tom
--你的需求应该是这样的
scott@YPCOST> create table test(id number,name varchar2(20));Table created.scott@YPCOST>
scott@YPCOST> create or replace trigger insert_tri
2 before insert on test
3 for each row
4 begin
5 :new.name:=:new.id;
6 end;
7 /Trigger created.scott@YPCOST> insert into test(id) values(1);1 row created.scott@YPCOST> commit;Commit complete.scott@YPCOST> select * from test; ID NAME
---------- --------------------
1 1