• SQL Server中 char与varchar  


    固定长度(char)与可变长度(varchar)字符数据类型


    char[(n)]
    长度为n个字节的固定长度且非Unicode的字符数据。n必须是一个介于1和8,000之间的数值。存储大小为n个字节。char在SQL-92中的同义词为character。


    varchar[(n)]
    长度为n个字节的可变长度且非Unicode的字符数据。n必须是一个介于1和8,000之间的数值。存储大小为输入数据的字节的实际长度,而不是n个字节。所输入的数据字符长度可以为零。varchar在SQL-92中的同义词为char varying或character varying。

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

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

    将为使用char或varchar的对象被指派数据库的默认排序规则,除非用COLLATE子句另外指派了特定的排序规则。该排序规则控制用于存储字符数据的代码页。

    支持多语言的站点应考虑使用Unicode nchar或nvarchar数据类型以尽量减少字符转换问题。如果使用char或varchar:

    如果希望列中的数据值大小接近一致,请使用char。


    如果希望列中的数据值大小显著不同,请使用varchar。
    如果执行CREATE TABLE或ALTER TABLE时SET ANSI_PADDING为OFF,则一个定义为NULL的char列将被作为varchar处理。

    当排序规则代码页使用双字节字符时,存储大小仍然为n个字节。根据字符串的不同,n个字节的存储大小可能小于n个字符。

  • 相关阅读:
    Inner Classes with TypeScript
    设计模式(一)
    C++定义构造函数必须使用初始化列表的场合
    制作Linux下程序安装包——使用脚本打包bin、run等安装包
    Windows下将程序打包为安装包(最为简易的方式)
    在Linux中查看文件的编码及对文件进行编码转换
    libpcap文件格式分析
    static_cast, dynamic_cast, const_cast
    字符1与数字1
    Linux下的多线程编程
  • 原文地址:https://www.cnblogs.com/dongzhiquan/p/1994669.html
Copyright © 2020-2023  润新知