oracle資料庫中,沒有自增列
序列sequence,會提供乙個自增的值
將這個自增的值填入某個指定列,其實也相當於該列是乙個自增列
建立序列:
create sequence [seq_name];
刪除序列:
drop sequence [seq_name];
使用序列,得到序列的值
[seq_name].nextval
示例:insert into t_dict values(seq_t_dict.nextval,'1','nan','***');
因為oracle資料庫如果使用序列來作為主鍵值,那麼因為延遲載入技術的存在,導致序列有可能從2開始,為了避免在初始化資料中,關聯表資料插入出現錯誤,可以在初始化資料時,先寫死主鍵。
比如在建立使用者,角色,使用者角色關係表初始化資料時:
insert into t_user values(1,』admin』,...);
insert into t_user values(2,』user』,...);
insert into t_role values(1,』role1』,...);
insert into t_role values(2,』role2』,...);
insert into t_user_role values(1,1,1); //將role1角色授予admin使用者
之後建立針對這些表的序列
序列是給通過介面新增使用者,新增角色,新增使用者角色對應關係時使用
可以將序列的初始值,通過引數設定到比較大的數字上
create sequenece seq_t_user satrt with 100; //序列sql_t_user的初始值是100
Oracle資料庫之序列
序列是乙個計數器,它並不會與特定的表關聯。我們可以通過建立oracle序列和觸發器實現表的主鍵自增。序列的用途一般用來填充主鍵和計數。一 建立序列 語法結構 create sequence schema.sequence name integer 完整語法結構見 說明 schema 模式,即使用者名...
oracle資料庫 序列 sequence
乙個問題 在某張表中,存在乙個id列 整數 我們希望在新增記錄的時候,該列從1開始,自動的增長,怎麼處理?解決方式 oracle是利用 序列 sequence 來完成的。序列 sequence 介紹 oracle中,是通過使用序列 sequence 來處理自動增長列。1 可以為表中的列自動產生值。2...
Oracle資料庫的約束,序列,索引
約束 1 概念 也叫完整性約束條件。是資料表中的一些限制條件,當資料表中的資料發生變化時,必須遵循 這些限制條件,不遵循,不能進行dml操作。2 分類 1 非空約束 not null 簡稱un 2 唯一性約束 unique 簡稱uk 3 主鍵約束 primary key 簡稱pk 4 外來鍵約束 f...