在Oracle下基于序列和触发器实现主键自增长_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > 在Oracle下基于序列和触发器实现主键自增长

在Oracle下基于序列和触发器实现主键自增长

 2010/12/27 9:45:27  jandroid  http://jandroid.javaeye.com  我要评论(0)
  • 摘要:droptablebook;dropsequencebook_seq;droptriggerbook_tri;--创建表格createtablebook(bookIdintegerprimarykeynotnull,bookNamevarchar2(20),pricenumber(3))tablespacezfs_datadescbook;--创建序列-
  • 标签:实现 ORA 主键 Oracle 触发器

drop ? table ?book;
drop ?sequence?book_seq;
drop ? trigger ?book_tri;
-- 创建表格
create ? table ?book
(
bookId?
integer ? primary ? key ? not ? null ,
bookName?
varchar2 ( 20 ),
price?
number ( 3 )
)tablespace?zfs_data
desc ??book;
-- 创建序列
--
创建一个从10000开始每次递增为1的序列
create ?sequence?book_seq?minvalue? 10000 ?maxvalue? 9999999 ?increment? by ? 1 ?start? with ? 10000 ?;
-- 创建一个触发器,用于每次插入前自动成成序列的值
create ? or ? replace ? trigger ?book_tri
??before?
insert ? on ?book? for ?each?row
??
begin
????
select ?book_seq.nextval? into ?:new.bookId? from ?dual;
??
end ;
/ ??
commit ;??

insert ? into ?book?(bookName,?price)? values ( ' 深入浅出EXTJS ' , 59 );
insert ? into ?book?(bookName,?price)? values ( ' 深入浅出Jquery ' , 49 );

select ? * ? from ?book;

发表评论
用户名: 匿名