首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

Oracle创办表ID字段关联序列

2012-07-04 
Oracle创建表ID字段关联序列--创建测试表?create ? table ? msct_test?(?? ? ? ? user_id ? ? ? ? ? numbe

Oracle创建表ID字段关联序列

--创建测试表?
create ? table ? msct_test?
(?
? ? ? ? user_id ? ? ? ? ? number(10),?
? ? ? ? user_name ? ? ? varchar2(32)?
)?
/?

--创建序列?
CREATE ? SEQUENCE ? mscs_test?
? ? INCREMENT ? BY ? 1?
? ? START ? WITH ? 0?
? ? MINVALUE ? 0?
? ? MAXVALUE ? 100000000?
? ? NOCYCLE?
? ? NOORDER?
? ? CACHE ? 20?
/?

--创建触发器?
CREATE ? OR ? REPLACE ? TRIGGER ? insert_mscs_test?
BEFORE ? INSERT ??
ON ? msct_test?
REFERENCING ? NEW ? AS ? NEW ? OLD ? AS ? OLD?
FOR ? EACH ? ROW?
begin?
? ? ? ? select ? mscs_test.nextval ? into ? :new.user_id ? from ? dual;?
end;?
/?

--测试数据?
insert ? into ? msct_test(user_name) ? values( 'BuShi ');?
insert ? into ? msct_test(user_name) ? values( 'KeLinDun ');?
insert ? into ? msct_test(user_name) ? values( 'BillGates ');?

--检查结果?
SQL> ? select ? * ? from ? msct_test;?

? ? ? USER_ID ? USER_NAME?
---------- ? --------------------------------?
? ? ? ? ? ? ? ? ? 0 ? BuShi?
? ? ? ? ? ? ? ? ? 1 ? KeLinDun?
? ? ? ? ? ? ? ? ? 2 ? BillGates?

--注意?
--(1)如果你删除了其中一条或多条记录甚至所有记录,由于使用的是序列,已经使用过的ID将不会被重新使用。?

热点排行