SQL Server 數據庫開發經典案例教程第3章SQL Server表管理-1_第1頁
SQL Server 數據庫開發經典案例教程第3章SQL Server表管理-1_第2頁
SQL Server 數據庫開發經典案例教程第3章SQL Server表管理-1_第3頁
SQL Server 數據庫開發經典案例教程第3章SQL Server表管理-1_第4頁
SQL Server 數據庫開發經典案例教程第3章SQL Server表管理-1_第5頁
已閱讀5頁,還剩12頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

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

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

USEBookShopDb--將當前數據庫設置為BookShopDbGOCREATETABLEUserInfo--創建用戶表(UserIDchar(3)PRIMARYKEY,--UerID為主鍵

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

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

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

13建表時使用約束USEBookShopDb--將當前數據庫設置為BookShopDbGOCREATETABLEBookInfo/*創建BookInfo數據表*/(BookIDchar(15)PRIMARYKEY,--書號,主鍵

BookNamevarchar(100)notnull,--書名

Authorvarchar(50)notnull,--作者

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

PublishDatedatetimenotnull,--出版日期

PublisherIDintnotnullREFERENCESPublisher(PublisherID),--外鍵

CategoryIDintnotnullREFERENCESCategory(CategoryID),--外鍵

Pricemoney,--價格

Contenttext--介紹)GO

14建表時使用約束USEBookShopDb--將當前數據庫設置為BookShopDbGODroptableuserInfoCREATETABLEUserInfo--創建用戶表(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‘廣東廣州’--地址,默認約束)GO

【示例3-6】重建UserInfo表,演示在建表時如何設定約束15建表時使用約束USEBookShopDb--將當前數據庫設置為BookShopDb,GOCREATETABLESalesMaster/*創建SalesMaster銷售主表*/(SalesMasterIDintidentityprimarykey,--銷售id,自動增長,主鍵

SalesDatedatetimenotnull,--銷售日期

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

【示例3-7】建立SalesMaster銷售主表,通過設定外鍵與UserInfo表之間建立聯系1

溫馨提示

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

最新文檔

評論

0/150

提交評論