`
乾途Zane
  • 浏览: 13318 次
  • 性别: Icon_minigender_1
  • 来自: 长春
文章分类
社区版块
存档分类
最新评论

Oracle数据库中的varchar,varchar2,nvarchar,nvarchar2区别及用法

阅读更多

【varchar,varchar2

联系:

1. varchar/varchar2用于存储可变长度的字符串

比如 varchar(20),存入字符串'abc',

则数据库中该字段只占3个字节,而不是20个字节

2. size 的最大值是 4000,而最小值是 1,其值表示字节数,

比如 varchar(20)表示最大可以存放20个字节的内容


区别:

1. varchar2把所有字符都占两字节处理(一般情况下),

varchar只对汉字和全角等字符占两字节,数字,英文字符等都是一个字节;

2. VARCHAR2把空串等同于null处理,而varchar仍按照空串处理;
3. VARCHAR2字符要用几个字节存储,要看数据库使用的字符集,
比如GBK,汉字就会占两个字节,英文1个
如果是UTF-8,汉字一般占3个字节,英文还是1个。

但是一般情况下,我们都认为是两个字节处理,

因为oracle安装时候默认我们都选择GBK的编码格式,

但是我们在页面做输入字符串长度的校验的时候,

还是以数据库设计字段最大长度除3来作为最大长度

-----防止数据库移植时设置不同编码格式;

比如:VARCHAR2(10),一般情况下最多存放5个汉字,10个字符

--nvarchar,nvarchar2
联系:
1. nvarchar/nvarchar2用于存储可变长度的字符串
2. size 的最大值是 4000,而最小值是 1,其值表示字符的个数,而不是字节数
3. 这两种类型更适合存储中文


区别:
1.nvarchar中字符为中文则一般按2个字节计算,英文数字等按照一个自己计算
2.nvarchar2中所有字符均按照2个字节计算;
3.nvarchar2虽然更占空间,但是它有更好的兼容性,所有推荐使用;



VARCHAR2(size)

可变长度的字符串,其最大长度为size个字节;size的最大值是4000,而最小值是1;你必须指定一个VARCHAR2的size;

NVARCHAR2(size)

可变长度的字符串,依据所选的国家字符集,其最大长度为size个字符或字节;size的最大值取决于储存每个字符所需的字节数,其上限为4000;你必须指定一个NVARCHAR2的size;
分享到:
评论

相关推荐

    赤兔Oracle数据库恢复软件 v11.6.zip

    赤兔Oracle数据库恢复软件是一款专业好用的Oracle数据库抢修恢复软件。软件功能强大,持修复因各种原因造成的数据库无法打开或数据库删除后没有备份的问题,从而实现对Oracle数据库的抢修恢复,最大限度减少数据丢失...

    oracle数据库修复

    支持的数据类型包括:NUMBER, CHAR, VARCHAR2, NCHAR,NVARHCAR2, LONG, DATE, RAW, LONG RAW, BLOB, CLOB, TIMESTAMP (9i+) , BINARY FLOAT, BINARY DOUBLE (10g+) 全面支持LOB字段: 支持CLOB、NCLOB和BLOB CLOB...

    Oracle数据库SQL基本应用与介绍

    文字列型:CHAR、nchar、varchar2、nvarchar2、long 数值型:number、integer、float、int等。 日期型、期间型:date、timestamp、timestamp with time zone等。 Oracle数据库对象:cluster、数据库联接、触发器、...

    SQLServer中char、varchar、nchar、nvarchar的区别

    SQLServer中char、varchar、nchar、nvarchar的区别 SQLServer中char、varchar、nchar、nvarchar的区别.txt

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

    Sqlserver中char,nchar,varchar与Nvarchar的区别分析,使用sqlserver的朋友可以参考下。

    Oralce中VARCHAR2()与NVARCHAR2()的区别介绍

    主要给大家详细介绍了关于Oralce中VARCHAR2()与NVARCHAR2()的区别,文中先通过翻译官方的介绍进行区别总结,然后由一个实战示例代码进行演示,相信对大家的理解会很有帮助,有需要的朋友们下面来跟着小编一起看看吧...

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

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

    Oracle数据库恢复工具Oracle Database Unloader(ODU)3.09

    ODU全称为Oracle Database Unloader,是类似于Oracle的DUL的软件,用于直接从Oracle数据库的数据文件中获取表数据。在各种原因造成的数据库不能打开时,用于抢救数据,最大限度地减少数据丢失。 ODU有什么功能特点...

    sql中varchar和nvarchar的区别与使用方法

    问: sql server中的varchar和Nvarchar有什么区别啊,varchar好像是一个英文和一个汉字都站两个字节,而Nvarchar则是一个英文占一个字节,汉字占两个字节。可是这个对asp程序有什么影响? 答: varchar(n) 长度为 ...

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

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

    解决繁体-批量转化varchar为nvarchar

    因最近自己制作的软件需运行在简繁系统中,但数据库设计时...此脚本可批量处理数据库内所有char和varchar转换为nchar和nvarchar,已集成重建主键,约束,索引,此脚本没有启用事务,运行前请备份原数据库或手动增加事务

    深入char、varchar、text和nchar、nvarchar、ntext的区别详解

    本篇文章是对char、varchar、text和nchar、nvarchar、ntext的区别进行了详细的分析介绍,需要的朋友参考下

    SQL数据类型nchar_char_varchar与nvarchar区别

    nchar_char_varchar与nvarchar有何区别?

    Oracle 数据库查找替换工具

    可以在整个数据库中查找某个字符串。 支持 CHAR,VARCHAR NVARCHAR,CLOB,BLOB字段类型。 可批量查找,批量替换。 http://db.okof.net/dbr/

    ORACLE中的数据类型.doc

    ORACLE中的数据类型.doc 当你在数据库中创建数据表的时候,你需要定义表中所有字段的类型。ORACLE有许多种数据类型以满足你的需要。数据类型大约分为:character, number, date, LOB, 和RAW等类型。虽然ORACLE8i也...

    SQL中varchar和nvarchar的基本介绍及其区别

    varchar(n) 长度为 n 个字节的可变...那么varchar字段占2×2+6=10个字节的存储空间,而nvarchar字段占8×2=16个字节的存储空间。 如字段值只是英文可选择varchar,而字段值存在较多的双字节(中文、韩文等)字符时用nva

    仓库管理数据库设计.docx

    11 库存下限 int 4 12 作废 bit 1 13 条码 nvarchar 100 14 调价 bit 1 15 供货单位 nvarchar 40 16 产地 nvarchar 100 17 五笔码 varchar 10 18 拼音码 varchar 10 仓库管理数据库设计全文共15页,当前为第2页。...

Global site tag (gtag.js) - Google Analytics