sqlserver數(shù)據(jù)完整性

sqlserver數(shù)據(jù)完整性

ID:34725983

大?。?24.18 KB

頁數(shù):10頁

時間:2019-03-10

sqlserver數(shù)據(jù)完整性_第1頁
sqlserver數(shù)據(jù)完整性_第2頁
sqlserver數(shù)據(jù)完整性_第3頁
sqlserver數(shù)據(jù)完整性_第4頁
sqlserver數(shù)據(jù)完整性_第5頁
資源描述:

《sqlserver數(shù)據(jù)完整性》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫

1、第8章數(shù)據(jù)完整性本章內(nèi)容8.1數(shù)據(jù)完整性概述8.2使用規(guī)則實(shí)施數(shù)據(jù)完整性8.3使用默認(rèn)值實(shí)施數(shù)據(jù)完整性8.4使用約束實(shí)施數(shù)據(jù)完整性8.1數(shù)據(jù)完整性概述n數(shù)據(jù)完整性防止數(shù)據(jù)庫中存在不符合語義規(guī)定的數(shù)據(jù)和防止因錯誤信息的輸入輸出造成無效操作或錯誤信息而提出的。¨數(shù)據(jù)完整性有4種類型:¨實(shí)體完整性(EntityIntegrity)、¨域完整性(DomainIntegrity)、¨參照完整性(ReferentialIntegrity)、¨用戶定義的完整性(User-definedIntegrity)。n在SQLServer中可以通過各種規(guī)則(Rule)、默認(rèn)(Default)、約束(Constrain

2、t)和觸發(fā)器(Trigger)等數(shù)據(jù)庫對象來保證數(shù)據(jù)的完整性。8.2使用規(guī)則實(shí)施數(shù)據(jù)完整性8.2.1創(chuàng)建規(guī)則8.2.2查看和修改規(guī)則8.2.3規(guī)則的綁定與松綁8.2.4刪除規(guī)則8.2.1創(chuàng)建規(guī)則n規(guī)則(Rule)就是數(shù)據(jù)庫中對存儲在表的列或用戶定義數(shù)據(jù)類型中的值的規(guī)定和限制。n規(guī)則是單獨(dú)存儲的獨(dú)立的數(shù)據(jù)庫對象。n規(guī)則和約束可以同時使用,表的列可以有一個規(guī)則及多個約束。規(guī)則與檢查約束在功能上相似,但在使用上有所區(qū)別?!z查約束是在CREATETABLE或ALTERTABLE語句中定義的,嵌入了被定義的表結(jié)構(gòu),即刪除表的時候檢查約束也就隨之被刪除。¨而規(guī)則需要用CREATERULE語句定義后才能使

3、用,是獨(dú)立于表之外的數(shù)據(jù)庫對象,刪除表并不能刪除規(guī)則,需要用DROPRULE語句才能刪除?!啾戎?,使用在CREATETABLE或ALTERTABLE語句中定義的檢查約束是更標(biāo)準(zhǔn)的限制列值的方法,但檢查約束不能直接作用于用戶定義數(shù)據(jù)類型。1.用企業(yè)管理器創(chuàng)建規(guī)則n在企業(yè)管理器中選擇數(shù)據(jù)庫對象“規(guī)則”,單擊右鍵從快捷菜單中選擇“新建規(guī)則”選項(xiàng),即會彈出如圖所示的“規(guī)則屬性”對話框。n輸入規(guī)則名稱和表達(dá)式之后,單擊“確定”按鈕,即完成規(guī)則的創(chuàng)建。2.用CREATERULE語句創(chuàng)建規(guī)則nCREATERULE語句用于在當(dāng)前數(shù)據(jù)庫中創(chuàng)建規(guī)則,其語法格式如下:CREATERULErule_nameASc

4、ondition_expression例8-1創(chuàng)建雇傭日期規(guī)則hire_date_rule。CREATERULEhire_date_ruleAS@hire_date>='1980-01-01'and@hire_date<=getdate()例8-2創(chuàng)建性別規(guī)則sex_rule。CREATERULEsex_ruleAS@sexin('男','女')例8-3創(chuàng)建評分規(guī)則grade_rule。CREATERULEgrade_ruleAS@valuebetween1and100例8-4創(chuàng)建字符規(guī)則my_character_rule。Createrulemy_character_ruleAs@value

5、like'[a-z]%[0-9]'8.2.2查看和修改規(guī)則1.用企業(yè)管理器查看和修改規(guī)則n在企業(yè)管理器的數(shù)據(jù)庫對象中選擇“規(guī)則”對象,即可從右邊的任務(wù)板中看到規(guī)則的大部分信息,包括規(guī)則的名稱、所有者、創(chuàng)建時間等。2.用系統(tǒng)存儲過程sp_helptext查看規(guī)則n使用sp_helptext系統(tǒng)存儲過程可以查看規(guī)則的文本信息。例8-5查看規(guī)則hire_date_rule的文本信息EXECUTEsp_helptexthire_date_rule運(yùn)行結(jié)果如圖所示8.2.3規(guī)則的綁定與松綁n需要將規(guī)則與數(shù)據(jù)庫表或用戶定義對象聯(lián)系起來,才能發(fā)生作用。聯(lián)系的方法稱為綁定,所謂綁定就是指定規(guī)則作用于哪個表的哪

6、一列或哪個用戶定義數(shù)據(jù)類型。n表的一列或一個用戶定義數(shù)據(jù)類型只能與一個規(guī)則相綁定,而一個規(guī)則可以綁定多對象,這正是規(guī)則的魅力所在。n解除規(guī)則與對象的綁定稱為松綁。1.用企業(yè)管理器管理規(guī)則的綁定和松綁n在企業(yè)管理器中,展開數(shù)據(jù)庫(Sales)文件夾,鼠標(biāo)單擊“規(guī)則”選項(xiàng),在右窗格中選擇要進(jìn)行綁定的規(guī)則(hire_date),單擊鼠標(biāo)右鍵,從快捷菜單中選擇“屬性”菜單項(xiàng),打開“規(guī)則屬性”對話框,如圖8-4所示。n圖中的“綁定UDT(U)”按鈕用于綁定規(guī)則到用戶定義的數(shù)據(jù)類型,“綁定列(B)”按鈕用于綁定規(guī)則到表的列。n在圖8-4中單擊“綁定UDT(U)”按鈕,則出現(xiàn)“將綁定規(guī)則到用戶定義的數(shù)據(jù)類型

7、”對話框,如圖8-5所示;n單擊“綁定列(B)”按鈕,則出現(xiàn)如圖8-6所示的“將綁定規(guī)則到列”對話框。n在“將規(guī)則綁定列”對話框的左邊“未綁定的列”列表框中選擇一列“添加”到右邊“綁定列”列表框中,就實(shí)現(xiàn)規(guī)則綁定了。n同樣,去掉“將規(guī)則綁定到用戶定義的數(shù)據(jù)類型”對話框的列表框的“綁定”列下的標(biāo)識或刪除“將規(guī)則綁定列”對話框的右邊“綁定列”列表框的列,就實(shí)現(xiàn)了規(guī)則的松綁操作。2.用系統(tǒng)存儲過程sp_

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。