`

CHAR与NCHAR数据类型

阅读更多
CHAR与NCHAR在Oracle数据库是常用的类型,不过两种数据类型是互相不兼容的,这里大概简要谈一下这2种数据类型吧。

在Oracle中,CHAR类型是一种固定长度的字符串类型,最大长度是2000个byte,在这里要注意了,是2000个byte,并不是2000个字符的意思。1个字符在Oracle中可能是1个byte到4个byte不等,这个要看数据库的设置了。这个是数据库中有一个参数NLS_LENGTH_SEMANTICS来决定的。CHAR类型有一个特点,就是字符长度总是固定的,也就是说,如果你声明了一个COLUMN类型为CHAR(10),如果你只插入了1个字符,那么系统也会自动在这个字符的右边补上9个空格,Oracle的CHAR类型中,补空格是在右侧补的。但是如果你插入了11个字符,那么就会系统出错,而不会自动截成10个字符。

NCHAR数据类型可能不是经常见到,不过在许多数据库设计中也有了。NCHAR数据类型是专为UNICODE字符而设计的,而且只能插入UNICODE字符串,NCHAR也是最大长度为2000个byte,不过每个字符占多少个byte,是由数据库的国际字符集决定的。同样的,如果插入字符不足定义的长度,比如NCHAR(10)类型中只插入了1个字符,系统会自动在右侧补充9个空格。

NCHAR和CHAR之间是不能直接互相兼容的,而是要通过Oracle的函数或者语法进行转换,比如说从NCHAR转成CHAR是要用TO_CHAR函数进行转换,而CHAR转换为NCHAR,比如说'ABCDE'这个CHAR字符串,则要通过N'ABCDE'来进行表示,也就是说前面要有一个N这个特殊字符,表示是NCHAR类型。
分享到:
评论

相关推荐

    SQL中char和nchar的区别.doc

    在数据库开发中,字符类型是非常重要的数据类型之一。字符类型的正确选择对于提高数据库性能、确保数据一致性具有重要意义。本文将深入探讨SQL Server中两种常见的字符类型:`CHAR`与`NCHAR`,通过历史背景和技术...

    mssql数据库 char vchar nchar nvchar异同

    在MSSQL数据库系统中,数据类型的选择对于确保数据的正确存储与高效查询至关重要。本文将详细介绍`CHAR`、`VARCHAR`、`NCHAR`与`NVARCHAR`这四种字符类型之间的区别,帮助读者更好地理解它们的特点及适用场景。 ###...

    SQL Server数据类型char、nchar、varchar、nvarchar的区别浅析

    3. **nchar数据类型**: - 固定长度的Unicode字符数据类型,长度范围是1到4,000个字符,占用双倍的存储空间。 - 适用于需要存储多种语言字符的情况,确保兼容性。 - 虽然空间占用较大,但确保了每个字符都能被...

    Sqlserver中char,nchar,varchar与Nvarchar的区别分析

    在SQL Server中,字符数据类型是用来存储文本信息的,包括char、nchar、varchar和nvarchar。这四个数据类型都有各自的特点和用途,下面我们逐一详细分析它们的区别。 1. **char类型**: - char是固定长度的字符...

    SQL2005中char nchar varchar nvarchar数据类型的区别和使用环境讲解

    本文将详细介绍char、nchar、varchar和nvarchar这四种数据类型的区别以及它们的适用环境。 1. **char**: - char是一种固定长度的非Unicode字符数据类型,长度范围为1到8,000个字节。 - 不论存储的数据实际长度...

    SQL数据类型nchar_char_varchar与nvarchar区别

    nchar_char_varchar与nvarchar有何区别?

    基于SQL Server中char,nchar,varchar,nvarchar的使用区别

    对于程序中的一般字符串类型的字段,SQL Server中有char、varchar、nchar、nvarchar四种类型来对应,那么这四种类型有什么区别呢,这里做一下对比。 1.定长或变长 所谓定长就是长度固定,当要保存的数据长度不够时将...

    Java数据类型和MySql数据类型对应一览

    Java 数据类型和 MySql 数据类型对应一览 在 Java 编程语言中,数据类型是指变量或函数可以持有的值的类型。 MySql 数据库也具有其自己的数据类型,用于存储和管理数据。在本文中,我们将对 Java 数据类型和 MySql ...

    SQL数据库数据类型说明

    SQL 数据库中的字符型数据类型包括 char、varchar、text、nchar 和 nvarchar 等。 * char 数据类型:用于存储指定长度的定长非统一编码型的数据。 * varchar 数据类型:用于存储变长的非统一编码型字符数据。 * ...

    char的几种类型

    在SQLServer中,字符数据类型是数据库设计与开发中不可或缺的一部分,它们用于存储文本信息,如姓名、地址或产品描述等。根据《数据库技术及应用》一书的介绍,SQLServer提供了多种字符类型来满足不同的需求,其中...

    char、varchar、nchar、nvarchar四种类型的区别

    ### char、varchar、nchar、nvarchar 四种类型的区别 在数据库设计中,选择合适的字段类型对于确保数据的准确性和提高查询效率至关重要。对于字符类型的字段,SQL Server 提供了 `char`、`varchar`、`nchar` 和 `...

    SQL SERVER的数据类型自定义

    ### SQL Server 数据类型详解与自定义数据类型创建 在数据库设计与管理中,理解并熟练掌握数据类型至关重要,因为它们直接影响到数据存储的效率、安全性和查询性能。SQL Server 提供了丰富的内置数据类型,同时也...

    SQL数据类型与C#数据类型转换

    ### SQL数据类型与C#数据类型的转换 在开发过程中,我们经常会遇到需要将数据库中的数据类型映射到编程语言中的情况。特别是在使用SQL Server作为后端数据库与C#进行交互时,了解这两种环境下的数据类型及其对应...

    SQL2005 数据类型

    Nchar数据类型用于存储定长的Unicode字符数据,每个字符占用2字节,最多可存储4000个字符。这种类型支持广泛的国际字符集,适用于多语言环境。 #### Ntext (统一编码字符型) Ntext数据类型用于存储大量Unicode字符...

    SqlServer数据库的数据类型

    - **Nchar[(n)]**、**Nvarchar[(n)]**、**Ntext**:这些数据类型专门用于处理Unicode字符数据,与对应的非Unicode版本相比,它们每个字符占用的空间更大(2个字节而不是1个字节),但能够支持更广泛的字符集。...

Global site tag (gtag.js) - Google Analytics