1、char。char存储定长数据很方便,char字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间。   
    
      2、varchar。存储变长数据,但存储效率没有char高。如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 varchar(10)是最合算的。varchar类型的实际长度是它的值的实际长度+1。为什么“+1”呢?这一个字节用于保存实际使用了多大的长度。
      从空间上考虑,用varchar合适;从效率上考虑,用char合适,关键是根据实际情况找到权衡点。

3、text。text存储可变长度的非Unicode数据,最大长度为2^31-1(2,147,483,647)个字符。

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

转载于:https://www.cnblogs.com/SunXiaoLin/p/3387310.html

SQL中 char、varchar、text 和 nchar、nvarchar、ntext的区别相关推荐

  1. SQL中char\varchar\text与nchar\nvarchar\ntext的区别

    SQL中char\varchar\text与nchar\nvarchar\ntext的区别 定义 特点 定义 char char(n)是长度不可变的,用于表示非Unicode字符数据.n代表该数据类型 ...

  2. SQL中char varchar nchar nvarchar ntext区别和使用(资料汇总)

    SQL中char varchar nchar nvarchar ntext区别和使用(资料汇总) 2008年10月14日 星期二 23:57 一.SQL中char varchar nchar nvar ...

  3. 将所有的表中,数值类型由char,varchar改为nchar,nvarchar 的存储过程

    /*--将所有的表中,数值类型由char,varchar改为nchar,nvarchar 的存储过程 --邹建 2004.02(引用请保留此信息)--*/     /*--调用示例:         ...

  4. mysql中char,varchar,text

    1.char char最大长度是255字符,注意是字符数和字符集没关系. 1)可以有默认值, 2)尾部有空格会被截断 3)不管汉字.英文,还是其他编码,都可以存255字符 2.varchar 1)va ...

  5. mysql中text格式化_mysql中char,varchar,text

    1.char char最大长度是255字符,注意是字符数和字符集没关系. 1)可以有默认值, 2)尾部有空格会被截断 3)不管汉字.英文,还是其他编码,都可以存255字符 2.varchar 1)va ...

  6. sqlite数据库的char,varchar,text,nchar,nvarchar,ntext的区别

    1.CHAR.CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间,不足的自动用空格填充. 2.VAR ...

  7. 数据库中char varchar nchar nvarchar的区别

    数据库中char varchar nchar nvarchar的区别 我们在进行数据库的设计的时候,很多情况下表中的字段都是用的是字符串类型的数据,其中就有四种选择char varchar nchar ...

  8. mysql varchar tinytext_mysql列类型char,varchar,text,tinytext,mediumtext,longtext的比较与选择...

    储存不区分大小写的字符数据 TINYTEXT 最大长度是 255 (2^8 – 1) 个字符. TEXT 最大长度是 65535 (2^16 – 1) 个字符. MEDIUMTEXT 最大长度是 16 ...

  9. SQL中的long text

    SQL中的long text 问题: 解决方法: SELECT CONVERT(VARCHAR(5000),参考文献) AS 参考文献 FROM tpi20160503 出现原因: 转载于:https ...

  10. mysql char varchar text 对比

    检索效率 char > varchar > text 当varchar长度超过255之后,跟text一致,但是设置varchar(n)的话,可以防止恶意使用text撑爆数据库 类型名称 说 ...

最新文章

  1. Linux 命令行网络监控工具
  2. 使用runtime解决棘手问题锦集(持续更新)
  3. 一个高端大气上档次的壁纸网站,突破你的的审美
  4. VMM2012应用指南之1-实验环境概述与准备
  5. JavaWeb前端之AJAX的初步学习
  6. 保姆级教程,终于搞懂脏读、幻读和不可重复读了!(经典回顾)
  7. Of Study - Francis Bacon
  8. java创建数据库mysql数据库_用Java创建MySQL数据库
  9. 计算机怎么给课程表涂颜色,Excel做自动统计课时数的彩色课程表
  10. python爬取拼多多数据 verifyauthtoken_拼多多TOKEN授权
  11. 汉字风格迁移篇--基于生成对抗网络的无监督字体风格转换模型
  12. 高仿360云盘android端的ui实现,高仿360云盘android端的UI实现
  13. 3.2 电信数据清洗
  14. TOGAF认证考试总结
  15. 请教刷机教程9008线刷
  16. MSP430F149--点亮LED灯程序代码
  17. 什么是AMD;什么是CMD
  18. MFC AFX_EXT_CLASS
  19. wps表格保存html,网页中的数据怎么导入excel表格数据-怎么把网页数据导入到wps表格中...
  20. redis未授权访问

热门文章

  1. Python Django 正向查询与逆向查询
  2. SpringAOP编程-传统基于JDK代理的AOP开发
  3. IDEA配置SVN并实现代码版本控制
  4. synchronized修饰静态方法与实例方法
  5. Windows服务安装卸载
  6. java+object+graph,graphql-go:使用Object作为查询的输入参数
  7. 如何在一个.c文件里调用另一个.c文件里的变量
  8. 超详细轮播图的三种实现方法html+css+javascript
  9. DEBUG日记:同样的代码在不同的环境却得出不同的结果。
  10. AQS(CountdownLatch、CyclicBarrier、Semaphore)、FutureTask、BlockingQueue、ForkJoin