在本教學中,您將學習如何使用Oracle CREATE TABLE
語句在Oracle資料庫中建立一個新錶。
要在Oracle資料庫中建立一個新錶,可以使用CREATE TABLE
語句。下面說明了CREATE TABLE
語句的基本語法:
CREATE TABLE schema_name.table_name (
column_1 data_type column_constraint,
column_2 data_type column_constraint,
...
table_constraint
);
在上面這個語法中,
CREATE TABLE
子句中,指定新表所屬的表名和模式名稱。NUMBER
,VARCHAR2
和列約束,如NOT NULL
,主鍵,約束檢查等。請注意使用者許可權問題,必須具有
CREATE TABLE
系統特權才能在模式中建立新表,並使用CREATE ANY TABLE
系統特權在其他使用者的模式中建立新表。除此之外,新錶的所有者必須具有包含新表或UNLIMITED TABLESPACE
系統特權的表空間的配額。
以下範例顯示如何在ot
模式中建立一個名稱為persons
的新表:
-- oracle 12c寫法
CREATE TABLE ot.persons(
person_id NUMBER GENERATED BY DEFAULT AS IDENTITY,
first_name VARCHAR2(50) NOT NULL,
last_name VARCHAR2(50) NOT NULL,
PRIMARY KEY(person_id)
);
在這個例子中,persons
表有三列:person_id
,first_name
和last_name
。
person_id
是標識表中唯一行的標識列。 person_id
列的資料型別是NUMBER
。 子句GENERATED BY DEFAULT AS IDENTITY
指示 Oracle生成一個新的整數,並在列中插入新行時將其用於列。
first_name
列的資料型別為VARCHAR2
,最大長度為50
。這意味著不能在first_name
列中插入長度大於50
的字元。 另外,NOT NULL
列約束防止first_name
列具有NULL
值。
last_name
列具有與first_name
列相同的特徵。
PRIMARY KEY
子句將person_id
列指定為主鍵列,用於標識個人表中的唯一行。
在本教學中,您已學習如何使用Oracle CREATE TABLE
語句來建立新表。