您的位置:首页 > 其它

(1)创建用户定义的数据类型

2014-04-19 17:18 218 查看
 创建用户定义的数据类型可以使用 Transact-SQL
语句。系统存储过程 sp_addtype
可以来创建用户定义的数据类型。其语法形式如下:

  sp_addtype {type},[,system_data_bype][,’null_type’]

  其中,type 是用户定义的数据类型的名称。system_data_type
是系统提供的数据类型,例如 Decimal、Int、Char
  等等。 null_type
表示该数据类型是如何处理空值的,必须使用单引号引起来,例如’NULL’、’NOT NULL’或者’NONULL’。

  例子:
  Use cust
  Exec sp_addtype ssn,’Varchar(11)’,"Not Null’

  创建一个用户定义的数据类型 ssn,其基于的系统数据类型是变长为11
的字符,不允许空。

  例子:
  Use cust
  Exec sp_addtype birthday,datetime,’Null’

  创建一个用户定义的数据类型 birthday,其基于的系统数据类型是 DateTime,允许空。

  例子:
  Use master
  Exec sp_addtype telephone,’varchar(24),’Not Null’

  Eexc sp_addtype fax,’varchar(24)’,’Null’

  创建两个数据类型,即 telephone
和 fax  
(2)删除用户定义的数据类型  
  当用户定义的数据类型不需要时,可删除。删除用户定义的数据类型的命令是 sp_droptype {’type’}。

  例子:
  Use master
  Exec sp_droptype ’ssn’

  注意:当表中的列还正在使用用户定义的数据类型时,或者在其上面还绑定有默认或者规则时,这种用户定义的数据类型不能删除。  
  以下为SQL SERVER7.0以上版本的字段类型说明。SQL SERVER6.5的字段类型说明请参考SQL SERVER提供的说明。

字段类型 描述  

bit 0或1的整型数字  

int 从-2^31(-2,147,483,648)到2^31(2,147,483,647)的整型数字  

smallint 从-2^15(-32,768)到2^15(32,767)的整型数字  

tinyint 从0到255的整型数字  

decimal 从-10^38到10^38-1的定精度与有效位数的数字  

numeric decimal的同义词  

money 从-2^63(-922,337,203,685,477.5808)到2^63-1(922,337,203,685,477.5807)的货币数据,最小货币单位千分之十  

smallmoney 从-214,748.3648到214,748.3647的货币数据,最小货币单位千分之十  

float 从-1.79E+308到1.79E+308可变精度的数字  

real 从-3.04E+38到3.04E+38可变精度的数字  

datetime 从1753年1月1日到9999年12日31的日期和时间数据,最小时间单位为百分之三秒或3.33毫秒  

smalldatetime 从1900年1月1日到2079年6月6日的日期和时间数据,最小时间单位为分钟  

timestamp 时间戳,一个数据库宽度的唯一数字  

uniqueidentifier 全球唯一标识符GUID  

char 定长非Unicode的字符型数据,最大长度为8000  

varchar 变长非Unicode的字符型数据,最大长度为8000  

text 变长非Unicode的字符型数据,最大长度为2^31-1(2G)  

nchar 定长Unicode的字符型数据,最大长度为8000  

nvarchar 变长Unicode的字符型数据,最大长度为
878d
8000  

ntext 变长Unicode的字符型数据,最大长度为2^31-1(2G)  

binary 定长二进制数据,最大长度为8000  

varbinary 变长二进制数据,最大长度为8000  

image 变长二进制数据,最大长度为2^31-1(2G)  
〉〉〉---------我想分页!--这么长的文章,在这里来个分页多好啊!哈哈----------〈〈〈

《SQL语句的基本语法》

一.Select语句的完整语法为:
Select[ALL|DISTINCT|DISTINCTROW|TOP]

{*|talbe.*|[table.]field1[AS alias1][,[table.]field2[AS alias2][,…]]}

FROM tableexpression[,…][IN externaldatabase]

[Where…]

[GROUP BY…]

[HAVING…]

[ORDER BY…]

[WITH OWNERACCESS OPTION]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: