关于oracle中varchar2的长度范围

varchar2有两个最大长度:一个是在字段类型4000;一个是在PL/SQL中变量类型32767.准确的说是在schema级varchar的长度类型限制为4000


案例:

CREATE OR REPLACE FUNCTION VAR_TEST RETURN VARCHAR2 IS

  T_COL VARCHAR2(32767); --plsql变量的varchar2长度范围为1到32767

BEGIN

  T_COL := LPAD('a', '4001', '1');

  RETURN T_COL;

END;

SELECT VAR_TEST FROM DUAL;

ORA-06502: PL/SQL: 数字或值错误 :  字符串缓冲区太小
ORA-06512: 在 "TEST.FUNNY", line 6

在长度超过限制的时候可以用clob类型来代替varcahr2类型作为函数返回值

来源:http://www.blogjava.net/wangbing/archive/2010/03/15/315482.html

你可能感兴趣的:(关于oracle中varchar2的长度范围)