建立及管理序列
順序是結構物件,您可以從中產生唯一的循序值,當您需要唯一的主索引鍵時,此值非常有用。序列是透過虛擬資料欄 CURRVAL 和 NEXTVAL 來使用,此順序會分別傳回序列的目前值和下一個值。
建立序列之後,您必須使用 NEXTVAL 來初始化序列,以取得其第一個值。只有在初始化序列之後,CURRVAL 才會傳回其目前的值。
HR 綱要有三個順序:DEPARTMENTS_SEQUENCE、EMPLOYEES_SEQUENCE 及 LOCATIONS_SEQUENCE。
秘訣:當您計劃使用序列來填入表格的主鍵時,請提供序列名稱以反映此目的。(本主題使用命名慣例 TABLE_NAME _SEQUENCE。)
另請參閱:
-
Oracle Database Concepts,瞭解序列的簡介
-
Oracle Database SQL Language Reference,瞭解 CURRVAL 和 NEXTVAL 虛擬資料欄的詳細資訊
-
Oracle Database Administrator's Guide,瞭解有關管理序列的資訊
教學課程:建立序列
本教學課程說明如何使用「建立資料庫順序」工具來建立順序,以用於產生 EVALUATIONS 表格的主索引鍵。
已在範例 4-1 中建立 EVALUATIONS 表格。
若要建立序列,請使用 SQL Developer 工具「建立序列」或 DDL 敘述句 CREATE SEQUENCE。相等的 DDL 敘述句為:
CREATE SEQUENCE evaluations_sequence
INCREMENT BY 1
START WITH 1 ORDER;
使用「建立資料庫順序」工具建立 EVALUATIONS_SEQUENCE 的步驟:
-
在「連線」框架中,展開 hr_conn 。
-
在綱要物件類型清單中,在順序上按一下滑鼠右鍵。
-
在選項清單中,按一下新建順序。
-
在「建立順序」視窗的「名稱」欄位中,在預設值 "SEQUENCE1" 上鍵入
EVALUATIONS_SEQUENCE。 -
如果未顯示「特性」窗格,請按一下特性頁籤。
-
在「屬性」窗格中:
-
在「增量」欄位中,輸入
1。 -
在「開頭為」欄位中,輸入
1。 -
對於其餘欄位,請接受預設值。
-
然後按一下確定。
已建立序號 EVALUATIONS_SEQUENCE。其名稱會顯示在「連線」框架中的「序列」底下。
-
另請參閱:
-
Oracle SQL Developer User's Guide,瞭解有關使用 SQL Developer 建立序列的詳細資訊
-
Oracle Database SQL Language Reference,瞭解 CREATE SEQUENCE 敘述句的相關資訊
-
教學課程:在插入資料列之前建立產生主索引鍵的觸發程式,瞭解如何建立將 EVALUATIONS_SEQUENCE 建立的主索引鍵插入 EVALUATIONS 表格的觸發程式
刪除序列
若要刪除順序,請使用「SQL Developer 連線」框架與「刪除」工具,或 DDL 敘述句 DROP SEQUENCE。
此陳述式會刪除序號 EVALUATIONS_SEQUENCE:
DROP SEQUENCE EVALUATIONS_SEQUENCE;
注意:請勿刪除順序 EVALUATIONS_SEQUENCE — 您需要該順序來範例 5-3 。如果您想要練習刪除序列,請建立其他序列,然後將其刪除。
使用「刪除」工具刪除序列的步驟:
-
在「連線」框架中,展開 hr_conn 。
-
在結構物件類型的清單中,展開順序。
-
在序列清單中,在要刪除的序列名稱上按一下滑鼠右鍵。
-
在選項清單中,按一下刪除。
-
在「刪除」視窗中,按一下套用。
-
在「確認」視窗中,按一下確定。
另請參閱:Oracle Database SQL Language Reference,瞭解 DROP SEQUENCE 敘述句的相關資訊