• char varchar 有什么区别


    nchar    和    nvarchar  
    nchar    是固定长度    Unicode    数据的数据类型,nvarchar    是可变长度    Unicode    数据的数据类型,二者均使用    UNICODE    UCS-2    字符集。  

    nchar(n)  

    包含    n    个字符的固定长度    Unicode    字符数据。n    的值必须介于    1    与    4,000    之间。存储大小为    n    字节的两倍。nchar    在    SQL-92    中的同义词为    national    char    和    national    character。  

    nvarchar(n)  

    包含    n    个字符的可变长度    Unicode    字符数据。n    的值必须介于    1    与    4,000    之间。字节的存储大小是所输入字符个数的两倍。所输入的数据字符长度可以为零。nvarchar    在    SQL-92    中的同义词为    national    char    varying    和    national    character    varying。  

    注释  
    如果没有在数据定义或变量声明语句中指定    n,则默认长度为    1。如果没有使用    CAST    函数指定    n,则默认长度为    30。  

    如果希望列中所有数据项的大小接近一致,则使用    nchar。  

    如果希望列中数据项的大小差异很大,则使用    nvarchar。  

    使用    nchar    或    nvarchar    的对象被赋予数据库的默认排序规则,除非使用    COLLATE    子句赋予特定的排序规则。  

    SET    ANSI_PADDING    OFF    不适用于    nchar    或    nvarchar。SET    ANSI_PADDING    ON    永远适用于    nchar    和    nvarchar。  

    varchar 对每个英文(ascii)字符都占用2个字节,对一个汉字也只占用两个字节
    char
    对英文(ascii)字符占用1个字节,对一个汉字占用2个字节
    varchar
    的类型不以空格填满,比如varchar(100),但它的值只是"qian",则它的值就是"qian"
    char 不一样,比如char(100),它的值是"qian",而实际上它在数据库中是"qian "(qian后共有96个空格,
    就是把它填满为100个字节)

    由于char是以固定长度的,所以它的速度会比varchar快得多!但程序处理起来要麻烦一点,要用trim之类的函数把两边的空格
    去掉!

  • 相关阅读:
    一球从100米高度自由落下, 每次落地后反跳回原高度的一半; 再落下,求它在第10次落地时, 共经过多少米?第10次反弹多高?
    输入某年某月某日,判断这一天是这一年的第几天?
    一、spring——helloWorld
    遍历Map的四种方法
    六、IO流——文件
    五、集合
    在java项目中使用log4j的实例
    Nginx配置文件nginx.conf中文详解(总结)
    Windows7下安装搭建Ngnix教程
    第七课 文件存储
  • 原文地址:https://www.cnblogs.com/ret00100/p/1560821.html
Copyright © 2020-2023  润新知