Oracle同義詞和序列的基本使用方法
Oracle同義詞通俗的講就是某個對象的替代名稱,其主要的作用就是利用相關(guān)的同義詞方便的操縱各種不同用戶模式下的相關(guān)對象。我們通過select user from dual來對當前使用的用戶進行查看。
訪問其它用戶模式下的表:
- select * from scott.dept;
表示查看scott用戶模式下的dept表數(shù)據(jù)。
Oracle同義詞分為private 和 public,private僅創(chuàng)建的用戶可以使用。public則所有用戶都可以使用。
語法:
- CREATE SYNONYN DEPT FOR SCOTT.DEPT;
表示將scoot用戶下的dept表,創(chuàng)建為當前用戶的同義詞。默認為private。
通過drop synonym dept刪除。
- create public synonym dept for scott.dept;
表示創(chuàng)建一個公共的,在其它用戶模式下也同樣的進行查詢。
序列
作用:獨立的事務(wù),按一定的增量自動增加或減少,一組整型值。
語法:
create sequence myseq start with 1 --從1開始
increment by 1 --每次增加1
order --從小到大排序
nocycle;--為了避免取到重復(fù)值,不進行序列循環(huán),此項為影響性能,使數(shù)據(jù)庫被迫訪問磁盤。
使用方法:
- select myseq.nextval from dual;
通過nextval取得下一個值。
通過
- select myseq.currval from dual;
查看當前序列的值。
如果數(shù)據(jù)庫重啟,不能馬上通過currval來查看序列的當前值,要通過nextval取完值后,再通過currval查看當前序列的值。
desc dba_sequences 查看dba下sequence的情況。同樣包括all_sequences,user_sequences.
修改序列遞增是:
- ALTER SEQUENCE MYSEQ INCREMENT BY 3;
通過修改的方式修改序列的遞增量。但不能修改序列的當前值。以上的相關(guān)內(nèi)容就是對Oracle同義詞與序列基本使用的介紹,望你能有所收獲。
【編輯推薦】