




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
項目04數據表的創建和管理
——創建數據表和約束
CRY復習請說出下列命令的功能?CreatedatabaseDropdatabaseSp_helpdbAlterdatabaseaddfilemodifyfilemodifyname=新庫名removefile創建數據庫
修改數據庫刪除數據庫
顯示數據庫信息增加數據文件修改數據文件修改數據庫名刪除數據文件項目04數據表的創建和管理
——創建數據表和表約束
教學內容基礎知識:設計表創建數據表創建約束
項目04數據表的創建和管理
——創建數據表和表約束
學習目標認知目標:了解SQLServer2008的數據類型了解表約束的含義能力目標:掌握用命令方式創建數據表的方法(重點)掌握表約束的創建(重點、難點)一、設計表
1.
數據表的類型系統表用于存儲服務器的配置信息、數據表的定義信息的一組特殊表,稱為系統表。用戶表已分區表已分區表是將超大表按照某種業務規則分別存儲在不同的文件組中,以提高性能和方便管理。臨時表臨時表是一種因為暫時需要所產生的數據表,它存放在Tempdb數據庫中,當使用完臨時表且關閉連接后,系統會自動刪除臨時表。2.
創建數據表前應考慮的問題表中要存儲的數據類型(用來確定數據的取值范圍)表中需要的列數、每列的類型列是否可以為空是否需要在列上使用約束、默認值和規則需要使用什么樣的索引哪些列作為主鍵、哪些列作為外鍵哪些用戶擁有訪問該數據庫或表的權限
表約束一、設計表
3.
數據類型占1字節。存放邏輯值。只能取0、1、nullbit位類型存放固定長度的字符,n為1~4000存放可變長度的字符,n為1~4000存放最大長度為230-1的字符數據nchar(n)nvarchar(n)ntext
Unicode寬字符型占8字節占4字節占2字節占1字節bigintintsmallinttinyint
整數類型存放固定長度的字符,n為1~8000存放可變長度的字符,n為1~8000存放最大長度為231-1的字符數據char(n)varchar(n)text
字符型長度定義標識數據類型字符型:1個字符占1個字節。Unicode型:1個字符占2個字節3.
數據類型占8字節占4字節moneysmallmoney貨幣型占8字節。日期為從1/1/1753到12/31/9999占4字節。日期為從1/1/1900到6/6/2079datetimesmalldatetime
日期時間型定長二進制數據。n為1~8000變長二進制數據。n為1~8000存放最大長度為231-1的二進制數據binary(n)varbinary(n)image二進制型占8字節。存儲小數點位數不確定的數據占4字節。存儲小數點位數不確定的數據floatreal
浮點數類型占2~17字節。存儲小數點位數確定的數據占2~17字節。存儲小數點位數確定的數據decimal(p,s)numeric(p,s)精確數類型數據類型定義標識長度二、創建數據表
1.創建簡單的數據表命令格式createtable
表名
(列定義列約束[,……n])實例1:在xscjgl庫中,創建一個簡單的表xsqk。createtablexscjgl.dbo.xsqk
(學號
char(10),
姓名
varchar(10),
性別
bit
,
聯系電話
char(11))數據庫名,可省略所有者名,可省略表名方法2:use
xscjcreatetable
xsqk……2.
列屬性類型非空值屬性默認時,列的值為null,表示允許該列為空。如果值為notnull,表示不允許該列為空。默認值屬性標識屬性為標識屬性的列,其值由系統自動填充。實例2:在xscj庫中,創建“序號”標識屬性、“學號”非空屬性,“性別”有默認值1的表xsqk。createtablexsqk(序號intidentity,
學號char(10)notnull,
姓名
varchar(10),
性別
bitdefault1,
聯系電話
char(11))若xscj不是當前庫,應先輸入:use
xscj默認情況下為空值。3.
表約束含義約束定義了關于允許什么數據進入數據庫的原則。目的為了防止列出現非法數據,以保證數據中數據的正確性、一致性和有效性。類型主鍵(PRIMARYKEY)約束唯一(UNIQUE)約束外鍵(FOREIGNKEY)約束檢查(CHECK)約束說明:非空和默認值也可看成是約束。創建表約束的方法新建表時,在單列后創建約束在所有列之后,再創建約束表已存在,只能通過修改表,添加約束實現實體完整性實現參照完整性實現域完整性4.創建約束—(1)主鍵約束主鍵(PRIMARYKEY)約束的作用:不允許輸入重復的值不能取空值
當主鍵是由多個屬性組成時:某一屬性上的數據可以重復,但其組合必須是唯一的;每個屬性的值都不能為空。一個表上只能有一個主鍵。實例3:在學生情況表xsqk中,創建“學號”的主鍵約束,主鍵約束命名為pk_xsqk_xh。createtablexsqk(學號char(10)constraintpk_xsqk_xhprimarykey,
姓名varchar(10),
性別bit,
聯系電話char(11))4.創建約束—(2)唯一約束唯一(UNIQUE)約束的作用:保證列中不會出現重復的數據。主鍵約束與唯一約束的區別:一個表中只能定義一個主鍵約束,但可以定義多個唯一約束。定義了唯一約束的列數據可以為空值,而定義了主鍵約束的列數據不能為空值。實例4:在xsqk表中,創建“電話”的唯一約束,并且將約束命名為uq_xsqk_dh。createtablexsqk(學號char(10)constraintpk_xsqk_xhprimarykey,
姓名varchar(10),
性別bit,
聯系電話char(11)constraintuq_xsqk_dhunique(聯系電話))4.創建約束—(3)外鍵約束外鍵(FOREIGNKEY)約束的作用:用于建立和強制兩個表間的關聯,限制外鍵的取值必須是主表的主鍵值。實例5:在xscj庫中,按表4-4創建
xs_kc表。usexscjcreatetablexs_kc(學號
char(10)notnullreferences
xsqk(學號),
課程號char(3),
成績
tinyint,學分tinyint,primarykey(學號,課程號),foreignkey(課程號)references
kc(課程號))4.創建約束—(4)檢查約束檢查(CHECK)約束的作用:用來限制列上可以接受的數據值。使用邏輯表達式來判斷數據合法性。實例5:在xsqk表中,創建名為ck_xsqk_xb的檢查約束,該約束限制“性別”為0或1。createtablexsqk(學號char(10)constraintpk_xsqk_xhprimarykey,
姓名varchar(10),
性別bitconstraintck_xsqk_xbcheck(性別=0or性別=1),
聯系電話char(11)constraintuq_xsq
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- DB32/T 3761.18-2020新型冠狀病毒肺炎疫情防控技術規范第18部分:殯儀場所
- DB32/T 3714-2020三葉斑潛蠅測報技術規范
- DB32/T 3683-2019豬鏈球菌9型PCR檢測技術規程
- DB32/T 3579-2019農村產權交易農村小型公益性事業建設項目交易服務規范
- DB32/T 1321.5-2019危險化學品重大危險源安全監測預警系統建設規范第5部分:施工條件與工程驗收
- DB31/T 773-2013房車旅游服務區基本要求
- DB31/T 726-2013高溫消防排煙風機安全、節能運行管理標準
- DB31/T 478.12-2011主要工業產品用水定額及其計算方法第12部分:建材行業(商品混凝土)
- DB31/T 1298-2021既有多層住宅加裝電梯安全技術要求
- DB31/T 1265-2020電動汽車充換電設施公共數據采集與監測規范
- 2025年國際關系與外交專業考試試題及答案
- 2025年物流行業安全生產考試題庫(物流安全生產法規與事故處理)試題
- 完善土地清表協議書
- 初中語文同步課件 17.陋室銘
- 機械工程師資格證書考試真題與試題及答案
- 消防維保筆試題及答案
- 全球化背景下的跨境人力成本管控-洞察闡釋
- 第16課《學先鋒 做先鋒》(第二課時)教案教學設計 2025道德與法治一年級下冊
- 新冠基本培訓試題及答案
- 食管狹窄試題答案及解析
- 《商務演示技巧》課件
評論
0/150
提交評論