我們可以限制哪一些資料可以存入表格中。這些限制可以在表格初創時藉由 CREATE TABLE 語句來指定,或是之後藉由 ALTER TABLE 語句來指定。

常見的限制有以下幾種:

以下對這幾種限制分別做個介紹:

NOT NULL

在沒有做出任何限制的情況下,一個欄位是允許有 NULL 值得。如果我們不允許一個欄位含有 NULL 值,我們就需要對那個欄位做出 NOT NULL 的指定。

舉例來說,在以下的語句中,

CREATE TABLE Customer
(SID integer NOT NULL,
Last_Name varchar (30) NOT NULL,
First_Name varchar(30));

"SID" 和 "Last_Name" 這兩個欄位是不允許有 NULL 值,而 "First_Name" 這個欄位是可以有 NULL 值得。

UNIQUE

UNIQUE 限制是保證一個欄位中的所有資料都是有不一樣的值。

舉例來說,在以下的語句中,

CREATE TABLE Customer
(SID integer UNIQUE,
Last_Name varchar (30),
First_Name varchar(30));

"SID" 欄位不能有重複值存在,而 "Last_Name" 及 "First_Name" 這兩個欄位則是允許有重複值存在。

請注意,一個被指定為主鑑的欄位也一定會含有 UNIQUE 的特性。相對來說,一個 UNIQUE 的欄位並不一定會是一個主鍵。

CHECK

CHECK 限制是保證一個欄位中的所有資料都是符合某些條件。

舉例來說,在以下的語句中,

CREATE TABLE Customer
(SID integer CHECK (SID > 0),
Last_Name varchar (30),
First_Name varchar(30));

"SID" 攔只能包含大於 0 的整數。

請注意,CHECK 限制目前尚未被執行於 MySQL 資料庫上。

主鍵 and 外來鍵 將於下兩頁中討論。

下一頁:SQL 主鍵



Copyright © 2017   1keydata.com   版權所有