1樓:匿名使用者
sql> create sequence test_sequence2
2 increment by 1 -- 每次遞增13 start with 1 -- 從1開始4 nomaxvalue -- 沒有最大值5 minvalue 1 -- 最小值=16 nocycle; -- 不迴圈sequence created.
上面的語句, 建立乙個序列.
select test_sequence2.nextval from dual;
就是檢索序列值(遞增後的)
select test_sequence2.currval from dual;
就是檢索序列值(當前的)
2樓:匿名使用者
oracle建立序列基本語法:
create sequence sequence //建立序列名稱[increment by n] //遞增的序列值是n 如果n是正數就遞增,如果是負數就遞減 預設是1
[start with n] //開始的值,遞增預設是minvalue 遞減是maxvalue
//最大值
//最小值
//迴圈/不迴圈
;//分配並存入到記憶體中
3樓:匿名使用者
給你乙個例子:
create sequence "sequence_1"
increment by 1
start with 1
oracle表中怎麼建序列
4樓:
oracle表中建立序列語法:
create sequence name
[increment by n]
[start with n]
示例:increment by n:表明值每次增長n(步長)。
start with n: 從n開始。
: 設定最大值。
: 設定最小值,start with不能小於最小值。
cycle | nocycle : 是否迴圈,建議不使用
cache n | nocache : 是否啟用快取。
2、插入資料到表中
示例:insert into emp values
(emp_sequence .nextval, 'lewis', 'clerk',7902, sysdate, 1200, null, 20);
oracle資料庫系統是目前世界上流行的關聯式資料庫管理系統,系統可移植性好、使用方便、功能強,適用於各類大、中、小、微機環境。它是一種高效率、可靠性好的 適應高吞吐量的資料庫解決方案。
oracle資料庫是目前世界上使用最為廣泛的資料庫管理系統,作為乙個通用的資料庫系統,它具有完整的資料管理功能;作為乙個關聯式資料庫,它是乙個完備關係的產品;作為分布式資料庫它實現了分布式處理功能。
5樓:百小度
在oracle中sequence就是所謂的序列號,每次取的時候它會自動增加,一般用在需要按序列號排序的地方。
1、create sequence
你首先要有create sequence或者create any sequence許可權,
create sequence emp_sequence
increment by 1 -- 每次加幾個
start with 1 -- 從1開始計數
nomaxvalue -- 不設定最大值
nocycle -- 一直累加,不迴圈
cache 10;
一旦定義了emp_sequence,你就可以用currval,nextval
currval=返回 sequence的當前值
nextval=增加sequence的值,然後返回 sequence 值
比如:emp_sequence.currval
emp_sequence.nextval
可以使用sequence的地方:
- 不包含子查詢、snapshot、view的 select 語句
- insert語句的子查詢中
- nsert語句的values中
- update 的 set中
可以看如下例子:
insert into emp values
(empseq.nextval, 'lewis', 'clerk',7902, sysdate, 1200, null, 20);
select empseq.currval from dual;
但是要注意的是:
- 第一次nextval返回的是初始值;隨後的nextval會自動增加你定義的increment by值,然後返回增加後的值。currval 總是返回當前sequence的值,但是在第一次nextval初始化之後才能使用currval,否則會出錯。一次nextval會增加一次sequence的值,所以如果你在同乙個語句裡面使用多個nextval,其值就是不一樣的。
明白?- 如果指定cache值,oracle就可以預先在記憶體裡面放置一些sequence,這樣訪問的快些。cache裡面的取完後,oracle自動再取一組到cache。 使用cache或許會跳號, 比如資料庫突然不正常down掉(shutdown abort),cache中的sequence就會丟失.
所以可以在create sequence的時候用nocache防止這種情況。
2、alter sequence
你或者是該sequence的owner,或者有alter any sequence 許可權才能改動sequence. 可以alter除start至以外的所有sequence引數.如果想要改變start值,必須 drop sequence 再 re-create .
alter sequence 的例子
alter sequence emp_sequence
increment by 10
maxvalue 10000
cycle -- 到10000後從頭開始
nocache ;
影響sequence的初始化引數:
sequence_cache_entries =設定能同時被cache的sequence數目。
可以很簡單的drop sequence
drop sequence order_seq;
6樓:匿名使用者
-- create sequence
create sequence sn increment by 1 start with 1
建立乙個序列
-- create table
create table aaa2
( sn integer not null,id char(18) null,
name char(18) null,
) insert into aaa2 values(sn.nextval,'test','test')
oracle 建立的序列在**?
7樓:匿名使用者
sequence是oracle資料庫物件的一種,你可以從select distinct(object_type) from dba_objects;找出來,就像乙個表一樣,你可以進行任何的dml和ddl操作,也就是說更改,刪除,都不會對資料庫造成任何影響。
至於想寫pl sql,推薦你看下thomas zhang的 編寫健壯的pl/sql** 系列教程,寫的很好。
鏈結如下
8樓:匿名使用者
pl/sql 工具把oracle 資料庫各種物件都區分開了。比如table、sequences、view、trigger等等。它是oracle資料庫程式設計乙個非常好用的工具。
你可以找找中文版的,網上應該很多。
另外,如果你把sequences裡的物件全部刪除了,那麼呼叫到這些序列的物件(比如觸發器、儲存過程)就會出錯。
9樓:匿名使用者
在oracle中sequence就是所謂的序列號,每次取的時候它會自動增加,一般用在需要按序列號排序的地方。
1、create sequence
你首先要有create sequence或者create any sequence許可權,
create sequence emp_sequence
increment by 1 -- 每次加幾個
start with 1 -- 從1開始計數
nomaxvalue -- 不設定最大值
nocycle -- 一直累加,不迴圈
cache 10;
一旦定義了emp_sequence,你就可以用currval,nextval
currval=返回 sequence的當前值
nextval=增加sequence的值,然後返回 sequence 值
比如:emp_sequence.currval
emp_sequence.nextval
可以使用sequence的地方:
- 不包含子查詢、snapshot、view的 select 語句
- insert語句的子查詢中
- nsert語句的values中
- update 的 set中
可以看如下例子:
insert into emp values
(empseq.nextval, 'lewis', 'clerk',7902, sysdate, 1200, null, 20);
select empseq.currval from dual;
但是要注意的是:
- 第一次nextval返回的是初始值;隨後的nextval會自動增加你定義的increment by值,然後返回增加後的值。currval 總是返回當前sequence的值,但是在第一次nextval初始化之後才能使用currval,否則會出錯。一次nextval會增加一次sequence的值,所以如果你在同乙個語句裡面使用多個nextval,其值就是不一樣的。
明白?- 如果指定cache值,oracle就可以預先在記憶體裡面放置一些sequence,這樣訪問的快些。cache裡面的取完後,oracle自動再取一組到cache。 使用cache或許會跳號, 比如資料庫突然不正常down掉(shutdown abort),cache中的sequence就會丟失.
所以可以在create sequence的時候用nocache防止這種情況。
2、alter sequence
你或者是該sequence的owner,或者有alter any sequence 許可權才能改動sequence. 可以alter除start至以外的所有sequence引數.如果想要改變start值,必須 drop sequence 再 re-create .
alter sequence 的例子
alter sequence emp_sequence
increment by 10
maxvalue 10000
cycle -- 到10000後從頭開始
nocache ;
影響sequence的初始化引數:
sequence_cache_entries =設定能同時被cache的sequence數目。
可以很簡單的drop sequence
drop sequence order_seq;
如何給oracle中的表建序列,如何給oracle中的表建乙個序列
在oracle中sequence就是所謂的序列號,每次取的時候它會自動增加,一般用在需要按序列號排序的地方。1 createsequence 你首先要有createsequence或者createanysequence許可權,createsequenceemp sequence incrementb...
如何修改U盤序列號,怎麼修改U盤的序列號
引用別人的.先做必須要有工具的 目前只知道12位sn的phison up11主控u盤的修改方法 個人覺得16位sn的可能不是up11主控 舉例說明如下 sn號 aa bc de ff gg hh 1 在ini檔案的 customize info 下加入customer code 0x19,可把aa改...
電腦硬碟序列號怎麼查詢
第一步單擊 開始 執行.輸入cmd 第二步輸入diskpart,按回專車鍵 第三步輸入list disk,按回車鍵 第四步屬 輸入select disk 0,按回車鍵 第五步輸入detail disk,按回車鍵 第六步彈出的資訊中第二行就是硬碟序列號。電腦在現抄在這個年代襲是越來越普及了,硬碟作為電...