oracle中沒有自動增長,只有序列號
創(chuàng)新互聯(lián)是少有的成都網(wǎng)站制作、成都網(wǎng)站設(shè)計、營銷型企業(yè)網(wǎng)站、微信小程序、手機(jī)APP,開發(fā)、制作、設(shè)計、賣友情鏈接、推廣優(yōu)化一站式服務(wù)網(wǎng)絡(luò)公司,于2013年開始,堅持透明化,價格低,無套路經(jīng)營理念。讓網(wǎng)頁驚喜每一位訪客多年來深受用戶好評
添加一條記錄和sqlserver一樣
語法:insert into table(列,列,列) values(value,value,value);
如果有個自動增長列
可以用這種方法,首先創(chuàng)建一個序列號SEQ_Test
然后insert into table(ID,列,列) values(SEQ_Test.nextval,value,value);
oracle的自增需要依靠序列和觸發(fā)器共同實(shí)現(xiàn)
比如
先創(chuàng)建一個表
create?table?test(id?int?primary?key,
name?varchar2(10));
創(chuàng)建一個序列
create?sequence?test_seq?
increment?by?1?
start?with?1?
minvalue?1?
maxvalue?9999999999999?
nocache?
order;
觸發(fā)器實(shí)現(xiàn)
create?or?replace?trigger?test_trigger
before?insert?on?testfor?each?row
begin?????
select??test_seq.Nextval?into:new.id?from?dual;
end;
然后你試試吧
insert?into?test?(name)?values?('張三');
應(yīng)該只有觸發(fā)器的辦法:
比如表名:tab,主鍵為:id
1. 增加一個序列號: create sequence seq_tab
2. 增加一個觸發(fā)器,如果是insert,則取序列號值,賦予主鍵列
CREATE OR REPLACE TRIGGER TRI_tab
BEFORE INSERT ON tab FOR EACH ROW
DECLARE
-- LOCAL VARIABLES HERE
BEGIN
IF :NEW.id IS NULL THEN
SELECT SEQ_tab.NEXTVAL INTO :NEW.id FROM DUAL;
END IF;
END TRI_tab;
新聞名稱:oracle怎么加自增列,oracle怎么設(shè)置自增列
標(biāo)題鏈接:http://chinadenli.net/article8/dsicdip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計公司、電子商務(wù)、網(wǎng)站內(nèi)鏈、用戶體驗、網(wǎng)站改版、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)