number第一步:创建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
referencing old as old new as new for each row
begin
select s_country_id.nextval into :new.country_id from dual;
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
referencing old as old new as new for each row
begin
select s_country_id.nextval into :new.country_id from dual;
end;
/
解决方案 »
- oracle 用sql*loader方式到数据,多个控制文件可以合并吗 ?
- weblogic 10 出现javacore 和headump文件
- 哪位大侠 帮忙看看这个存储过程 oracle 以前没用过 今天刚弄的 都是错误
- 关于Oracle Object for OLE
- 急!怎么将Oracel中全角的数字(nvarchar2)转为int类型的数字。
- nvl的问题
- 求助sqlplus的问题
- 在ORACLE数据库中这样的SQL语句怎么写?
- 一个关于commit的简单问题,困惑中!
- RMAN9i写文件的错误,急,马上给分。
- 高手呀,看看这个SQL该怎么改!!马上给分
- 求语句:关于两张表在一次查询的结果中显示的问题
需要规定该字符串的第几位是何意义,在bzszp(SongZip)兄的trigger中程序复杂一些罢了。
1.创建:create sequence SQU
minvalue 1
maxvalue 9999999999
start with 1
increment by 1
cache 20
order;
2.使用:select squ.nextval into var from dual
如果是用来做有实际代码意义的序号,用varchar2(在一本O'relay 出版oracle设计书上看到的,具体没有试过)