varchar ,varchar2和nvarchar2的区别
--os:centos 5.6
--oracle version: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
--server characterset:AMERICAN_CHINA.ZHS16GBK
--drop table idb_varchar;
--drop table idb_varchar2;
--drop table idb_nvarchar2;
create table idb_varchar(
id number,name varchar(10));
insert into idb_varchar values(1,'');
insert into idb_varchar values(2,' ');
insert into idb_varchar values(3,'a');
insert into idb_varchar values(4,lpad('中',10,'中'));
insert into idb_varchar values(4,lpad('b',10,'b'));
create table idb_varchar2
(id number,name varchar2(10));
insert into idb_varchar2 values(1,'');
insert into idb_varchar2 values(2,' ');
insert into idb_varchar2 values(3,'a');
insert into idb_varchar2 values(4,lpad('中',10,'中'));
insert into idb_varchar2 values(5,lpad('b',10,'b'));
create table idb_nvarchar2(id number,name nvarchar2(10));
insert into idb_nvarchar2 values(1,'');
insert into idb_nvarchar2 values(2,' ');
insert into idb_nvarchar2 values(3,'a');
insert into idb_nvarchar2 values(4,lpad('中',20,'中'));
insert into idb_nvarchar2 values(5,lpad('b',10,'b'));
select id,name,length(name),lengthb(name) from idb_varchar;
select id,name,length(name),lengthb(name) from idb_varchar2;
select id,name,length(name),lengthb(name) from idb_nvarchar2
从网上搜索到的关于oracle中varchar,varchar2和nvarchar2的区别
from:http://wenda.so.com/q/1363325264061729
1.varchar2把所有字符都占两字节处理(一般情况下),varchar只对汉字和全角等字符占两字节,数字,英文字符等都是一个字节;
varchar2没有把所有字符都按照两字节处理
2.VARCHAR2把空串等同于null处理,而varchar仍按照空串处理;
都是把空串等同于null处理
3.VARCHAR2字符要用几个字节存储,要看数据库使用的字符集,
这一点不知怎么理解
from:http://www.cnblogs.com/flyingfish/archive/2010/01/15/1648448.html
1、NVARCHAR2(10)是可以存进去10个汉字的,如果用来存英文也只能存10个字符。
完全正确
2、而VARCHAR2(10)的话,则只能存进5个汉字,英文则可以存10个。
完全正确
蓝色字体为我的验证结论。
通过以上验证来看。我还是没发现varchar和varchar2有什么区别。除了官方文档不建议使用varchar
varchar和varchar2还有些什么区别呢?
...全文
相关推荐
Oralce中VARCHAR2()与NVARCHAR2()的区别介绍
主要给大家详细介绍了关于Oralce中VARCHAR2()与NVARCHAR2()的区别,文中先通过翻译官方的介绍进行区别总结,然后由一个实战示例代码进行演示,相信对大家的理解会很有帮助,有需要的朋友们下面来跟着小编一起看看吧。
Sqlserver中char,nchar,varchar与Nvarchar的区别分析
Sqlserver中char,nchar,varchar与Nvarchar的区别分析,使用sqlserver的朋友可以参考下。
SQL2005中char nchar varchar nvarchar数据类型的区别和使用环境讲解
有人讨论char nchar varchar nvarchar这几个数据类型的区别跟实际使用情况,很多人都搞不清楚究竟哪个场景使用哪个数据类型,下面用代码解释一下
基于SQL Server中char,nchar,varchar,nvarchar的使用区别
对于程序中的一般字符串类型的字段,SQL Server中有char、varchar、nchar、nvarchar四种类型来对应,那么这四种类型有什么区别呢,这里做一下对比
oracle char,varchar,varchar2的区别和使用方法
oracle char,varchar,varchar2的区别和使用方法 非本人总结,但是说的挺好的! 欢迎下载


基础和管理
