Oracle中存储过程字符串长度问题

我用的Oracle 9i 在一个存储过程中,我声明了一个变量,其数据类别和长度为VARCHAR2(32000)。但在该存储过程的跟踪过程中,我发现,只要给这个变量赋予的字符长度超过1000,该变量就显示'undeclared identifier ',编译没有问题这是为什么?补充:我用的TOAD工具来写存储过程的
最新回答
紫南

2024-11-05 10:20:07

VARCHAR2类型变量,在plsql中的范围是1 ~ 32767。所以编译肯定是能够通过的。
而且就算是报错,也应该在编译时出现。
执行时不应该出现你描述的问题,最好把你的代码发出来。还有报错截图。
咱ゝ么傀゛

2024-11-05 06:11:30

感觉不是oracle的问题呢
如果是oracle报的错 会有ora-00000这样的错误代码出现。
还是贴一下那一段的代码和完整的报错信息吧
言笑往事

2024-11-05 10:34:44

varchar2的最大程度是4000.
你最好换一个类型比如long或者clob
错在情深

2024-11-05 02:22:38

ORACLE10G里面定义varchar2的时候最大允许定义到4000,如果更大的时候都是使用clob的 ,不知道对你有帮助没
仲夏柠叶香

2024-11-05 07:54:02

你工具的字符串缓冲默认是1000吧