在sql plus(oracle 9i)中用variable关键字声明的变量?
我试图声明 g_num ,数字数据类型的大小会给出错误,但在 varchar2,char 的情况下不会。
variable g_name varchar2(5);//correct accept size for varchar 2
variable g_num number(23);//Gives an error
" VAR[IABLE] [ <variable> [ NUMBER | CHAR | CHAR (n [CHAR|BYTE]) |
VARCHAR2 (n [CHAR|BYTE]) | NCHAR | NCHAR (n) |
NVARCHAR2 (n) | CLOB | NCLOB | REFCURSOR ] ]"
请建议!
I am trying to declare g_num ,number data type with size it gives an error but in case of varchar2,char it does not.
variable g_name varchar2(5);//correct accept size for varchar 2
variable g_num number(23);//Gives an error
" VAR[IABLE] [ <variable> [ NUMBER | CHAR | CHAR (n [CHAR|BYTE]) |
VARCHAR2 (n [CHAR|BYTE]) | NCHAR | NCHAR (n) |
NVARCHAR2 (n) | CLOB | NCLOB | REFCURSOR ] ]"
Please suggest!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
答案已经在您的错误消息中:
NUMBER
不允许 SQL*Plus 中的精度。作品。
以下是 SQL*Plus 中的包含有效变量声明的列表。
文档说:
不幸的是,我不知道为什么不能使用 SQL*Plus 指定精度,但我已经能够通过测试存储
1.0E+125
。你需要精确度来做什么?
The answer is already in your error message:
NUMBER
does not allow a precision in SQL*Plus.works.
Here is a list with valid variable declarations in SQL*Plus.
The documentation says:
Unfortunately I don't know why you can't specify precision with SQL*Plus, but I have been able to store
1.0E+125
with my tests.What do you need precision for?