![第四章 數(shù)據(jù)庫完整性的設(shè)計與實現(xiàn).ppt.Convertor_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/17/9934da04-4842-47ce-a937-96efa5026695/9934da04-4842-47ce-a937-96efa50266951.gif)
![第四章 數(shù)據(jù)庫完整性的設(shè)計與實現(xiàn).ppt.Convertor_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/17/9934da04-4842-47ce-a937-96efa5026695/9934da04-4842-47ce-a937-96efa50266952.gif)
![第四章 數(shù)據(jù)庫完整性的設(shè)計與實現(xiàn).ppt.Convertor_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/17/9934da04-4842-47ce-a937-96efa5026695/9934da04-4842-47ce-a937-96efa50266953.gif)
![第四章 數(shù)據(jù)庫完整性的設(shè)計與實現(xiàn).ppt.Convertor_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/17/9934da04-4842-47ce-a937-96efa5026695/9934da04-4842-47ce-a937-96efa50266954.gif)
![第四章 數(shù)據(jù)庫完整性的設(shè)計與實現(xiàn).ppt.Convertor_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/17/9934da04-4842-47ce-a937-96efa5026695/9934da04-4842-47ce-a937-96efa50266955.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第四章數(shù)據(jù)完整性的設(shè)計與實現(xiàn)掌握數(shù)據(jù)完整性的分類掌握如何利用企業(yè)管理器和T-SQL語言創(chuàng)建主建約束掌握設(shè)置唯一性約束的方法掌握設(shè)置默認約束的方法掌握設(shè)置檢查約束的方法掌握設(shè)置外鍵約束的方法本章要點:本章教學內(nèi)容:4.1 概述4.2 實體完整性的設(shè)計與實現(xiàn)4.3 域完整性的設(shè)計與實現(xiàn)4.4 參照完整性的設(shè)計與實現(xiàn)4.1 概述為了保證在數(shù)據(jù)表中輸入可靠的和有效的數(shù)據(jù),可以對數(shù)據(jù)表中的數(shù)據(jù)設(shè)置完整性約束。數(shù)據(jù)完整性指數(shù)據(jù)的正確性與相容性。數(shù)據(jù)完整性包括:實體完整性域完整性參照完整性用戶自定義的完整性1.實體完整性用來保證在同一個數(shù)據(jù)表中不會存在完全相同的兩條記錄。一般通過主鍵約束、IDENTITY屬
2、性、唯一性約束實現(xiàn)。2.域完整性用來保證對數(shù)據(jù)表中的字段輸入有效的數(shù)值??梢酝ㄟ^定義字段的數(shù)據(jù)類型、設(shè)置字段非空、檢查約束、默認約束、規(guī)則實現(xiàn)。3.參照完整性通過創(chuàng)建數(shù)據(jù)表間數(shù)據(jù)的參照關(guān)系,來保證鍵值在兩個表中保持一致??梢酝ㄟ^外鍵約束實現(xiàn)。4.用戶自定義的完整性用來定義用戶需要的特殊的完整性要求。4.2 實體完整性的設(shè)計與實現(xiàn)是最重要的一種約束。能夠唯一地確定表中的每一條記錄。定義為主鍵的列不允許為空。image和text類型的列不能被指定為主鍵??梢詫?shù)據(jù)表中的一列或多列的組合定義為主鍵。添加、修改、刪除主鍵的方法:企業(yè)管理器使用T-SQL語言使用企業(yè)管理器“設(shè)計表”“設(shè)置主鍵”,可以設(shè)置
3、或取消主鍵。如對多個列設(shè)置主鍵,按住ctrl選擇列。對已設(shè)置好的主鍵,可以通過“屬性”“索引/鍵”來刪除主鍵(此種方法不能創(chuàng)建主鍵。使用T-SQL語言創(chuàng)建主鍵約束(創(chuàng)建/修改表時格式:CONSTRAINT constraint_namePRIMARY KEY CLUSTERED|NONCLUSTERED (column_name,n例4.1在學生庫中創(chuàng)建學生表(sno ,sname,ssex,sclass,sdept,并設(shè)置sno為主鍵。方法1:在建表的同時設(shè)置主鍵。方法2:在已建好表的中添加主鍵約束。方法1:create table 學生表(sno char(10,sname char(10
4、,ssex char(2,sclass char(2,sdept char(20,constraint PK_學生表primary key (snocreate table 學生表(sno char(10 primary key ,sname char(10,ssex char(2,sclass char(2,sdept char(20,create table 學生表(sno char(10 ,sname char(10,ssex char(2,sclass char(2,sdept char(20,primary key(sno,方法2:alter table 學生表add constra
5、int PK_學生表primary key (sno使用T-SQL語句刪除PRIMARY KEY約束格式:DROP CONSTRAINT constraint_name例4.2刪除選課表的主鍵(sno,cnoalter table 選課表drop constraint PK_選課表使用標識列保證數(shù)據(jù)表中不會出現(xiàn)完全一樣的兩條記錄。在數(shù)據(jù)表中創(chuàng)建一個標識列,其中的數(shù)據(jù)由系統(tǒng)自動生成,并且不會重復(fù)。使用方法:企業(yè)管理器使用T-SQL語言使用T-SQL語言格式:IDENTITY(種子,遞增量種子是初始值,遞增量是每次增加的數(shù)據(jù)說明:種子和遞增量必須同時使用,如果都不使用,則默認為(1,1。例4.3新
6、建表bianhao ,并將列bianhao設(shè)置成一個標識列,列中從2開始,每次增加3。create table bianhao(bianhao int identity(2,3,mingcheng char(4UNIQUE約束用于確保非主鍵列的取值的唯一性,保證實體完整性??梢灾付ㄒ粋€或多個列的組合值具有唯一性。每個UNIQUE約束要建立一個唯一索引。一個表可有多個UNIQUE約束??捎糜诙x允許空值的列。使用方法:企業(yè)管理器使用T-SQL語言企業(yè)管理器“屬性”“索引/鍵”,新建UNIQUE,列名選擇框中可以選擇兩列。使用T-SQL語言使用T-SQL語句創(chuàng)建唯一約束(創(chuàng)建/修改表時CONSTR
7、AINT constraint_nameUNIQUE CLUSTERED|NONCLUSTERED(列名使用T-SQL語句刪除UNIQUE約束DROP CONSTRAINT constraint_name4.3 域完整性的設(shè)計與實現(xiàn)域完整性用來保證在數(shù)據(jù)表中輸入有效的數(shù)據(jù)值??梢酝ㄟ^定義字段的數(shù)據(jù)類型、設(shè)置字段非空、檢查約束、默認約束和規(guī)則來實現(xiàn)。若將表中某列定義了DEFAULT約束后,用戶在插入新的數(shù)據(jù)行時,如未指定該列值,系統(tǒng)自動將該列值賦為默認值(默認值可以是空值。默認可以是常量、函數(shù)、空值。每個字段只能定義一個默認約束。不能為帶有IDENTITY屬性或數(shù)據(jù)類型為timestamp的字段
8、設(shè)置默認值。使用方法:企業(yè)管理器使用T-SQL語言企業(yè)管理器在輸入默認值時,對于數(shù)據(jù)值型數(shù)據(jù),可以直接輸入。對于字符型數(shù)據(jù)和日期型數(shù)據(jù),在輸入數(shù)據(jù)時兩端要加上單引號。使用T-SQL語言創(chuàng)建DEFAULT約束(創(chuàng)建/修改表時CONSTRAINT constraint_nameDEFAULT 默認約束值FOR 列名刪除DEFAULT約束DROP CONSTRAINT constraint_name目的:是對輸入的數(shù)據(jù)值進行檢查,滿足條件的數(shù)據(jù)可以保存在數(shù)據(jù)表中,對于不滿足條件的數(shù)據(jù)則拒絕接受。使用方法:企業(yè)管理器使用T-SQL語言使用T-SQL語言創(chuàng)建CHECK約束(在創(chuàng)建或修改表時;CONSTR
9、AINT constraint_nameCHECKNOT FOR REPLICATION(邏輯表達式刪除CHECK約束DROP CONSTRAINT constraint_name創(chuàng)建規(guī)則綁定規(guī)則刪除綁定刪除規(guī)則對象是對存儲在數(shù)據(jù)表中的數(shù)據(jù)值的規(guī)定和限制。功能與CHECK約束的功能相似,但規(guī)則是作為一個獨立的數(shù)據(jù)庫對象存儲在數(shù)據(jù)庫中的。只創(chuàng)建一次,綁定到多個列上。一個列,只能應(yīng)用一個規(guī)則。規(guī)則對象在功能上與CHECK約束是一樣的,在使用上有所區(qū)別:CHECK約束是和表的定義聯(lián)系在一起的,刪除表的同時CHECK約束也被刪除規(guī)則對象作為一種單獨存儲的數(shù)據(jù)庫對象,獨立于表之外(用CREATE RUL
10、E定義,刪除表時并不刪除規(guī)則對象(用DROP RULE刪除1. 創(chuàng)建規(guī)則使用企業(yè)管理器創(chuàng)建規(guī)則對象使用T-SQL語句CREATE RULE創(chuàng)建規(guī)則對象CREATE RULE 規(guī)則名AS 規(guī)則條件例:創(chuàng)建規(guī)則:設(shè)置學生的年齡在16歲和25歲之間。use 學生GOCREATE RULE nl AS 年齡>=16 and 年齡<=252.綁定規(guī)則格式:Execute sp_bindrule 規(guī)則名,綁定的列名3.取消綁定格式:Execute sp_unbindrule 綁定的列名4. 刪除規(guī)則使用企業(yè)管理器刪除規(guī)則對象使用T-SQL語句DROP RULE刪除規(guī)則對象DROP RULE 規(guī)則對象名例:刪除規(guī)則對象nl。use 學生goDROP DEFAULT nl4.4 參照完整性的設(shè)計與實現(xiàn)通過外鍵可以建立和強制主表和從表的參照完整性,即從表的外鍵要么為空,要么等于主表中已存在的主鍵值。可實現(xiàn)以下功能:不能在從表中插入主表中不存在的數(shù)據(jù)值。如果從表中有對應(yīng)的數(shù)據(jù)值,則不能修改主表中的對應(yīng)值,除非設(shè)置成級聯(lián)修改。如果從表中有對應(yīng)的數(shù)據(jù)值,則不能刪除主表中的對應(yīng)值,除非
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 歷史街區(qū)石材裝修配送協(xié)議
- 親子酒店裝修項目合同
- 校園裝修合同樣本-@-1
- 鎮(zhèn)江彩鋼瓦防腐施工方案
- 木材加工配送合同模板
- 化工原料特種運輸協(xié)議
- 2025年度網(wǎng)絡(luò)安全技術(shù)顧問聘用協(xié)議
- 國際旅游業(yè)務(wù)居間協(xié)議
- 魚塘合作管理方案
- 象山消防通風排煙施工方案
- 徐金桂行政法與行政訴訟法新講義
- 瀝青拌合設(shè)備結(jié)構(gòu)認知
- GB/T 13234-2018用能單位節(jié)能量計算方法
- (課件)肝性腦病
- 北師大版五年級上冊數(shù)學教學課件第5課時 人民幣兌換
- 工程回訪記錄單
- 住房公積金投訴申請書
- 高考物理二輪專題課件:“配速法”解決擺線問題
- 檢驗科生物安全風險評估報告
- 京頤得移動門診產(chǎn)品輸液
- 如何做一名合格的帶教老師PPT精選文檔
評論
0/150
提交評論