我想執行下面的查詢:當我在Oracle執行它如何解決在java中寫入數據定義操作?
String sql="create or replace view toprecords as select * from(select directory_name,file_name,sum(value) from tfidfvalues where directory_name =? group by(directory_name,file_name) order by(sum(value)) desc) where rownum<=10";
stmt = con.prepareStatement(sql);
stmt.setString(1, directory_names.get(x));
stmt.executeUpdate();
它工作正常,但是當我嘗試實現它在Java它顯示了以下錯誤:
java.sql.SQLException: ORA-01027: bind variables not allowed for data definition operations
SO如何克服這種異常?
*「當我在oracle中執行它時,它工作正常」* ......你在「oracle」中如何使用準備好的語句? –
錯誤很明顯,你不能在'DDL'操作中綁定變量 – nachokk
@BrianRoach在oracle意味着查詢工作正常,但在準備語句中嵌入時顯示錯誤 –