为了账号安全,请及时绑定邮箱和手机立即绑定

请问在oracle中varchar和varchar2有什么区别?

/ 猿问

请问在oracle中varchar和varchar2有什么区别?

哈士奇WWW 2019-09-14 12:11:50

在oracle中varchar和varchar2有什么区别?


查看完整描述

4 回答

?
慕斯王

区别点:

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

  • varchar2把空串等同于null处理,而varchar仍按照空串处理。

  • varchar2把所有字符都占两字节处理(一般情况下),并且字符要用几个字节存储,要看数据库使用的字符集。

oracle数据库详解

简介

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。

软件技术特点

技术层次深:如果期望进入IT服务或者产品公司(类似毕博、DELL、IBM等),Oracle技术能够帮助提高就业的深度。Oracle技术已经成为全球每个IT公司必选的软件技术之一,熟练掌握Oracle技术能够为从业人员带来技术应用上的优势,同时为IT技术的深入应用起到非常 关键的作用。掌握 Oracle技术,是IT从业人员了解全面信息化整体解决方案的基础。

总结

oracle数据库是由美国甲骨文设计的一款关于关系数据库管理的软件,具有强大且全面的数据管理功能,学习起来也比较繁琐,一旦学有所成,就是这方面的精英。在IT行业,这款软件的用处很大,任何对于数据管理有要求的企业都会多多少少用到一些相关的内容。




查看完整回答
反对 回复 2019-09-19
?
慕仙森

1.varchar2把所有字符都占两字节处理(一般情况下),varchar只对汉字和全角等字符占两字节,数字,英文字符等都是一个字节;
2.VARCHAR2把空串等同于null处理,而varchar仍按照空串处理;
3.VARCHAR2字符要用几个字节存储,要看数据库使用的字符集,
大部分情况下建议使用varchar2类型,可以保证更好的兼容性。

查看完整回答
反对 回复 2019-09-19
?
大话西游666

CHAR char数据类型存储固定长度的字符值。一个CHAR数据类型可以包括1到2000个字符。如果对CHAR没有明确地说明长度,它的默认长度则设置为1。如果对某个CHAR类型变量赋值,其长度小于规定的长度,那么Oracle自动用空格填充。 VARCHAR2 存储可变长度的字符串。虽然也必须指定一个VARCHAR2数据变量的长度,但是这个长度是指对该变量赋值的最大长度而非实际赋值长度。不需用空格填充。最多可设置为4000个字符。因为VARCHAR2数据类型只存储为该列所赋的字符(不加空格),所以VARCHAR2需要的存储空间比CHAR数据类型要小。


查看完整回答
反对 回复 2019-09-19
?
函数式编程

联系:
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个字符


查看完整回答
反对 回复 2019-09-19

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信