VS调用Oracle存储过程输出字符串出现截取现象的原因和解决方法

记得在大约半个月前,小编遇到了一个棘手的问题:详细可用参考我的提问:http://q.cnblogs.com/q/81154/

 

在PLSQL中执行存储过程,输出的字符串位数是正确的结果,如下图。

但是在我的VS 界面调用存储过程,我调试的时候,发现带字符串输出的 OracleType 都会被截取一段,导致我无法测试程序,网上有人说字符串位数不够,没遇到过吧?我都设置100还不够。如下图。

为了探明这个问题,后面我上上下下把数据库装了10遍(可能更多),发现没改变。终于周末我把系统重装了,后来我发现,这是数据库版本位数不兼容导致的。

后面自己仔细一(ˇ?ˇ) 想~:也有道理,本来64位的,结果只用了32来展示。在Client 32 和 Server 64 数据传递很可能会出现意想不到的问题。

 

后面我发现更多的是 装了 32位的 ODTWITHODAC 更容易导致上诉问题。解决方法是 安装一个64位的odt ,这样就可以解决问题。而我就是这么做的,有这方面疑问的可用咨询我。

 

posted @ 2016-04-19 17:58  艾野草  阅读(884)  评论(0编辑  收藏  举报