zoukankan      html  css  js  c++  java
  • char,varchar,nchar,nvarchar

    学习于网络:

    1. char 和 varchar

       相同点:1位就是1个字节,每个英文字符和数字都占一个字节,而一个中文的字符会占两个字节。

       不同点:

                a. char是定长存储,如定义char(10),实际存储的值为'hello', Sql Server会自动补充空格,填满10位。[即没有达到10个字节,都要占去10个字节]

                b.varchar是可变长存储,实际存储值占了多少个字节就是多少个字节,不会以空格来填满。

    2. nchar 和 nvarchar

        相同点:1位就是2个字节,储数据时采用的是 Unicode元码,为了与其他多种字符的转换,如中文,音标等, 一个英文字符和一个中文字符所占的空间是相同的,都是两个字节。[即所有字符都占用两个字节]

        不同点:nchar是定长存储,nvarchar是可变长存储

    3.

    char,varchar    -- 最多8000个英文,4000个汉字[1位就是1个字节,定义varchar(100),即100位,100个字节,因1个汉字需要2个字节,故可以存储50个汉字]
    nchar,nvarchar --可存储4000个字符,无论英文还是汉字[1位就是2个字节,如定义nvarchar(4000),即有4000位,8000个字节,则可以存储4000个字符,无论英文还是汉字]

    4.

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

    如果使用 char 或 varchar:

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

    如果希望列中的数据值大小显著不同,请使用 varchar。

  • 相关阅读:
    与众不同 windows phone (50)
    与众不同 windows phone (49)
    重新想象 Windows 8.1 Store Apps (93)
    重新想象 Windows 8.1 Store Apps 系列文章索引
    重新想象 Windows 8.1 Store Apps (92)
    重新想象 Windows 8.1 Store Apps (91)
    重新想象 Windows 8.1 Store Apps (90)
    重新想象 Windows 8.1 Store Apps (89)
    重新想象 Windows 8.1 Store Apps (88)
    重新想象 Windows 8.1 Store Apps (87)
  • 原文地址:https://www.cnblogs.com/notebook2011/p/3017816.html
Copyright © 2011-2022 走看看