mssql sqlserver sp_addtype关键字使用说明简介


摘要:
下文将讲述sql server中sp_addtype关键字的用法简介,如下所示:
实验环境:sql server 2008 R2



sp_addtype功能及语法说明

sp_addtype功能:
对系统基础类型创建一个别名,及定义是否为空的说明
sp_addtype语法:
sp_addtype [@typename =] type,
[@phystype =] system_data_type
[,[@nulltype=] ‘null_type’] ;
——————参数说明———————-
@typename:
类型别名
@phystype:
系统基础类型名(此名称需为sqlserver提供的基础类型),
需为以下类型:
bigint、binary(n)、bit
char(n)、datetime、decimal
float、image、int
money、nchar(n)、ntext
numeric、nvarchar(n)、real
smalldatetime、smallint、smallmoney
sql_variant、text、tinyint
uniqueidentifier、varbinary(n)、varchar(n)
@nulltype:
是否允许字段为null ,此处只能输入 ‘NULL’,’NOT NULL’,’NONULL’
当系统基础类型不能为NULL时,此处禁止输入not NULL
——————–返回值说明————————
sp_addtype返回值说明:
返回0代表成功
返回1代表失败

sp_addtype 举例应用

 USE master;  
 GO  
  ---创建一个varchar_11的数据类型长度为 11个字节,禁止为空
 EXEC sp_addtype varchar_11, 'varchar(11)', 'NOT NULL';  
 GO  
 
USE master;  
GO
---创建一个别名为shengRi的数据类型      
EXEC sp_addtype shengRi, datetime, 'NULL';   
GO 

USE master;  
GO  
---创建一个别名为tel的数据类型 存储电话号码
EXEC sp_addtype tel, 'varchar(24)', 'NOT NULL';  
GO  


sp_addtype 注意事项:
微软不建议使用此方式,因为后续版本中可能会删除此模式
别名在数据库中须唯一
执行此系统存储过程的用户须拥有 db_owner 和 db_ddladmin 角色权限