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