关于sp_addtype T-SQL参考
来源:互联网 发布:javascript权威指南 编辑:程序博客网 时间:2024/05/16 07:20
sp_addtype
创建用户定义的数据类型。
语法
sp_addtype [ @typename = ] type,
[ @phystype = ] system_data_type
[ , [ @nulltype = ] 'null_type']
[ , [ @owner = ] 'owner_name']
参数
[@typename =] type
用户定义的数据类型的名称。数据类型名称必须遵照标识符的规则,而且在每个数据库中必须是唯一的。type 的数据类型为sysname,没有默认值。
[@phystype =] system_data_type
是用户定义的数据类型所基于的物理数据类型或 Microsoft® SQL Server™ 提供的数据类型(decimal、int 等等)。system_data_type的数据类型是 sysname,没有默认值,可能是这些值之一:
'binary( n )'imagesmalldatetimeBitintsmallint'char( n )''nchar( n )'textDatetimentexttinyintDecimalnumericuniqueidentifier'decimal[ ( p [,s ] ) ]''numeric[ ( p [ , s ] ) ]''varbinary( n )'Float'nvarchar( n )''varchar( n )''float( n )'real如果参数中嵌入有空格或标点符号,则必须用引号将该参数引起来。有关可用的数据类型的更多信息,请参见数据类型。
- n
- 非负整数,指明所选数据类型的长度。
- p
- 非负整数,指明可保留的最大十进制位数,包括小数点左边和右边的数字。有关更多信息,请参见 decimal 和 numeric。
- s
- 非负整数,指明小数点右边的小数数字可保留的最大十进制位数,它必须小于或等于精度值。有关更多信息,请参见本卷中的"decimal 和numeric"。
[@nulltype =] 'null_type'
指明用户定义的数据类型处理空值的方式。null_type 的数据类型为 varchar(8),默认值为 NULL,并且必须用单引号引起来('NULL'、'NOT NULL' 或 'NONULL')。如果没有用sp_addtype 显式定义 null_type,则将其设置为当前默认的为空性。使用 GETANSINULL 系统函数可确定当前默认的为空性,可以使用 SET 语句或sp_dboption 对该为空性进行调整。应显式定义为空性。
说明 null_type 参数只为该数据类型定义默认的为空性。如果在创建表的过程中使用用户定义的数据类型时显式地定义了为空性,那么该为空性优先于已定义好的为空性。有关更多信息,请参见ALTER TABLE 和CREATE TABLE。
[@owner =] 'owner_name'
指定新数据类型的创建者或所有者。owner_name 的数据类型为 sysname。当没有指定时,owner_name 为当前用户。
返回代码值
0(成功)或 1(失败)
结果集
无
注释
用户定义的数据类型名称在数据库中必须是唯一的,但是名称不同的用户定义的数据类型可以有相同的定义。
除非将 master 作为当前数据库来执行 sp_addtype,否则,执行 sp_addtype 会创建用户定义的数据类型,并且将其添加到某个特定数据库的 systypes 系统表中。如果想在所有新的用户定义的数据库中都可以使用这一用户定义的数据类型,请将其添加到model。在创建了用户数据类型之后,可以在 CREATE TABLE 或 ALTER TABLE 中使用它,也可以将默认值和规则绑定到用户定义的数据类型。
不能使用 SQL Server timestamp 数据类型来定义用户定义的数据类型。
权限
执行权限默认授予 public 角色。
示例
A. 创建不允许空值的用户定义数据类型
下面的示例创建一个名为 ssn(社会保险号)的用户定义数据类型,它基于 SQL Server 提供的 varchar 数据类型。ssn 数据类型用于那些保存 11 位数字的社会保险号 (999-99-9999) 的列。该列不能为 NULL。
请注意,varchar(11) 由单引号引了起来,这是因为它包含了标点符号(圆括号)。
USE masterEXEC sp_addtype ssn, 'VARCHAR(11)', 'NOT NULL'
B. 创建允许空值的用户定义数据类型
下面的示例创建了一个名为 birthday 的用户定义数据类型(基于 datetime),该数据类型允许空值。
USE masterEXEC sp_addtype birthday, datetime, 'NULL'
C. 创建另外的用户定义的数据类型
下面的示例为国内及国际电话和传真号码另外创建两个用户定义的数据类型 telephone 和 fax。
USE masterEXEC sp_addtype telephone, 'varchar(24)', 'NOT NULL'EXEC sp_addtype fax, 'varchar(24)', 'NULL'
请参见
CREATE DEFAULT
CREATE RULE
sp_bindefault
sp_bindrule
sp_droptype
sp_rename
sp_unbindefault
sp_unbindrule
系统存储过程
- 关于sp_addtype T-SQL参考
- sql server 2005 T-SQL 参考
- 关于T-SQL
- sql server 2005 T-SQL 参考 -(负)(Transact-SQL)
- sql server 2005 T-SQL 参考 -(减)(Transact-SQL)
- sql server 2005 T-SQL 参考 *(乘)(Transact-SQL)
- sql server 2005 T-SQL 参考 /(除)(Transact-SQL)
- 参考标准行政区划表转化编码T-SQL写法
- 关于T-SQL中数据库重命名
- 关于T-sql导入导出Excel
- 关于T-SQL中数据库重命名
- 11.5.19关于T-SQL杂篇
- 关于T-SQL中数据库重命名
- sql server 2005 T-SQL 参考 +(字符串串联)(Transact-SQL)
- sql server 2005 T-SQL 参考 %(取模)(Transact-SQL)
- AT&T ASM 参考
- AT&T 汇编参考
- AT&T 汇编参考
- uboot的移植
- 黑马程序员-servlet和jsp中的重定向和请求转发
- 比较全的验证码类(数字,字母,汉字)
- Python:元组函数
- 向存在的文件中写入数据
- 关于sp_addtype T-SQL参考
- c++builder 2006 SOAP/WebService 第一个hello word!服务端
- 在Android中使用Toast进行提示
- win7 GHOST 系统管理员已禁用系统还原 解决办法
- 项目规划管理 - 1
- 如何使用WPS在服务器端WORD文件转PDF
- Oracle的oci和thin连接
- Linux 读写自旋锁原理
- 发布图片专用