我在这里有一个奇怪的问题与perl和DBI模块。我可以得到查询成功有时,但有时,当我添加一行代码被远程相关数据库访问之类的东西,我得到了一个错误说:DBD :: Oracle和DBI错误perl
DBD::Oracle::st fetchrow_array failed: ERROR no statement executing (perhaps you need to call execute first) [for Statement "select * from (...)"] at script.pl line 18.
我验证用sqlplus我的选择命令在这里有没有问题(当然,这就是为什么我说剧本有时工作!)
如果我在perl脚本选择命令后加分号,我得到了另一个错误说:
DBD::Oracle::db prepare failed: ORA-00911: invalid character (DBD ERROR: error possibly near <*> indicator at char 970 in 'select * from (...)<*>;') [for Statement "select * from (...);"] at script.pl line 13.
任何人都可以请告诉我他发生了什么事回覆?是否因为sql命令太长(〜900个字符)?
您应该向我们展示脚本 - 或者前20行左右。有可能是你在循环中做了一些干扰你的陈述的事情。您是否阅读过文档?看看'perldoc DBD :: Oracle'或[DBD :: Oracle](http://search.cpan.org/perldoc?DBD::Oracle);还有'perldoc DBI'或[DBI](http://search.cpan.org/perldoc?DBI)。一些驱动程序在同时激活两个语句句柄或类似规则方面存在很多限制。 – 2011-05-12 04:18:14