使用oracle數(shù)據庫中的關鍵字sequence來實現(xiàn)目的。
成都創(chuàng)新互聯(lián)主要從事成都網站建設、網站建設、網頁設計、企業(yè)做網站、公司建網站等業(yè)務。立足成都服務慶城,10余年網站建設經驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:028-86922220
//創(chuàng)建mySeq
create sequence mySeq
start with 1
increment by 2
maxvalue 40
minvalue 1
cycle
//創(chuàng)建用戶表
create table USER
(
Id int,
CompName varchar2(20)
)
插入語句可以這樣寫:
insert into USER values(mySeq.nextVal,'AA')
這樣的話每次插入的ID就是自動遞增的
擴展資料:
sequence用法:
create sequence 序列名稱
start with 起始數(shù)
increment by 增長量
[maxvalue 值]
[minvalue 值]
[cycle 當?shù)竭_最大值的時候,將繼續(xù)從頭開始]
[Nocycle -- 一直累加,不循環(huán)]
[Cache ]
參考資料:百度百科-oraclesequence
如何在MySQLOracle下創(chuàng)建自動遞增字段
在MySQL下創(chuàng)建自動遞增字段
create table article?? //先創(chuàng)建一個表
(???????
id int primary key auto_increment ? //設置該字段為自動遞增字段
title varchar( )
);
insert into article values (null a );???? //向數(shù)據庫中插入數(shù)據
select * from article;?? 結果如下
Id
Title
a
insert into article values (null b );
insert into article values (null c );
insert into article ?(title)? values ( d );
select * from article;?? 結果如下
Id
Title
a
b
c
d
但是oracle沒有這樣的功能 但是通過觸發(fā)器(trigger)和序列(sequence)可以實現(xiàn)
假設關鍵字段為id 建一個序列 代碼為
create sequence seq_test_ids minvalue maxvalue start with increment by nocache order ;! [if !supportLineBreakNewLine] ! [endif]
建解發(fā)器代碼為
lishixinzhi/Article/program/Oracle/201311/18903
以前用的mysql,是有自動遞增這個屬性的,現(xiàn)在用的orlace,需要建序列來實現(xiàn)遞增,這里記錄一下:
一、先建一張表(PROJECT_LOGS)
二、表建好了,我們來建一下序列,我用的是sqldeveloper界面來建:
其實到了這里就實現(xiàn)了遞增,只是寫sql時要傳入id(SEQ_PROJECT_LOGS.Nextval);
三、創(chuàng)建觸發(fā)器:
oracle sql developer建表的時候id字段的自動遞增的設置方法和步驟如下:
1、首先,打開sql
server數(shù)據庫,創(chuàng)建一個新表,然后在表中創(chuàng)建id字段并選擇int類型,如下圖所示,然后進入下一步。
2、其次,完成上述步驟后,選擇id字段,然后在下面的列屬性中找到標識規(guī)范,如下圖所示,然后進入下一步。
3、接著,完成上述步驟后,單擊標識規(guī)范,可以看到默認值為“否”,這表示不遞增,如下圖所示,然后進入下一步。
4、然后,完成上述步驟后,將標識規(guī)范調整為“是”,將“標識增量”設置為1,然后單擊保存按鈕,如下圖所示,然后進入下一步。
5、最后,完成上述步驟后,添加數(shù)據時ID將自動遞增,如下圖所示。這樣,問題就解決了。
關于主鍵:在建表時指定primary key字句即可:
create table test(
id ?number(6) primary key,
name varchar2(30)
);
如果是對于已經建好的表,想增加主鍵約束,則類似語法:
alter table test add constraint pk_id primary key(id); ?
其中add constraint 和 primary key是關鍵字,pk_id是主鍵名稱,自定義的額,只要不重復即可。
也可以自動一些,對表的插入操作,建立一個觸發(fā)器,每當有數(shù)據插入時,觸發(fā)器自動修改id值為序列的新值,這樣就完全實現(xiàn)自增id功能了。不過其實也沒有這個必要。因為觸發(fā)器如果建多了,有時會比較混亂,不易管理。
可以通過設置序列(sequence)的形式實現(xiàn):\x0d\x0a第一步:創(chuàng)建sequence,讓 INCREMENT BY增長速度為1,START WITH(開始值為 1)。創(chuàng)建sequence語句如下:\x0d\x0aCREATE SEQUENCE SEQ_NO\x0d\x0a MINVALUE 1 --最小值\x0d\x0a NOMAXvalue -----沒有最大值\x0d\x0a INCREMENT BY 1 ----每次遞增1\x0d\x0a START WITH 1 -----開始值為1\x0d\x0a NOCACHE ----------不緩存\x0d\x0a NOCYCLE ; ---------不循環(huán)\x0d\x0a第二步:每次插入的時候直接\x0d\x0a”insert into tablename(ID) values(SEQ_NO.nextVal)“即可。
新聞標題:oracle怎么遞增 oracle增加
文章URL:http://jinyejixie.com/article26/hpcjjg.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供標簽優(yōu)化、、云服務器、手機網站建設、外貿建站、網站改版
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)