1. 程式人生 > 實用技巧 >oracle 序列與同義詞

oracle 序列與同義詞

建立序列需要許可權 create sequence

授權過程

p_w_picpath

建立序列的語法

create sequence 序列名 increment by n;

increment by n 設定序列的間隔長度

例如:

p_w_picpath

預設情況下,不設定間隔長度預設為一

其他引數:

start with 定義序列的起始值

p_w_picpath

maxvalue 序列器能產生的最大值

minvalue 序列能產生的最小值

例如:

p_w_picpath

XL_5 含義為,建立序列為遞減序列,間隔為1,起始值為-200 最小值為-300;

cycle 迴圈 nocycle 不迴圈

如XL_5 當序列生成器生成了-200到-300的數之後,使用cycle和nocycle來確定是否迴圈。

p_w_picpath

p_w_picpath

cache 存放序列記憶體塊的大小,預設為20(記憶體塊的作用是增加序列的效能,不過會佔用記憶體空間)

nocache 不緩衝

p_w_picpath

刪除序列

語法

drop sequence 序列名

p_w_picpath

序列允許被修改,但是start with引數不可以修改,修改序列的引數,只會影響以後對序列的使用,對已存入的資料無效。

語法

alter sequence 序列名 ……引數

p_w_picpath

使用序列的方法

引數

currval 使用當前序列值

nextval 使用下一個值

語法: 序列名.currval/nextval

例如:

p_w_picpath

可以通過 select語句查詢序列

p_w_picpath

序列的資料字典:user_sequences

oracle 同義詞

同義詞相當於一個alias,便於查詢

分為公有同義詞和私有同義詞

許可權:

公有同義詞: create public synonym 公有同義詞會對所有人生效

私有同義詞: create synonym 只對自己生效

當建立的表,公有同義詞,私有同義詞三者同名的時候,使用select的優先順序為

表〉私有〉公有

建立公有同義詞:

語法

create public synonym 同義詞名 for 物件名;

p_w_picpath

上面例子中,之前建立過名為A的表掩飾序列,所以在查詢時因為優先順序的原因沒有顯示EMP表,而B的時候就會顯示

建立私有同義詞的方法相同

create synonym 同義名 for 物件名

刪除同義詞

drop public synonym 同義詞名稱,需要刪除的許可權:drop public synonym。

同義詞資料字典: user_synonyms

轉載於:https://blog.51cto.com/zhengweiit/518674