資源描述:
《sql語(yǔ)句創(chuàng)建表》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。
1、1.定義基本表語(yǔ)句????語(yǔ)法:????USE?數(shù)據(jù)庫(kù)名CREATETABLE表名(列名類型(大小)DEFAULT'默認(rèn)值',??????????????????????????????????????????????????????????列名類型(大小)DEFAULT'默認(rèn)值',????????????????????????????????????????????????????????????列名類型(大小)DEFAULT'默認(rèn)值',?????????????????????????????????????????????????
2、?????????......);????注:綠色部份是可以省略的。????例:CREATETABLES(SNOchar(2),SNAMEchar(8),AGEdecimal(2),SEXchar(2)DEFAULT'男',DEPTchar(2));?創(chuàng)建了一個(gè)五列的表,其中第四列的默認(rèn)值為‘男’。2.定義完整性約束????語(yǔ)法:?USE?數(shù)據(jù)庫(kù)名CREATETABLE表名(列名類型(大小)DEFAULT'默認(rèn)值'CONSTRAINT約束名約束定義,?列名類型(大小)DEFAULT'默認(rèn)值'CONSTRAINT約束名約束定義,???列名類
3、型(大小)DEFAULT'默認(rèn)值'CONSTRAINT約束名約束定義,?......);?注:(1)綠色部份是可以省略的。??????????(2)一個(gè)列是可以有多個(gè)約束的。????約束定義:????(1)NULL
4、NOTNULL??用于定義列的空值約束。(定義列)??(下面的藍(lán)色部份是單選其中之一)????????????語(yǔ)法:CONSTRAINT約束名NULL
5、NOTNULL?????????????注意:????????????????????a.NOTNULL約束強(qiáng)制列不接受NULL值。????????????????????b.
6、NOTNULL約束強(qiáng)制字段始終包含值。這意味著,如果不向字段添加值,就無(wú)法插入新紀(jì)錄或者更新記錄。?????????例:下面的SQL語(yǔ)句強(qiáng)制"Id_P"列和"LastName"列不接受NULL值:?????????????????????CREATETABLEPersons?????????????????????(?????????????????????Id_PintNOTNULL,?????????????????????LastNamevarchar(255)NOTNULL,?????????????????????FirstNa
7、mevarchar(255),?????????????????????Addressvarchar(255),?????????????????????Cityvarchar(255)?????????????????????)????(2)UNIQUE??約束唯一標(biāo)識(shí)數(shù)據(jù)庫(kù)表中的每條記錄。(即可以定義列也可能定義表)????????????語(yǔ)法:CONSTRAINT約束名UNIQUE(列名,列名,......);????????????說(shuō)明:用于指定基本表在某一個(gè)列或多個(gè)列的組合上取值必須唯一。定義了UNIQUE約束的那些列稱為唯一鍵
8、。如果為基本表的革一列或多個(gè)列的組合指定了UNIQUE約束,則系統(tǒng)將為這些列建立唯一索引,從而保證在表中的任意兩行記錄在指定的列或列組合上不能取同樣的值。????????????注意:????????????????????a.UNIQUE約束唯一標(biāo)識(shí)數(shù)據(jù)庫(kù)表中的每條記錄。????????????????????b.UNIQUE和?PRIMARYKEY約束均為列或列集合提供了唯一性的保證。????????????????????c.PRIMARYKEY擁有自動(dòng)定義的UNIQUE約束。????????????????????d.請(qǐng)注意,每個(gè)
9、表可以有多個(gè)UNIQUE約束,但是每個(gè)表只能有一個(gè)PRIMARYKEY約束。??????例:下面的SQL在"Persons"表創(chuàng)建時(shí)在"Id_P"列創(chuàng)建UNIQUE約束:????????????????????????????SQLServer/?Oracle?/MS?access:?????????????????CREATETABLEPersons?????????????????(?????????????????Id_PintNOTNULLUNIQUE,?????????????????LastNamevarchar(255)NO
10、TNULL,?????????????????FirstNamevarchar(255),?????????????????Addressvarchar(255),??????????????