程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle同義詞和其序列的使用方案簡介

Oracle同義詞和其序列的使用方案簡介

編輯:Oracle數據庫基礎

以下的文章主要講述的是Oracle同義詞和其序列的基本使用方案,其實Oracle同義詞通俗的講就是一個實際對象的替代名稱,它的主要功能是巧妙地利用Oracle同義詞來操縱各種不同的相關用戶模式下的對象。

通過select user from dual查看當前使用的用戶。

訪問其它用戶模式下的表:

  1. select * from scott.dept;  

表示查看scott用戶模式下的dept表數據。

同義詞分為private 和 public,private僅創建的用戶可以使用。public則所有用戶都可以使用。

語法:

  1. CREATE SYNONYN DEPT FOR SCOTT.DEPT; 

表示將scoot用戶下的dept表,創建為當前用戶的Oracle同義詞。默認為private。

通過drop synonym dept刪除。

  1. create public synonym dept for scott.dept; 

表示創建一個公共的,在其它用戶模式下也同樣的進行查詢。

序列

作用:獨立的事務,按一定的增量自動增加或減少,一組整型值。

語法:

  1. create sequence myseq start with 1 

從1開始

increment by 1 --每次增加1

order --從小到大排序

  1. nocycle; 

為了避免取到重復值,不進行序列循環,此項為影響性能,使數據庫被迫訪問磁盤。

使用方法:

  1. select myseq.nextval from dual; 

通過nextval取得下一個值。

通過

  1. select myseq.currval from dual; 

查看當前序列的值。

如果數據庫重啟,不能馬上通過currval來查看序列的當前值,要通過nextval取完值後,再通過currval查看當前序列的值。

desc dba_sequences 查看dba下sequence的情況。同樣包括all_sequences,user_sequences.

修改序列遞增是:

  1. ALTER SEQUENCE MYSEQ INCREMENT BY 3; 

通過修改的方式修改序列的遞增量。但不能修改序列的當前值。 以上的相關內容就是對Oracle同義詞與序列基本使用的介紹,望你能有所收獲。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved