【发布时间】:2009-10-19 13:07:15
【问题描述】:
我有一个包含 Number 类型列的表
create table tmp (
/*other fields*/
some_field Number
)
在 PL SQL 脚本中,我想将该字段转换为 varchar。但是,我不知道它的长度,所以我得到了一个例外
异常消息是 ORA-06502: PL/SQL:数字或值错误: 字符串缓冲区太小
v_some_field varchar(21);
/*...*/
v_some_field := TO_CHAR(some_field,'999999999999999999999');
我应该如何声明 v_some_field 缓冲区?将其设置为 varchar(32767) 似乎很粗鲁,有没有其他选择?
【问题讨论】: