我对oracle还是很陌生,今天我发现了有关数据类型 VARCHAR2 的信息,我想了解更多有关它的信息,并在遇到问题的Google上搜索Google。
我浏览了有关数据类型的几篇文章,并且发现了对 VARCHAR2 的一些相反的描述。
说明1:
说明2:
如您所见,这有点令人困惑。 VARCHAR2 是要指定最大列长还是最大字符长?有人请告诉我哪个是正确的?
答案 0 :(得分:4)
这取决于您的Oracle版本,但是这两篇文章大多都不正确。
在对列进行DECLARE时,可以将声明的长度显式声明为字节或字符,也可以使用会话的默认值隐式声明。
此外,最大长度为4000字节,不能为字符。即使您声明VARCHAR2(4000 CHAR),该列也不能存储超过4000个字节。如果全部为单字节,它将存储4000个字符,否则将存储少于4000个字符。
答案 1 :(得分:0)
说明2:
这是正确的
VARCHAR2数据类型存储长度可变的字符串。当您使用VARCHAR2列创建表时,请为最大字符串长度(以字节或字符为单位)在1到4000字节之间 VARCHAR2列。
答案 2 :(得分:0)
=> varchar2数据类型与varchar数据类型相同。 =>具有可变长度的数据类型。 例如“名称varchar2(20)”并传递名称的值为“ Ram”,因此,LENGTH(名称)为3 NOT 20。 =>其内部数据类型仅由oracle服务器管理。 =>即使您声明varchar oracle隐式转换为varchar2