Oracle自增列创建方法
最近在做Oracle的項目,由于以前沒有接觸過Oracle的開發,遇到了不少的問題,比如給Oracle表添加自增列,與SQL Server就不同。
Oracle沒有自增字段這樣的功能,但是通過觸發器(trigger)和序列(sequence)可以實現。
先建一個測試表了:
create table userlogin
(
???? id?? number(6) not null,
???? name?? varchar2(30)?? not null primary key
)
tablespace users
/
第一步:創建SEQUENCE
create sequence userlogin_seq increment by 1 start with 1 minvalue 1 maxvalue 9999999999999 nocache order;
第二步:創建一個基于該表的before insert 觸發器,在觸發器中使用剛創建的SEQUENCE
create or replace trigger userlogin_trigger
before insert on userlogin
for each row
begin
????? select?? userlogin_seq.nextval?? into:new.id from sys.dual ;
end;
/
第三步:在userlogin表中測試
寫個insert語句,插入一條記錄,看ID字段自增了沒,自增則OK啦。???
總結
以上是生活随笔為你收集整理的Oracle自增列创建方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 对象名和函数名同名引起的莫名错误
- 下一篇: php导出excel格式数据