ora-01036: 非法的变量名/编号

Posted gavanwanggw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ora-01036: 非法的变量名/编号相关的知识,希望对你有一定的参考价值。

一个存储过程,调试时没问题,可是在C#里调用就报错:

ora-01036: 非法的变量名/编号

百度了一番,据说由于非常多个错误都会报这个错,没发现合适我的(參数顺序匹配,大小匹配等),仅仅好自己再试试:

我调用的方法:

                OracleParameter[] parameters ={
                                 new OracleParameter("vipno",OracleType.VarChar,50),
                                new OracleParameter("point",OracleType.VarChar,30),
                                 new OracleParameter("str_reason ",OracleType.VarChar,20),  //str_reason 我这里多了个空格,
                                new OracleParameter("myresult",OracleType.Int32)
                                                };

最后没辙仅仅好仅仅保留一个參数,去调试,即存储过程仅仅有第一个參数,我调用也仅仅用一个參数,其它參数凝视掉,经过測试没有问题。

大概第三个參数时发现了问题,我的“”里面和存储过程的第三个參数相比多了一个空格,就是由于这个空格,导致出现了这个不好查找的错误。


问题到此也就攻克了。


事实上说究竟还要要大家要有方法,多去尝试,互相鼓舞之。

以上是关于ora-01036: 非法的变量名/编号的主要内容,如果未能解决你的问题,请参考以下文章

ORA-01036;非法变量名称/编号

来自 .Net 的 Oracle 参数化查询

传入 Python 列表时的非法变量名称/编号

使用 cx_Oracle 中 csv 文件中的变量更新数据库

SPSS13.变量名包含非法的首字符 为啥

以下哪个变量名是非法的? javascript