谁能帮我介绍一个SQL中各数据类型的区别 谁能帮我介绍一个SQL中各数据类型的区别~~~~~~~~~~~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看帮助:mk:@MSITStore:C:\Program%20Files\Microsoft%20SQL%20Server\80\Tools\Books\tsqlref.chm::/ts_da-db_7msw.htm 数据类型 默认长度(字符数) Char 定义的列长度 Varchar 定义的列长度 Nchar 定义的列长度的两倍 Nvarchar 定义的列长度的两倍 Text 0 Ntext 0 Bit 1 Binary 定义的列长度的两倍 + 1 Varbinary 定义的列长度的两倍 + 1 Image 0 Datetime 24 Smalldatetime 24 Float 30 Real 30 Int 12 Bigint 19 Smallint 7 Tinyint 5 Money 30 Smallmoney 30 Decimal 41* Numemic 41* Uniqueidentifier 37 Timestamp 17 字符串--------------------VARCHAR 可变长度的非 Unicode 数据,最长为 8,000 个字符CHAR 固定长度的非 Unicode 字符数据,最大长度为 8,000 个字符Text 可变长度的非 Unicode 数据,最大长度为 2^31 - 1 (2,147,483,647) 个字符-----------------------Unicode 字符串NCHAR 固定长度的 Unicode 数据,最大长度为 4,000 个字符VNCHAR 可变长度 Unicode 数据,其最大长度为 4,000 字符。sysname 是系统 提供用户定义的数据类型,在功能上等同于 nvarchar(128),用于引用数据库对象名。NTEXT 可变长度 Unicode 数据,其最大长度为 2^30 - 1 (1,073,741,823) 个字符---------------------数值型INT 从 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型数据(所有数字)。SMALLINT 从 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整数数据。TINYINT 从 0 到 255 的整数数据。DECIMAL 从 -10^38 +1 到 10^38 –1 的固定精度和小数位的数字数据NUMERIC 功能同DECIMAL--------------MONEYMONEY 货币数据值介于 -2^63 (-922,337,203,685,477.5808) 与 2^63 - 1 (+922,337,203,685,477.5807) 之间,精确到货币单位的千分之十。SMALLMONEY 货币数据值介于 -214,748.3648 与 +214,748.3647 之间,精确到货币单位的千分之十----------------------日期型数据Datatime 从 1753 年 1 月 1 日到 9999 年 12 月 31 日的日期和时间数据,精确到百分之三秒(或 3.33 毫秒)。Small datatime 从 1900 年 1 月 1 日到 2079 年 6 月 6 日的日期和时间数据,精确到分钟。------------------------VARCHAR型和CHAR型数据的这个差别是细微的, 但是非常重要。假如你向一个长度为四十个字符的VARCHAR型字段中输入数据Bill Gates。当你以后从这个字段中取出此数据时,你取出的数据其长度为十个字符——字符串Bill Gates的长度。 现在假如你把字符串输入一个长度为四十个字符的CHAR型字段中,那么当你取出数据时,所取出的数据长度将是四十个字符。字符串的后面会被附加多余的空格。 当你建立自己的站点时,你会发现使用VARCHAR型字段要比CHAR型字段方便的多。使用VARCHAR型字段时,你不需要为剪掉你数据中多余的空格而操心。 VARCHAR型字段的另一个突出的好处是它可以比CHAR型字段占用更少的内存和硬盘空间。当你的数据库很大时,这种内存和磁盘空间的节省会变得非常重要。 菜鸟问题! 关于数据库连接串中隐藏SQL帐号和密码的问题 有答案就决贴----如何取表中指定行 SQL SERVER部分数据丢失? 函数返回值???? 如何用select返回一个月前的记录 菜鸟问题:重复记录排除 急!为什么我装不上SQL SERVER 2K? 请问在SQLSERVER里面如果实现记录锁定!谢谢大家! sql查询?(在线等待!急!分不够再加) 帮忙看一下,这样的查询语句(SQL)怎么写? 新增记录的存储过程,简单问题解决不了
Char 定义的列长度
Varchar 定义的列长度
Nchar 定义的列长度的两倍
Nvarchar 定义的列长度的两倍
Text 0
Ntext 0
Bit 1
Binary 定义的列长度的两倍 + 1
Varbinary 定义的列长度的两倍 + 1
Image 0
Datetime 24
Smalldatetime 24
Float 30
Real 30
Int 12
Bigint 19
Smallint 7
Tinyint 5
Money 30
Smallmoney 30
Decimal 41*
Numemic 41*
Uniqueidentifier 37
Timestamp 17
--------------------
VARCHAR 可变长度的非 Unicode 数据,最长为 8,000 个字符
CHAR 固定长度的非 Unicode 字符数据,最大长度为 8,000 个字符
Text 可变长度的非 Unicode 数据,最大长度为 2^31 - 1 (2,147,483,647) 个字符
-----------------------
Unicode 字符串
NCHAR 固定长度的 Unicode 数据,最大长度为 4,000 个字符
VNCHAR 可变长度 Unicode 数据,其最大长度为 4,000 字符。sysname 是系统 提供用户定义的数据类型,在功能上等同于 nvarchar(128),用于引用数据库对象名。
NTEXT 可变长度 Unicode 数据,其最大长度为 2^30 - 1 (1,073,741,823) 个字符
---------------------
数值型
INT 从 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型数据(所有数字)。
SMALLINT 从 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整数数据。
TINYINT 从 0 到 255 的整数数据。
DECIMAL 从 -10^38 +1 到 10^38 –1 的固定精度和小数位的数字数据
NUMERIC 功能同DECIMAL
--------------
MONEY
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 之间,精确到货币单位的千分之十
----------------------
日期型数据
Datatime 从 1753 年 1 月 1 日到 9999 年 12 月 31 日的日期和时间数据,精确到百分之三秒(或 3.33 毫秒)。
Small datatime 从 1900 年 1 月 1 日到 2079 年 6 月 6 日的日期和时间数据,精确到分钟。
------------------------
VARCHAR型和CHAR型数据的这个差别是细微的,
但是非常重要。假如你向一个长度为四十个字符的VARCHAR型字段中输入数据Bill Gates。当你以后从这个字段中取出此数据时,你取出的数据其长度为十个字符——字符串Bill Gates的长度。
现在假如你把字符串输入一个长度为四十个字符的CHAR型字段中,那么当你取出数据时,所取出的数据长度将是四十个字符。字符串的后面会被附加多余的空格。
当你建立自己的站点时,你会发现使用VARCHAR型字段要比CHAR型字段方便的多。使用VARCHAR型字段时,你不需要为剪掉你数据中多余的空格而操心。
VARCHAR型字段的另一个突出的好处是它可以比CHAR型字段占用更少的内存和硬盘空间。当你的数据库很大时,这种内存和磁盘空间的节省会变得非常重要。