SQL Server 數(shù)據(jù)庫(kù)開(kāi)發(fā)經(jīng)典案例教程第3章SQL Server表管理-1_第1頁(yè)
SQL Server 數(shù)據(jù)庫(kù)開(kāi)發(fā)經(jīng)典案例教程第3章SQL Server表管理-1_第2頁(yè)
SQL Server 數(shù)據(jù)庫(kù)開(kāi)發(fā)經(jīng)典案例教程第3章SQL Server表管理-1_第3頁(yè)
SQL Server 數(shù)據(jù)庫(kù)開(kāi)發(fā)經(jīng)典案例教程第3章SQL Server表管理-1_第4頁(yè)
SQL Server 數(shù)據(jù)庫(kù)開(kāi)發(fā)經(jīng)典案例教程第3章SQL Server表管理-1_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

0第3章-1SQLServer表管理1本章目標(biāo)掌握數(shù)據(jù)表、數(shù)據(jù)完整性、主鍵和外鍵的基本概念掌握SQLServer數(shù)據(jù)類型創(chuàng)建表的時(shí)候要設(shè)定字段名,選取合適的數(shù)據(jù)類型和約束如果要保證某個(gè)列唯一并且自動(dòng)增長(zhǎng),設(shè)定IDENTITY約束主鍵是保證實(shí)體完整性的約束,建議每個(gè)表有一個(gè)主鍵外鍵保證表之間的引用完整性,從表中的數(shù)據(jù)依賴于主表在建表時(shí)設(shè)置主鍵約束外鍵約束檢查約束默認(rèn)約束空值約束標(biāo)識(shí)列2數(shù)據(jù)表基本概念表書(shū)數(shù)據(jù)庫(kù)中最重要的數(shù)據(jù)對(duì)象,數(shù)據(jù)存儲(chǔ)在表里數(shù)據(jù)表由行和列組成3數(shù)據(jù)完整性數(shù)據(jù)完整性實(shí)體完整性將行定義為特定表的唯一實(shí)體。即表中的每一行數(shù)據(jù)都代表一個(gè)不同的實(shí)體,不能存在相同的數(shù)據(jù)行域完整性域完整性指特定列項(xiàng)的有效性引用完整性用來(lái)限制兩個(gè)有關(guān)聯(lián)關(guān)系的表之間的數(shù)據(jù)4主鍵和外鍵主鍵表通常具有包含唯一標(biāo)識(shí)表中每一行值的一個(gè)或一多個(gè)字段特點(diǎn)一個(gè)表只能有一個(gè)主鍵主鍵中的列不能為空如果一個(gè)表的主鍵由多個(gè)列組成,該主鍵也叫“組合主鍵”外鍵外鍵約束保證了數(shù)據(jù)庫(kù)中兩個(gè)表中數(shù)據(jù)的引用完整性將一個(gè)表的一列(或列組合)定義為引用其他表的主鍵,則引用表中的這個(gè)列(或列組合)就稱為外鍵5主鍵和外鍵主鍵外鍵6數(shù)據(jù)表建立數(shù)據(jù)表,建表時(shí)需考慮:字段的名稱數(shù)據(jù)類型是否允許為Null是否自動(dòng)增長(zhǎng)等7數(shù)據(jù)類型Sqlserver有以下數(shù)據(jù)類型數(shù)據(jù)類型類別具體類型精確數(shù)據(jù)bigint,decimal,int,numeric,smallint,money,tinyint,smallmoney,bit

近似數(shù)字float,real字符串char,varchar,textUnicode字符串nchar,nvarchar,ntext二進(jìn)制字符串binary,image,varbinary日期類型datetime,smalldatetime其他類型Uniqueidentifier,xml,table等8創(chuàng)建表創(chuàng)建表的實(shí)質(zhì)就是定義表結(jié)構(gòu)以及約束等屬性。SQLServer2008種提供了兩種方式創(chuàng)建表。一種是通過(guò)SQLServerManagementStudio(SSMS)一種是通過(guò)T-SQL代碼。本書(shū)重點(diǎn)介紹使用T-SQL代碼來(lái)創(chuàng)建表9T-SQL代碼建表通過(guò)執(zhí)行Transact-SQL的CREATETABLE語(yǔ)句可以創(chuàng)建表,建表的語(yǔ)法如下:例如:CREATETABLEmytable(col1char(10)primarykey,col2intnotnull)CREATETABLE表名(

字段1數(shù)據(jù)類型列的特征,字段2數(shù)據(jù)類型列的特征,。。。)10建表【示例3-1】:建立用戶表UserInfo,建表時(shí)設(shè)置主鍵并設(shè)置相應(yīng)字段的notnull(非空)屬性

USEBookShopDb--將當(dāng)前數(shù)據(jù)庫(kù)設(shè)置為BookShopDbGOCREATETABLEUserInfo--創(chuàng)建用戶表(UserIDchar(3)PRIMARYKEY,--UerID為主鍵

UserNamechar(10)notnull,Sexchar(2)notnull,Ageint,hiredatedatetime,telechar(15),Addrvarchar(100))GO

11建表表的IDENTITY屬性標(biāo)識(shí)列字段的數(shù)據(jù)類型只能是decimal,int,numeric,smallint,bitint,tinyint每個(gè)表最多有一列具有IDENTITY屬性,且該列不能為空、不允許有默認(rèn)值IDENTITY屬性的語(yǔ)法:IDENTITY[(seed,increment)],seed稱為種子,表示裝載到表中第一行使用的值;如IDENTITY(1,1),表示該列值從1開(kāi)始,每條記錄增1.IDENTITY屬性與CREATETABLE和ALTERTABLE一起使用12建表時(shí)使用標(biāo)識(shí)列【示例3-2】建立圖書(shū)類別表CategoryUSEBookShopDb--將當(dāng)前數(shù)據(jù)庫(kù)設(shè)置為BookShopDbGOCREATETABLEPublisher(PublisherIDintIDENTITY(1,1)PRIMARYKEY,--自動(dòng)編號(hào)(標(biāo)識(shí)列)

PublisherNamevarchar(50)notnull--出版社名稱,必須輸入)GO

13建表時(shí)使用約束USEBookShopDb--將當(dāng)前數(shù)據(jù)庫(kù)設(shè)置為BookShopDbGOCREATETABLEBookInfo/*創(chuàng)建BookInfo數(shù)據(jù)表*/(BookIDchar(15)PRIMARYKEY,--書(shū)號(hào),主鍵

BookNamevarchar(100)notnull,--書(shū)名

Authorvarchar(50)notnull,--作者

ISBNchar(13),--ISBN,null可以省略

PublishDatedatetimenotnull,--出版日期

PublisherIDintnotnullREFERENCESPublisher(PublisherID),--外鍵

CategoryIDintnotnullREFERENCESCategory(CategoryID),--外鍵

Pricemoney,--價(jià)格

Contenttext--介紹)GO

14建表時(shí)使用約束USEBookShopDb--將當(dāng)前數(shù)據(jù)庫(kù)設(shè)置為BookShopDbGODroptableuserInfoCREATETABLEUserInfo--創(chuàng)建用戶表(UserIDchar(3)PRIMARYKEYCHECK(UserIDLIKE'[0-9][0-9][0-9]'),UserNamechar(10)UNIQUE,--用戶名,唯一約束

Sexchar(2)CHECK(Sexin('男','女')),--性別,Check約束

Ageintnotnull,--年齡,非空約束

hiredatedatetime,--入職日期

telechar(15),--電話

Addrvarchar(100)DEFAULT‘廣東廣州’--地址,默認(rèn)約束)GO

【示例3-6】重建UserInfo表,演示在建表時(shí)如何設(shè)定約束15建表時(shí)使用約束USEBookShopDb--將當(dāng)前數(shù)據(jù)庫(kù)設(shè)置為BookShopDb,GOCREATETABLESalesMaster/*創(chuàng)建SalesMaster銷售主表*/(SalesMasterIDintidentityprimarykey,--銷售id,自動(dòng)增長(zhǎng),主鍵

SalesDatedatetimenotnull,--銷售日期

UserIDchar(3)notnull),CONSTRAINTfk_UserIDFOREIGNKEY(UserID)REFERENCESUserInfo(UserID)ONDELETECASCADE

【示例3-7】建立SalesMaster銷售主表,通過(guò)設(shè)定外鍵與UserInfo表之間建立聯(lián)系1

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論