第一步:创建SEQUENCE
create sequence s_country_id increment by 1 start with 1 maxvalue 999999999;
第二步:创建一个基于该表的before insert 触发器,在触发器中使用该SEQUENCE
create or replace trigger bef_ins_t_country_define
before insert on t_country_define
for each row
begin
new.country_id=s_country_id.nextval;
end;
create sequence s_country_id increment by 1 start with 1 maxvalue 999999999;
第二步:创建一个基于该表的before insert 触发器,在触发器中使用该SEQUENCE
create or replace trigger bef_ins_t_country_define
before insert on t_country_define
for each row
begin
new.country_id=s_country_id.nextval;
end;
解决方案 »
- select语句可以执行,但是explain plan却没有结果?
- 本人2月14日大婚,接受祝福,800分全部散尽,普天同贺~~~!!!
- 如何用proc在oracle数据库上实现多行查询
- 怎么样按照时间调用触发器以及在触发器中调用存储过程
- 请问:ORACLE的包,函数,过程等的定义是否存储在表里面?
- 那位大哥有计算机方面的英文论文和译文啊!!
- 急!有关oracle 9i的安装问题
- 小弟无法安装oracle9i,请大家帮我想想!!!!
- 上海Oracle认证培训
- oracle Trigger 编译
- 大虾们,如何从动态的表里面获取数据?在线等待.....
- Oracle中的序列sequence 在关闭Oracle 服务器后,再打开会重新从0开始增吗
2.use trigger+sequence.
create sequence seq_name increment by 1 start with 10000;
创建表的时候添加在表里
插入的时候
insert table values(...,seq_name.nextval,...)
如:
create sequence sql_01
increment by 1
start with 1;
create table seq_table(num1 number(3),birdate date null);insert into seq_table values(sql_01.nextval,field2);
--------------------------
CREATE TABLE RZ_Info(
OperationID number PRIMARY KEY,
OprationType varchar2(20),
OperationTime date DEFAULT SYSDATE,
OperationMan varchar2(4));
2.建序列
Create Sequence SeOperationID
Start With 1
Increment By 1;3.建触发器
CREATE OR REPLACE TRIGGER RZ_Info_RIGGER
BEFORE INSERT
ON RZ_Info FOR EACH ROW
BEGIN
SELECT SeOperationID.NEXTVAL INTO :NEW.OperationID FROM DUAL;
END;
/4.插入记录
INSERT INTO RZ_Info(OprationType,OperationMan)
VALUES('系统初始化','0000');
重复多次。5.查询记录
select * from RZ_Info;
================================================================CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!★ 浏览帖子速度极快![建议系统使用ie5.5以上]。 ★ 多种帖子实现界面。
★ 保存帖子到本地[html格式]★ 监视您关注帖子的回复更新。
★ 可以直接发贴、回复帖子★ 采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录!
★ 支持在线检测程序升级情况,可及时获得程序更新的信息。★★ 签名 ●
可以在您的每个帖子的后面自动加上一个自己设计的签名哟。Http://www.ChinaOK.net/csdn/csdn.zip
Http://www.ChinaOK.net/csdn/csdn.rar
Http://www.ChinaOK.net/csdn/csdn.exe [自解压]
我 在这里的回答是一个大虾的(名字忘了,对不起)如果自增字段名是id的话那么可以用这个例子
CREATE SEQUENCE "SCOTT"."TEST" INCREMENT BY 1 START WITH 1
MAXVALUE 1.0E27 MINVALUE 1 NOCYCLE
NOCACHE NOORDERCREATE OR REPLACE TRIGGER "SCOTT"."TEST" BEFORE INSERT
ON "TEST1"
FOR EACH ROW begin
select test.nextval into :new.id from dual;
end;