管理数据库其他对象(ppt132)-经营管理(编辑修改稿)内容摘要:

无 ” , 如图 616所示。 规则和默认值将在 3节和 4节中介绍。 (7) 单击 “ 确定 ” 按钮 , 关闭对话框。 管理数据库其他对象 来自 中国最大的资料库下载 图 615 用户自定义数据类型属性对话框 管理数据库其他对象 来自 中国最大的资料库下载 图 616 创建用户自定义数据类型 “ 号码 ” 管理数据库其他对象 来自 中国最大的资料库下载 查看用户自定义数据类型 要查看用户自定义数据类型 , 可以使用 sp_help系统存储过程来查看用户自定义数据类型的信息。 包括它基于的系统数据类型 , 它的长度 、 精度 , 是否允许空值 , 以及在这一数据类型上捆绑的规则和默认值等。 例如 , 使用查询分析器查看用户自定义数据类型“ 号码 , 如图 617所示。 管理数据库其他对象 来自 中国最大的资料库下载 图 617 查看用户自定义数据类型 “ 号码 ” 管理数据库其他对象 来自 中国最大的资料库下载 删除用户自定义数据类型 可以使用 TSQL语句和企业管理器来删除用户自定义数据类型。 1. 使用 TSQL语句 使用系统存储过程 sp_droptype来删除用户自定义数据类型。 语法为 sp_droptype type_name 其中 , type_name为要删除的用户自定义数据类型名。 注意:正在被表或数据库使用的用户自定义数据类型不能被删除。 管理数据库其他对象 来自 中国最大的资料库下载 例如 , 将 “ 学生信息 ” 表 “ 电话 ” 列的数据类型改为用户自定义数据类型 “ 号码 ” , 代码如下: ALTER TABLE 学生信息 ALTER COLUMN 电话 号码 如果此时使用系统存储过程 sp_droptype删除用户自定义数据类型 “ 号码 ” , SQL Server会返回错误信息 ,如图 618所示。 管理数据库其他对象 来自 中国最大的资料库下载 图 618 错误信息 管理数据库其他对象 来自 中国最大的资料库下载 2. 使用企业管理器 使用企业管理器删除用户自定义的数据类型的操作步骤如下: (1) 在企业管理器中展开用户自定义数据类型所在的数据库 , 选中 “ 用户自定义数据类型 ” , 右边的窗口中将显示数据库中所有用户自定义数据类型。 用鼠标右键单击要删除的用户自定义数据类型 , 在弹出的快捷菜单中选择“ 删除 ” 命令。 (2) 打开如图 619所示的删除对话框。 (3) 单击如图 619所示对话框中的“全部除去”按钮。 如果该数据类型正在被使用,则会显示如图 620所示的警告框,并撤销删除操作;否则,数据类型被删除。 管理数据库其他对象 来自 中国最大的资料库下载 图 619 删除对话框 管理数据库其他对象 来自 中国最大的资料库下载 图 620 警告框 管理数据库其他对象 来自 中国最大的资料库下载 3 使用默认值 创建默认值 1. 使用 TSQL语句创建默认值 语句格式如下: CREATE DEFAULT default_name AS default_description 其中: default_name为默认值对象的名称。 管理数据库其他对象 来自 中国最大的资料库下载 default_description是任意数据类型的常量、内置函数或数学表达式。 字符和日期常量用单引号 (‘)引起来;货币、整数和浮点常量不需要使用引号。 二进制数据必须以 0x开头,货币数据必须以美元符号 ($)开头。 默认值必须与列数据类型兼容。 下面是一个使用 CREATE DEFAULT创建默认值对象的例子。 USE 学生图书借阅管理 Go CREATE DEFAULT 入馆时间 As getdate() 上面的语句在 “ 学生图书借阅管理 数据库中创建了一个“ 入馆时间 ” 的默认值 , 在查询分析器中执行结果如下: 命令已成功完成。 管理数据库其他对象 来自 中国最大的资料库下载 2. 使用企业管理器创建默认值 (1) 在企业管理器中展开对应数据库的 “ 默认值 ” ,用鼠标右键单击 “ 默认值 ” , 在弹出的快捷菜单中选择 “ 新建默认 ” 命令 , 将弹出如图 621所示的对话框。 在对应的文本框中输入相应的默认值名称和默认值。 (2)单击 “ 确定 ” 按钮即完成了默认值的创建。 管理数据库其他对象 来自 中国最大的资料库下载 图 621 默认属性对话框 管理数据库其他对象 来自 中国最大的资料库下载 捆绑默认值 将默认值捆绑到列或用户自定义数据类型上 , 它就可以为列和用户自定义数据类型提供默认值。 默认值和表列的绑定可以通过 sp_bindefault系统存储过程和企业管理器来实现。 1. 使用系统存储过程 sp_bindefault语法如下: sp_bindefault [ @defname = ] 39。 default39。 , [ @objname = ] 39。 object_name39。 [ , [ @futureonly = ] 39。 futureonly_flag39。 ] 管理数据库其他对象 来自 中国最大的资料库下载 其中 : default为默认值对象的名称。 object_name为默认值对象要捆绑到的列名或用户定义的数据类型名。 futureonly_flag 仅在将默认值绑定到用户定义的数据类型时才使用。 futureonly_flag的数据类型为 varchar(15),默认值为 NULL。 将此参数设置为 futureonly时,它会防止现有的属于此数据类型的列继承新的默认值。 当将默认值绑定到列时不会使用此参数。 如果 futureonly_flag为 NULL,那么新默认值将绑定到用户定义数据类型的任一列,条件是此数据类型当前无默认值或者使用用户定义数据类型的现有默认值。 管理数据库其他对象 来自 中国最大的资料库下载 1) 将默认值捆绑到数据库表中的列上 例如 , 将前面创建的默认值捆绑到 “ 学生图书借阅管理 ” 数据库的 “ 图书信息 ” 表的 “ 入馆时间 ” 列上 ,应使用如下代码: USE 学生图书借阅管理 EXEC sp_bindefault 39。 入馆时间 39。 , 39。 图书信息 .入馆时间 39。 在查询分析器中执行上述语句 , 结果如下: 已将默认值绑定到列 该结果表示默认值成功地捆绑到列上。 管理数据库其他对象 来自 中国最大的资料库下载 当向 “ 图书信息 ” 表中插入一条记录 , 不提供 “ 入馆时间 ” 列的值时 , 使用如下代码: USE 学生图书借阅管理 INSERT INTO 图书信息 (图书编号 ,图书名称 ,作者 ) VALUES(39。 0000739。 ,39。 网页编程技术 39。 ,39。 邵丽萍 39。 ) 在查询分析器中执行以后 , 打开 “ 图书信息 ” 表 ,会看到 “ 入馆时间 ” 一列被自动添加了当前系统的时间。 2) 将默认值捆绑到用户自定义数据类型上 管理数据库其他对象 来自 中国最大的资料库下载 (1) 不使用 futureonly_flag参数。 例如 , 用下面的语句创建一个默认值 , 名称为 “ 默认号码 ”。 USE 学生图书借阅管理 GO CREATE DEFAULT 默认号码 AS 39。 1111111139。 然后将此默认值捆绑到前面 2节中的用户自定义数据类型 “ 号码 ” 上 , 代码如下: USE 学生图书借阅管理 EXEC sp_bindefault 39。 默认号码 39。 , 39。 号码 39。 管理数据库其他对象 来自 中国最大的资料库下载 在查询分析器上执行结果为 已将默认值绑定到数据类型 该结果表示已将新默认值绑定到指定用户数据类型的列上。 这说明已将默认值 “ 默认号码 ” 绑定到用户数据类型“ 号码 ” 上。 然后将 “ 学生信息 ” 表的 “ 电话 ” 列的数据类型设置为用户自定义数据类型 “ 号码 ” , 这时该列的默认值自动设为 “ 默认号码 ”。 在 “ 学生信息 ” 表上执行下面的插入语句时 , 表中的 “ 电话 ” 列上将自动插入 “ 11111111”值 ,代码如下: USE 学生图书借阅管理 INSERT INTO 学生信息 (借书证号 , 姓名 , 性别 , 班级 ) VALUES(39。 0001039。 , 39。 郭明 39。 , 39。 男 39。 , 39。 20200139。 ) 管理数据库其他对象 来自 中国最大的资料库下载 (2) 使用 futureonly_flag参数。 如果将默认值捆绑到用户自定义数据类型上时使用 futureonly_flag参数 , 将不影响已经使用该数据类型的列。 下面举例说明。 首先 , 创建一个新的用户自定义数据类型 “ 传真 ”。 代码为 USE 学生图书借阅管理 EXEC sp_addtype 传真 ,39。 varchar(8)39。 然后 , 在 “ 学生信息 ” 表添加一列 “ 传真 1”, 并将此列设置为用户自定义数据类型 “ 传真 ”。 代码为 ALTER TABLE 学生信息 ADD 传真 1传真 管理数据库其他对象 来自 中国最大的资料库下载 这时 , 向 “ 学生信息 ” 表中插入记录: INSERT INTO 学生信息 (借书证号 ,姓名 ,性别 ,班级 ) VALUES(39。 0001139。 ,39。 郭亮 39。 ,39。 男 39。 ,39。 20200139。 ) 此表中的 “ 传真 1”列为 NULL。 下面将默认值 “ 默认号码 ” 捆绑到用户自定义数据类型 “ 传真 ” 上 , 并使用 futureonly_flag参数 , 代码为 EXEC sp_bindefault 39。 默认号码 39。 , 39。 传真 39。 ,39。 futureonly39。 再向该表中添加一个新列 “ 传真 2”, 并将该列设置为 “ 传真 ” 数据类型: 管理数据库其他对象 来自 中国最大的资料库下载 ALTER TABLE 学生信息 ADD 传真 2 传真 此时 , 再用下面的语句向该表中插入数据: INSERT INTO 学生信息 (借书证号 ,姓名 ,性别 ,班级 ) VALUES(39。 0001239。 ,39。 郭佳 39。 ,39。 男 39。 ,39。 20200139。 ) 则此表中的 “ 传真 1”列仍为空值 , 而 “ 传真 2”列为默认值 “ 11111111”, 说明只有后来引用该用户自定义数据类型的列受到默认值的影响。 如果前面的捆绑语句中不使用 futureonly_flag参数 ,执行上面的插入语句时 , “ 传真 1”和 “ 传真 2”两列的值都将为默认值 “ 11111111”, 说明捆绑前和捆绑后引用该用户自定义数据类型的列都将受默认值的影响。 管理数据库其他对象 来自 中国最大的资料库下载 2. 使用企业管理器捆绑默认值 使用企业管理器捆绑默认值的步骤如下: (1) 在企业管理器中打开 “ 图书信息 ” 表设计器; (2) 将光标移至 “ 入馆时间 ” 字段 , 从默认值对象下拉表中选择 “ 入馆时间 ” 默认值对象即可 , 如图 622所示。 图 622 将字段绑定到默认值对象的窗口 管理数据库其他对象 来自 中国最大的资料库下载 删除默认值 如果要删除一个默认值对象 , 首先应解除默认值对象与用户定义类型及表字段的捆绑关系 , 然后才能删除该默认值对象。 1. 使用系统存储过程 使用 sp_unbinddefault系统存储过程 , 可以解除捆绑到列或用户自定义数据类型上的默认值。 其语法为 sp_unbinddefault[@objname=]39。 object_name39。 [, [@futureonly =] 39。 futureonly_flag39。 ] 其中: object_name为要解除默认值捆绑的列或用户自定义数据类型的名称。 管理数据库其他对象 来自 中国最大的资料库下载 futureonly_flag仅用于解除用户定义数据类型默认值的绑定。 当参数 futureonly。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。