SQL Server 中易混淆的数据类型

善良的小小先生

善良的小小先生

2016-01-29 16:25

SQL Server 中易混淆的数据类型,SQL Server 中易混淆的数据类型
 

近来在做数据库设计,有时候真弄不清SQL2000里的数据类型,所以摘了这篇文章。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/sqlserver/)

(1)char、varchar、text和nchar、nvarchar、ntext
char和varchar的长度都在1到8000之间,它们的区别在于char是定长字符数据,而varchar是变长字符数据。所谓定长就是长度固定的,当输入的数据长度没有达到指定的长度时将自动以英文空格在其后面填充,使长度达到相应的长度;而变长字符数据则不会以空格填充。text存储可变长度的非Unicode数据,最大长度为2^31-1(2,147,483,647)个字符。

后面三种数据类型和前面的相比,从名称上看只是多了个字母"n",它表示存储的是Unicode数据类型的字符。写过程序的朋友对Unicode应该很了解。字符中,英文字符只需要一个字节存储就足够了,但汉字众多,需要两个字节存储,英文与汉字同时存在时容易造成混乱,Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示。nchar、nvarchar的长度是在1到4000之间。和char、varchar比较:nchar、nvarchar则最多存储4000个字符,不论是英文还是汉字;而char、varchar最多能存储8000个英文,4000个汉字。可以看出使用nchar、nvarchar数据类型时不用担心输入的字符是英文还是汉字,较为方便,但在存储英文时数量上有些损失。

(2)datetime和smalldatetime
datetime:从1753年1月1日到9999年12月31日的日期和时间数据,精确到百分之三秒。
smalldatetime:从1900年1月1日到2079年6月6日的日期和时间数据,精确到分钟。

(3)bitint、int、smallint、tinyint和bit
bigint:从-2^63(-9223372036854775808)到2^63-1(9223372036854775807)的整型数据。
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的整数数据。
bit:1或0的整数数据。

(4)decimal和numeric
这两种数据类型是等效的。都有两个参数:p(精度)和s(小数位数)。p指定小数点左边和右边可以存储的十进制数字的最大个数,p必须是从 1到38之间的值。s指定小数点右边可以存储的十进制数字的最大个数,s必须是从0到p之间的值,默认小数位数是0。

(5)float和real
float:从-1.79^308到1.79^308之间的浮点数字数据。
real:从-3.40^38到3.40^38之间的浮点数字数据。在SQL Server中,real的同义词为float(24)。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/sqlserver/) 
展开更多 50%)
分享

猜你喜欢

SQL Server 中易混淆的数据类型

SQLServer
SQL Server 中易混淆的数据类型

SQL SERVER的数据类型

编程语言 网络编程
SQL SERVER的数据类型

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Sql Server关于字段中的数据类型

编程语言 网络编程
Sql Server关于字段中的数据类型

MS SQL Server 2000系统数据类型

SQLServer
MS SQL Server 2000系统数据类型

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Access 和 SQL Server数据类型的比较

编程语言 网络编程
Access 和 SQL Server数据类型的比较

SQL Server几个容易出错的数据类型

SQLServer
SQL Server几个容易出错的数据类型

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

《崩坏学园2》新手入门指南

《崩坏学园2》新手入门指南

SQL Server编写存储过程小工具(一)

SQL Server编写存储过程小工具(一)
下拉加载更多内容 ↓