nvarchar和varchar2_nvarchar是什么数据类型

nvarchar和varchar2_nvarchar是什么数据类型首先需要了解关于Unicode的知识,以下是百度百科对Unicode的解释。 统一码,也叫万国码、单一码(Unicode)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。 Unicode 是

nvarchar与varchar的不同

首先需要了解关于Unicode的知识,以下是百度百科对Unicode的解释。
       统一码,也叫万国码、单一码(Unicode)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。
       Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。
        说人话就是你用英文,我用中文,他用日文,但都想表示同一个东西,这时一个大哥站出来说:我来搞一个统一规则,以后你们都按照这个标准来,就不会发生跨平台、跨语言时出错的问题了。随后将产生了Unicode字符集。
        像这样统一编码,2个字节就已经足够容纳世界上所有的语言的大部分文字了。现在用的是UCS-2,即2个字节编码,而UCS-4是为了防止将来2个字节不够用才开发的。
这里又得引入字符和字节的知识,后面是菜鸟教程的简介,链接:https://www.runoob.com/w3cnote/byte-character.html
       一般在英文状态下一个字母或字符占用一个字节,一个汉字用两个字节表示。
       Unicode 编码中,一个英文为一个字节,一个中文为两个字节所以
varchar(n)
       长度为 n 个字节的可变长度且非 Unicode 的字符数据。n 必须是一个介于 1 和 8,000 之间的数值。存储大小为输入数据的字节的实际长度,而不是 n 个字节。
nvarchar(n)
       包含 n 个字符的可变长度 Unicode 字符数据。n 的值必须介于 1 与 4,000 之间。
具体存储,看下面的实验:
DECLARE
        @Str_varchar AS VARCHAR(8000)
SET
        @Str_varchar = “测试ABC123”
SELECT
        DATALENGTH(@Str_varchar) AS N”字节个数” ,
        LEN(@Str_varchar) AS N”字符数”

DECLARE
        @Str_nvarchar AS NVARCHAR(4000)
SET
        @Str_nvarchar = “测试ABC123”
SELECT
        DATALENGTH(@Str_nvarchar) AS N”字节个数” ,
        LEN(@Str_nvarchar) AS N”字符数”

img

       结论:在开发中我更推荐使用Nvarchar

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/6148.html

(0)
上一篇 2023-04-16
下一篇 2023-04-16

相关推荐

  • mysql group by 日期_MySQL的配置

    mysql group by 日期_MySQL的配置本文来自 codeday ,作者 codeday 我正在尝试从表中获取日志数据.我选择时间跨度的地方(“ maandag”到“ vrijdag”).这样可以得到我想要的结果,但是现在我得到的问题是每…

    2023-02-25
    150
  • 【巨杉数据库SequoiaDB】巨杉Tech |巨杉数据库的HTAP场景实践[通俗易懂]

    【巨杉数据库SequoiaDB】巨杉Tech |巨杉数据库的HTAP场景实践[通俗易懂]01 背景 由于业务形式的发展,越来越多的需求需要对交易数据进行实时分析,例如推荐、决策、监控等,传统的处理办法是使用ETL的方式把OLTP业务产生的数据同步到OLAP的数据数据库,导致了数据需要在…

    2023-02-09
    150
  • 索引 b+树_b+树索引和hash索引

    索引 b+树_b+树索引和hash索引索引原理及B树索引 http://hongyitong.github.io/2017/01/05/%E7%B4%A2%E5%BC%95%E5%8E%9F%E7%90%86%E5%8F%8AB%E6%A

    2023-02-27
    152
  • oracle 29283是什么错_数据库报错怎么处理

    oracle 29283是什么错_数据库报错怎么处理1、如下图查询此条流水的相关信息时,此条流水中的字符串(有汉字的)有可能会出问题,例如乱码,非法中文字符等 2、此时将要查询流水中,有可能出现非法中文字符的用to_nchar(“字段”)查询,如下图:

    2022-12-22
    143
  • Python的字典类型及其应用

    Python的字典类型及其应用Python字典是一种无序的、可变的数据类型,用于存储键值对(key:value)。字典的处理效率非常高,非常适合用于查找和处理大型数据集合。

    2024-03-06
    78
  • Python 中什么是鸭子类型?[亲测有效]

    Python 中什么是鸭子类型?[亲测有效]在本教程中,我们将学习鸭子类型。这是 Python 中的一个流行术语,来源于这样一句话:“如果它走路像鸭子,游泳像鸭子,看起来像鸭子,那么它很可能应该是一只鸭子。”

    2023-08-24
    140
  • Python自然语言处理利器之分词器实现

    Python自然语言处理利器之分词器实现分词器是自然语言处理(NLP)中的一项基本任务,即将文本分割成有意义的单元,例如语句中的词语或单词。在中文中,分词任务尤为重要,因为中文中没有明确的单词边界。分词器的好坏会直接影响后续的文本处理工作,所以在NLP领域分词器一直是一个比较热门的话题。

    2024-04-01
    76
  • Python工程师必备:深入理解weakref

    Python工程师必备:深入理解weakrefPython中,一个变量只要没有任何引用指向它,它就可以被GC(垃圾回收机制)回收,释放内存空间。但是,对于某些特殊情况,我们需要在一个变量的引用全部失效之后,手动回收该变量所占用的内存空间。这时,就需要使用Python的weakref模块。

    2024-08-15
    28

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注