SQL 用户定义数据类型、默认和规则

发表于:2008-12-02 14:10

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:网络转载

分享:

  我增加了两个扩展属性到用户定义数据类型,这个数据类型可以当作元数据。在这个例子中,我包括了作者(创建者)和目的(建立),如下所示:

  SQL Server

  图三 用户定义数据类型、规则和默认的T-SQL执行

  下面列出了用户定义数据类型、规则和默认的代码段例子。

用来创建 SQL Server用户定义数据类型的句子
sp_addtype [ @typename = ] type,
[ @phystype = ] system_data_type
[ , [ @nulltype = ] 'null_type' ]
[ , [ @owner = ] 'owner_name' ]

  下面是从系统存储过程中选出来的四个参数的基本解释。

参数 解释
@typename 正在创建的新用户定义数据类型的名称
@phystype SQL Server的基本系统数据类型
@nulltype 指定空值是否可以在这种数据类型中使用
@owner 正在创建的用户定义数据类型的属主

  以下是在上面SSMS中使用的默认和规则的例子。

默认和规则代码的示例
-- Create a default value for phone number to be used in example
USE AdventureWorks
GO

CREATE DEFAULT Default_PhNo
AS 'UnknownNumber'
GO

-- Create a rule for phone number to be used in example
-- Number will be in format +92-3335409953 or UnknownNumber by default
USE AdventureWorks
GO

CREATE RULE rule_PhNo
AS
(@phone='UnknownNumber')
OR (LEN(@phone)=14
AND SUBSTRING(@phone,1,1)= '+'
AND SUBSTRING(@phone,4,1)= '-')
GO

  在最后的代码段,我们将把规则和默认结合到用户定义数据类型中:

用来把默认和规则结合到用户定义数据类型中的命令
-- To bind a default 'Default_PhNo' to user defined data type 'PhoneNumb'
EXEC sp_bindefault 'Default_PhNo', 'PhoneNumb'
GO -- To bind a rule 'rule_PhNo' to user defined data type 'PhoneNumb' EXEC sp_bindrule 'rule_PhNo', 'PhoneNumb' GO
22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号