sql建立与使用默认值、条件约束及规则

sql建立与使用默认值、条件约束及规则

ID:18116177

大小:48.50 KB

页数:18页

时间:2018-09-14

sql建立与使用默认值、条件约束及规则_第1页
sql建立与使用默认值、条件约束及规则_第2页
sql建立与使用默认值、条件约束及规则_第3页
sql建立与使用默认值、条件约束及规则_第4页
sql建立与使用默认值、条件约束及规则_第5页
资源描述:

《sql建立与使用默认值、条件约束及规则》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、SQL建立与使用默认值、条件约束及规则SQL建立与使用默认值、条件约束及规则1、默认值使用CREATETABLE建立默认值USEMyDBCREATETABLEMyTABLE(columnAchar(15)NULLDEFAULT'n/a',columnBintNULLDEFAULT0)GO 使用ALTERTABLE命令可以修改数据行中的默认值定义或新增一数据行。若要更改已经定义的默认值数据行,首先必须删除已经有的默认值,然后新增一个新的默认值如果用CREATETABLE命令建立未命名的默认值,SQLServer将自动替默认值命名。要知道SQLServer为默认值分配了什么名字,

2、以便可以使用T-SQL删除它,您可执行sp_help程序如下:USEMyDBGOsp_helpMyTableGO假设我们要把columnA的默认值从n/a改成notapplicable。记住首先必须删除存在的默认值然后再新增一个新的。下述命令即可删除默认值:ALTERTABLEMyTableDROPCONSTRAINTDF_MyTable_columnA_2B3F6F97现在您可以使用下述命令新增一个默认值,这次由我们自己命名:ALTERTABLEMyTableADDCONSTRAINTDF_MyTable_columnADEFAULT"Notapplicable"FORco

3、lumnAGO当变更已存在的默认值时,所有现存的列将保持原始的默认值。只有新插入的列会使用新的默认值。用ALTERTABLE命令为已有的数据表新增完整的新数据行,如下所示:ALTERTABLEMyTableADDcolumnCtinyintNOTNULLDEFAULT13GO用默认值而不是NULL插入已存在的列,则应该使用DEFAULT中的WITHVALUES选项,如下所示:ALTERTABLEMyTableADDcolumnCtinyintNULLDEFAULT13WITHVALUESGOWITHVALUES命令会强行使MyTable中所有现存列的新数据行接受默认值13来代

4、替原来的NULL值。CREATEDEFAULT和sp_bindefault 如果要在不同的数据表中使用相同的默认值数据行,此方法则较为有效。使用CREATEDEFAULT的语法如下:CREATEDEFAULTdefault_nameASconstant_expressionsp_bindefault的语法如下:sp_bindefault'default_name'table.column

5、user_defined_datatype[",futureonly"]示例:USEMyDBGOCREATEDEFAULTDF_not_applicableAS'n/a'GOsp_binde

6、fault"DF_not_applicable","MyTable.columnA"GO如果没有指定futureonly,SQLServer将默认值系结到所有已经存在的和新建立的使用者自订类型的数据行上例如,让我们建立一个名称为area_code的使用者自订型别和名称为DF_area_code的默认值对象,其值为786;然后系结默认值到该使用者自订数据型别上。因为这是新的使用者自订数据型别,因此目前还没有数据行,也就不需要futureonly选项sp_addtype"area_code","char(3)","NOTNULL"GOCREATEDEFAULTDF_area_co

7、deAS786GOsp_bindefault"DF_area_code","area_code","futureonly"GO要检视预设对象的数据型别,可使用sp_help系统程序sp_unbindefault 例如要解除MyTable中与columnA数据行系结的默认值:sp_unbindefault如下:sp_unbindefault"MyTable.columnA"GO从使用者自订的数据型别area_code中解除系结默认值:sp_unbindefault"area_code"GO当执行以上程序,所有已经由使用者自订数据型别area_code的默认值属性将会同时移除。同

8、样的,只要在不删除预设对象的情形下,您可以随意地解除或系结某个数据行的预设。使用DROPDEFAULT陈述式,可以完全删除一个预设对象如下所示:DROPDEFAULTDF_area_codeGO一旦删除了预设对象,就无法再取回。如果要再次使用,必须使用CREATEDEFAULT重新建立对象。 在默认值储存格中输入字符串,必须放在单引号中,否则储存时会显示SQLServer的错误讯息。2条件约束 条件约束用于自动维护数据的完整性。举个例子,您可以将一个整数数据行条件约束在1到100的范围内,那么超出此范围

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。