SQL Server 2005中的数据类型总结
2009-12-27 15:40:45 来源:WEB开发网4、字符串char [ ( n ) ],varchar [ ( n | max ) ],text
char [ ( n ) ]可以存储字母数字值,固定长度,非 Unicode 字符数据,长度为 n 个字节。n 的取值范围为 1 至 8,000,存储大小是 n 个字节。如果未在数据定义或变量声明语句中指定 n,则默认长度为 1。如果在使用 CAST 和 CONVERT 函数时未指定 n,则默认长度为 30。
varchar [ ( n | max ) ] 可以存储字母数字值,可变长度,非 Unicode 字符数据。n 的取值范围为 1 至 8,000。max 指示最大存储大小是 2^31-1 个字节。存储大小是输入数据的实际长度加 2 个字节。所输入数据的长度可以为 0 个字符。如果未在数据定义或变量声明语句中指定 n,则默认长度为 1。如果在使用 CAST 和 CONVERT 函数时未指定 n,则默认长度为 30。
text服务器代码页中长度可变的非 Unicode 数据,最大长度为 2^31-1 (2,147,483,647) 个字符。当服务器代码页使用双字节字符时,存储仍是 2,147,483,647 字节。根据字符串,存储大小可能小于 2,147,483,647 字节。
备注:在 Microsoft SQL Server 的未来版本中将删除 ntext、text 和 image 数据类型。请避免在新开发工作中使用这些数据类型,并考虑修改当前使用这些数据类型的应用程序。请改用 nvarchar(max)、varchar(max) 和 varbinary(max)。
5、Unicode字符串 nchar [ ( n ) ],nvarchar [ ( n | max ) ],ntext
nchar [ ( n ) ] ,n 个字符的固定长度的 Unicode 字符数据。n 值必须在 1 到 4,000 之间(含)。存储大小为两倍 n 字节。如果没有在数据定义或变量声明语句中指定 n,则默认长度为 1。如果没有使用 CAST 函数指定 n,则默认长度为 30。
nvarchar [ ( n | max ) ],可变长度 Unicode 字符数据。n 值在 1 到 4,000 之间(含)。max 指示最大存储大小为 2^31-1 字节。存储大小是所输入字符个数的两倍 + 2 个字节。所输入数据的长度可以为 0 个字符。如果没有在数据定义或变量声明语句中指定 n,则默认长度为 1。如果没有使用 CAST 函数指定 n,则默认长度为 30。
ntext是长度可变的 Unicode 数据,最大长度为 2^30 - 1 (1,073,741,823) 个字符。存储大小是所输入字符个数的两倍(以字节为单位)。
备注:如果站点支持多语言,请考虑使用 Unicode nchar 或 nvarchar 数据类型,以最大限度地消除字符转换问题。
6、二进制字符串 binary [ ( n ) ],varbinary [ ( n | max ) ],image
binary [ ( n ) ],varbinary [ ( n | max ) ]两者是固定长度或可变长度的 Binary 数据类型。binary [ ( n ) ] 长度为 n 字节的固定长度二进制数据,其中 n 是从 1 到 8,000 的值。存储大小为 n 字节。如果未在数据定义或变量声明语句中指定 n,则默认长度为 1。如果未使用 CAST 函数指定 n,则默认长度为 30。varbinary [ ( n | max ) ] 可变长度二进制数据。n 可以取从 1 到 8,000 的值。max 指示最大的存储大小为 2^31-1 字节。存储大小为所输入数据的实际长度 + 2 个字节。所输入数据的长度可以是 0 字节。如果未在数据定义或变量声明语句中指定 n,则默认长度为 1。如果未使用 CAST 函数指定 n,则默认长度为 30。
Image长度可变的二进制数据,从 0 到 2^31-1 (2,147,483,647) 个字节。
7、其他数据类型
Ⅰ) 这是变量或存储过程 OUTPUT 参数的一种数据类型,这些参数包含对游标的引用。使用 cursor 数据类型创建的变量可以为空。
有些操作可以引用那些带有 cursor 数据类型的变量和参数,这些操作包括:
DECLARE @local_variable 和 SET @local_variable 语句。
OPEN、FETCH、CLOSE 及 DEALLOCATE 游标语句。
存储过程输出参数。
CURSOR_STATUS 函数。
sp_cursor_list、sp_describe_cursor、sp_describe_cursor_tables 以及 sp_describe_cursor_columns 系统存储过程。
备注:对于 CREATE TABLE 语句中的列,不能使用 cursor 数据类型。
Ⅱ) sql_variant
一种数据类型,用于存储 SQL Server 2005 支持的各种数据类型(不包括 text、ntext、image、timestamp 和 sql_variant)的值。
sql_variant 可以用在列、参数、变量和用户定义函数的返回值中。sql_variant 使这些数据库对象能够支持其他数据类型的值。
Ⅲ)table
一种特殊的数据类型,用于存储结果集以进行后续处理。table 主要用于临时存储一组行,这些行是作为表值函数的结果集返回的。可将函数和变量声明为 table 类型。table 变量可用于函数、存储过程和批处理中。
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接