SQL與數據庫的維護
表格的建立
將SQL中的基本語法作了一番介紹以後,但大多是偏向於數據庫數據的查詢與過濾,但實際上,我們通過SQL命令所可以做的事還有很多,接下來要介紹的便是如何利用SQL的語法命令來建立一個數據庫中的表格。
CREATE TABLE語句
我們可以利用這個命令,來建立一個全新的表格,但前提則是:數據庫必須已經存在。
CREATE TABLE table(field1 type[(size)][index1][,field2 type[(size)][index2][,...]][,nultifIEldindex[,...]])
table
欲建立的新的表格名稱。
field1,fIEld2
在新表格中的新的字段名稱,到少要一個字段以上。
type
字段的數據類型。
size
字段的大小。
index1,index2
利用CONSTRAINT條件子句定義一個單一字段的索引名稱。
multifIEldindex
利用CONSTRAINT條件子句定義一個多重字段的索引名稱。
例如:
建立一個擁有職員姓名與部門字段的表格。
CREATE TABLE 職員表格 (姓名TEST,部門TEST,職員編號 INTEGER CONSTRAINT職員字段索引PRIMARY KEY)
在這一個范例中,我們建立了一個表格名稱為“職員表格”的表格,並且定義了該表格的主鍵值,以限制數據不能重復輸入。
表格索引的建立
CREATE INDEX語句
這個命令主要是對一個已存在的表格建立索引,其用法如下:
CREATE[UNIQUE]INDEX index ON table(field[ASC|DESC][,fIEld[ASC|DESC],...])
[WITH {PRIMARY|DISALLOWNULL|IGNORENULL}]
index
欲被建立的索引名稱。
table
欲建立索引的表格名稱。
fIEld
欲被建立的索引的字段名稱。並可通過DESC保留字,來決定索引的順序。
例如:
在職員表格中建立一個索引。
CREATE INDEX 新索引名稱
ON 職員表格(姓名部門);
表格的字段更新
CONSTRAINT條件子句
CONSTRAINT 的功能是類似索引(INDEX)的,雖然CONSTRAINT 也可以建立表格之間的關聯性。
單一字段索引:
CONSTRAINT name{PRIMARY KEY|UNIQUE|REFERENCES foreigntable[(foreignfield1,foreignfIEld2)]}
多字段索引:
CONSTRAINT name
{PRIMARY KEY(primary1[,primary2[,...]])
|UNIQUE(unique1[,unique2[,...]])
|FOREIGN KEY (ref1[,ref2[,...]])
|REFERENCES foreigntable[(foreignfield1[,foreignfIEld2[,...]])]}
name
要被建立的CONSTRAINT名稱。
primary1,primary2
被用來設計成主鍵值的字段名稱(可一個以上)。
unique1,unique2
被用來設計成唯一鍵值的字段名稱(可一個以上)。
foreign key
字段名稱,或是參考到別的表格中字段的字段名稱。
foreigntable
如前所述,被參考到的表格。
foreignfield1,foreignfIEld2
在參考到的表格當中,被ref1,ref2字段所指定的字段。如果被參考的字段是參考表格中的主鍵值,你也可以省略這個條件子句。
例如:
當我們要建立一個新的職員數據表格,表格包含姓名、部門名稱與生日三個字段,且由這三個字段建立一個唯一的索引時,可以使用下面這段SQL的語句。
CREATE TABLE 職員數據表格(姓名 TEST,部門名稱 TEST,生日 DATETIME,CONSTRAINT 職員數據表格限制 UNIQUE(姓名,部門名稱,生日));
以上是SQL中,與數據庫表格建立相關的命令,你可以利用這些命令,通過SQL的語句,將數據庫表格完整的建立出來,接下來的章節,將針對數據庫建立之後的維護與增刪所要使用的SQL語句作一介紹。