记忆盒子

把记忆装进灰色的盒子,封装起来,那年那月,重新拾起。

首页搜索目录
search
当前主题: 软件编程

char、varchar、text和nchar、nvarchar、ntext的区别比较

作者:Kaka    时间:2009-8-31 21:42:11    浏览:    评论:3

      我们在数据库设计时,char、varchar、text和nchar、nvarchar、ntext是使用频率相对来说比较高的数据类型,但有时候不知道选择哪种为好,原因是不太清楚他们之间的区别所在。

      要使数据库设计得更加合理,我们需要对各种数据类型的概念和用法都有一个比较清晰的了解。

      这里说说char、varchar、text和nchar、nvarchar、ntext的区别和选用。

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

      2) nchar、nvarchar、ntext,表示存储的是Unicode数据类型的字符。我们知道字符中,英文字符只需要一个字节存储就足够了,但汉字众多,需要两个字节存储,英文与汉字同时存在时容易造成混乱,Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示。nchar、nvarchar的长度是在1到4000之间。和char、varchar比较起来,nchar、nvarchar则最多存储4000个字符,不论是英文还是汉字;而char、varchar最多能存储8000个英文,4000个汉字。可以看出使用nchar、nvarchar数据类型时不用担心输入的字符是英文还是汉字,较为方便,但在存储英文时数量上有些损失。

      所以一般来说,如果含有中文字符,用nchar/nvarchar,如果纯英文和数字,用char/varchar 。

x

标签: SQL Server  

※ 网站速度慢?试试网站自动优化工具 ※

上一篇: 教你如何去除Win2000、WinXP系统的登录界面
下一篇: 怎样去掉GoDaddy免费空间的广告
  • 1.j*****
  • 受用,貌似现在试用char的很少了吧,没做过开发,不太了解
  • 2009/9/1 17:21:04 回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

订阅博客                   QQ交流群(312716741)

  • 通过Google订阅本站 通过鲜果订阅本站 通过抓虾订阅本站
  • 通过QQ邮箱订阅本站 通过Yahoo订阅本站 通过有道订阅本站

Search

最新评论及回复

最近留言

网站分类

Powered By Z-Blog 1.8 Walle Build 91204 Designed by Han'space

Copyright @2009-2024 All Rights Reserved. 粤ICP备14028160号-1

Powered By Z-Blog 1.8 Walle Build 91204
Copyright @2009-2024 All Rights Reserved.