日期:2014-05-16  浏览次数:20848 次

请教OracleType里面没有Boolean的解决办法
存储过程里面的一个参数定义为boolean,现在用c#调用这个存储过程,可构造参数的时候OracleType没有合适的数据类型,请教怎么处理?

ps:存储过程代码不能修改。

尝试过int16,int32,VarChar,number,char等都失败了。如果这个问题是无解的,那么是微软的开发工具的问题还是oracle的问题?如果是oracle的问题,就不应该让boolean编译通过!

期待各位的回复,谢谢。

------解决方案--------------------
引用:
前提就是oracle里面存储过程的代码是不可以修改的,如果我修改了,其他人已经写好的部分岂不是不兼容了?

否则直接将存储过程的代码修改为int不就万事大吉了吗。

比如用delphi的unidac组件调用就没任何问题,偏偏c#不行。


可以写一个新的procedure封装旧的procedure,这样不会破坏其他程序。
我在#4提出的修改是针对你的c#代码,并不是pl/sql.

------解决方案--------------------
Boolean is not an Oracle Datatype. But a Pl-sql Datatype
只能改过程