我试图声明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 ] ]"
请建议!
答案 0 :(得分:4)
答案已在您的错误消息中:NUMBER
不允许SQL * Plus中的精度。
VARIABLE g_num NUMBER;
作品。
这是SQL * Plus中的list with valid variable declarations。
<强>号强>
创建一个NUMBER类型的固定长度的变量。
不幸的是,我不知道为什么你不能用SQL * Plus指定精度,但是我已经能够将1.0E+125
与我的测试一起存储。
你需要什么精度?