我在這裏有一個奇怪的問題與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