序列和同義詞

2021-06-06 08:41:58 字數 1604 閱讀 4533

1:定義

:僅向前的數字變數(

和sql

中的自動編號有點像 

identity(1,2)  )

2:如何定義乙個序列

格式:create sequence 《序列名稱

>

start with 《起始數

>

increment by 《增長量

>

[maxvalue  值

][minvalue  值

][cycle 當到達最大值的時候,將繼續從頭開始

]increment by: 指定序列號之間的間隔,該值可為正的或負的整數,但不可為0.

序列為公升序。忽略該子句時,預設值為

1.start with:指定生成的第乙個序列號。在公升序時,序列可從比最小值大的值開始,預設值為序列的最小值。對於降序,序列可由比最大值小的值開始,預設值為序列的最大值。

maxvalue:指定序列可生成的最大值。也可以不進行設定

nomaxvalue:為公升序指定最大值為1027

,為降序指定最大值為

-1.minvalue:指定序列的最小值。

nominvalue:為公升序指定最小值為1.

為降序指定最小值為

-1026.

nocycle:一直累加,不迴圈 

3:怎麼去取序列資料

:currval--->curenvalue

nextval-->nextvlaue

example:

select myseq.nextval from dual

注意一點:currval

只有當nextval

執行一次以後才可以用

.在建立表的時候,

可以使用序列

.具體例子:

create table 學生基本資訊表

(stuid int,

stuname varchar2(20)

)insert into 學生基本資訊表 

values(myseq.nextval,'aa')

4:如何修改序列

:alter sequence myseq maxvalue 500

注意:不能改start with,

其他隨便改(

設定minvalue

值的時候不能大於當前值

)5:如何檢視某個表空間所有序列

:select * from user_sequences

6:如何刪除

:drop sequence 序列名稱

同義詞是現有物件的乙個別名。

·簡化sql語句

·隱藏物件的名稱和所有者

·提供對物件的公共訪問

一,建立私有同義詞

create  [or replace ]  synonym  名稱 

for 

表名 ;

如: sql> create  or  replace  synonym sm_emp for scott.emp ; 

二,建立公共同義詞

create or replace public synonym 名稱 

for 表名

三,刪除同義詞

drop synonym 名稱

序列和同義詞

序列 序列和檢視一樣,不占有實際的儲存空間,只是在資料庫中儲存它的定義 建立序列 create sequence emp seq increment by 1 start with 1 nomaxvalue nocycle cache 10 引用序列 insert into emp values e...

Oracle同義詞和序列

1 1同義詞 是表 索引 檢視的模式物件的乙個別名,通過模式物件建立同意詞,可以隱藏物件的實際名稱和 所有者資訊,為物件提供一定的安全性,開發應用程式時 應該盡量避免直接使用表,檢視 或其他物件,改用物件的同義詞。23 2避免當管理員對資料庫物件做出修改和變動後,必須重新編譯應用程式,只需要在資料庫...

oracle 序列與同義詞

建立序列需要許可權 create sequence 授權過程 建立序列的語法 create sequence 序列名 increment by n increment by n 設定序列的間隔長度 例如 預設情況下,不設定間隔長度預設為一 其他引數 start with 定義序列的起始值 maxva...