數(shù)據(jù)完整性之默認(rèn)值約束及默認(rèn)值對(duì)象.ppt_第1頁(yè)
數(shù)據(jù)完整性之默認(rèn)值約束及默認(rèn)值對(duì)象.ppt_第2頁(yè)
數(shù)據(jù)完整性之默認(rèn)值約束及默認(rèn)值對(duì)象.ppt_第3頁(yè)
數(shù)據(jù)完整性之默認(rèn)值約束及默認(rèn)值對(duì)象.ppt_第4頁(yè)
數(shù)據(jù)完整性之默認(rèn)值約束及默認(rèn)值對(duì)象.ppt_第5頁(yè)
已閱讀5頁(yè),還剩11頁(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)介

數(shù)據(jù)完整性 之域完整性的實(shí)現(xiàn)(2),域完整性的實(shí)現(xiàn),實(shí)現(xiàn)域完整性通過(guò) CHECK約束 規(guī)則 默認(rèn)值約束 默認(rèn)值對(duì)象,默認(rèn)值約束及默認(rèn)值對(duì)象,可以為字段定義默認(rèn)值,方便用戶的使用。通過(guò)兩種方式實(shí)現(xiàn): (1)在創(chuàng)建表或修改表時(shí),定義默認(rèn)值約束。 (2)先定義默認(rèn)值對(duì)象,然后將該對(duì)象綁定到表的相應(yīng)字段。,默認(rèn)值約束,1默認(rèn)值約束的定義及刪除 (1)定義 方法一:通過(guò)企業(yè)管理器實(shí)現(xiàn) 方法二:SQL語(yǔ)句實(shí)現(xiàn)創(chuàng)建表時(shí)定義一個(gè)字段的默認(rèn)值約束 CREATE TABLE table_name /*指定表名 (column_name datatype NOT NULL | NULL DEFAULT constraint_expression /*默認(rèn)值約束 ,n) 說(shuō)明: constraint_expression表達(dá)式為默認(rèn)值約束表達(dá)式,此表達(dá)式只能是常量、系統(tǒng)函數(shù)或NULL。對(duì)于timestamp或帶IDENTITY屬性的字段不能定義默認(rèn)值約束。 課外閱讀:,【例】在創(chuàng)建表時(shí)定義一個(gè)字段的默認(rèn)值約束。,在定義默認(rèn)值約束的同時(shí)指定約束名。 USE XS CREATE TABLE XSDA1 ( 學(xué)號(hào) char(6) NOT NULL, 姓名 char(6) NOT NULL, 專業(yè)名 char(10) NULL, 性別 bit NOT NULL CONSTRAINT sexdflt DEFAULT 1 ) GO 課外閱讀:,默認(rèn)值約束,方法三:SQL語(yǔ)句實(shí)現(xiàn)修改表時(shí)定義一個(gè)字段的默認(rèn)值約束 【例】在修改表時(shí)定義一個(gè)新字段政治面貌并為其添加默認(rèn)值約束團(tuán)員。 USE XS ALTER TABLE XSDA1 ADD 政治面貌 char(4) NOT NULL CONSTRAINT zzmmdflt3 DEFAULT 團(tuán)員 WITH VALUES GO 說(shuō)明:如果添加的新列允許空值,若使用了WITH VALUES,則將為表中各現(xiàn)有行添加的新字段提供默認(rèn)值;如果沒(méi)有使用WITH VALUES,那么每一行的新列中都將為NULL值。如果添加的新列不允許空值,則不論是否有WITH VALUES選項(xiàng),那么表中各現(xiàn)有行添加的新字段都將取上述默認(rèn)值。,默認(rèn)值約束,【例5-12】在修改表時(shí)為學(xué)分字段添加默認(rèn)值約束值為6。 USE XS ALTER TABLE KCXX ADD CONSTRAINT XF_DEFA DEFAULT(6) FOR 學(xué)分 GO (2)默認(rèn)值約束的刪除 【例5-12】刪除上例定義的默認(rèn)值約束。 USE XS ALTER TABLE XSDA DROP CONSTRAINT XF_DEFA GO(課外閱讀:),默認(rèn)值對(duì)象,2默認(rèn)值對(duì)象的定義、使用及刪除 (1)使用企業(yè)管理器定義和綁定DEFAULT默認(rèn)值對(duì)象 使用企業(yè)管理器定義DEFAULT默認(rèn)值對(duì)象 以XS數(shù)據(jù)庫(kù)為例,對(duì)于XSDA表中的民族字段,定義其默認(rèn)值為“漢”。 使用企業(yè)管理器綁定DEFAULT默認(rèn)值對(duì)象 默認(rèn)值對(duì)象定義以后,要讓它生效,必須綁定到列或用戶定義數(shù)據(jù)類型。 方法1:右鍵單擊默認(rèn)值對(duì)象-【屬性】, 【綁定UDT】,表示綁定到用戶定義數(shù)據(jù)類型; 【綁定列】,表示綁定到列。 方法2:表設(shè)計(jì)器下拉列表,默認(rèn)值對(duì)象,(2)使用T-SQL語(yǔ)句定義和綁定DEFAULT默認(rèn)值對(duì)象 使用T-SQL語(yǔ)句定義DEFAULT默認(rèn)值對(duì)象 CREATE DEFAULT default_name AS constant_expression 說(shuō)明:默認(rèn)值對(duì)象名必須符合標(biāo)識(shí)符規(guī)則。約束表達(dá)式constant_expression只能是常量表達(dá)式。默認(rèn)值對(duì)象必須與列數(shù)據(jù)類型兼容。 課外閱讀:,默認(rèn)值對(duì)象, 使用系統(tǒng)存儲(chǔ)過(guò)程綁定默認(rèn)值對(duì)象 sp_bindefault defname=default, objname=object_name 說(shuō)明: default指定默認(rèn)值對(duì)象名; object_name指定準(zhǔn)備綁定默認(rèn)值對(duì)象的表的列名(格式為:表名.字段名)或用戶定義的數(shù)據(jù)類型名。不能將默認(rèn)值對(duì)象綁定到timestamp數(shù)據(jù)類型的列、帶IDENTITY屬性的列或者已經(jīng)有DEFAULT約束的列; 課外閱讀:,【例】對(duì)于前面所述的XSDA表中的民族字段可用如下程序?qū)崿F(xiàn)默認(rèn)值設(shè)置為“漢”。 USE XS GO CREATE DEFAULT mz_default AS 漢 GO EXEC sp_bindefault mz_default1,XSDA.民族 GO 【例】在XS數(shù)據(jù)庫(kù)中創(chuàng)建名為rxdate的默認(rèn)值對(duì)象(取值為當(dāng)前系統(tǒng)日期),然后將其綁定到XSXX表(例5-1中創(chuàng)建)的入學(xué)日期列。 USE XS GO CREATE DEFAULT rxdate AS getdate() GO EXEC sp_bindefault rxdate,XSXX.入學(xué)日期 GO,【例】對(duì)于前面所述的XSDA表中的民族字段可用如下程序?qū)崿F(xiàn)默認(rèn)值設(shè)置為“漢”。 USE XS GO CREATE DEFAULT mz_default AS 漢 GO EXEC sp_bindefault mz_default1,XSDA.民族 GO 【例】在XS數(shù)據(jù)庫(kù)中創(chuàng)建名為rxdate的默認(rèn)值對(duì)象(取值為當(dāng)前系統(tǒng)日期),然后將其綁定到XSXX表(例5-1中創(chuàng)建)的入學(xué)日期列。 USE XS GO CREATE DEFAULT rxdate AS getdate() GO EXEC sp_bindefault rxdate,XSXX.入學(xué)日期 GO,默認(rèn)值對(duì)象,(3)默認(rèn)值對(duì)象的刪除 應(yīng)解除默認(rèn)值對(duì)象的綁定關(guān)系,然后才能刪除該默認(rèn)值對(duì)象。 使用sp_unbindefault解除綁定關(guān)系 sp_unbindefault objname=object_name 說(shuō)明:參數(shù)object_name為要解除默認(rèn)值對(duì)象綁定關(guān)系的字段名(格式為:表名.字段名)或用戶定義類型名。 刪除默認(rèn)值對(duì)象 DROP DEFAULT default,n 說(shuō)明:參數(shù)default為現(xiàn)有默認(rèn)值對(duì)象名;參數(shù)n表示可以指定多個(gè)默認(rèn)值對(duì)象同時(shí)刪除。,【例】解除默認(rèn)值對(duì)象xb_default與用戶定義數(shù)據(jù)類型sex的綁定關(guān)系,然后刪除名為xb_default的默認(rèn)值對(duì)象。 USE XS IF EXISTS(SELECT name FROM sysobjects WHERE name=xb_default AND type=D) BEGIN EXEC sp_unbindefault sex DROP DEFAULT xb_defaul

溫馨提示

  • 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)論