我编写了一个程序来使用java代码运行oracle(oracle11g)脚本,但是当我运行程序时它给出了错误:
ORA-00900:"invalid SQL statement".
查询是:
execute dbms_metadata.set_transform_param (dbms_metadata.session_transform,'STORAGE',false);
execute dbms_metadata.set_transform_param (dbms_metadata.session_transform,'TABLESPACE',false);
execute dbms_metadata.set_transform_param (dbms_metadata.session_transform,'SEGMENT_ATTRIBUTES', false);
execute dbms_metadata.set_transform_param (dbms_metadata.session_transform,'REF_CONSTRAINTS', false);
execute dbms_metadata.set_transform_param (dbms_metadata.session_transform,'CONSTRAINTS', false);
代码:
String Query = "execute dbms_metadata.set_transform_param (dbms_metadata.session_transform,'STORAGE',false);"
Statement st = con.createStatement();
st.executeUpdate(Query);
最佳答案
我认为你需要通过java中的匿名 block 调用该过程
使用 begin ... end
而不是 execute
String Query = "begin dbms_metadata.set_transform_param (dbms_metadata.session_transform,'STORAGE',false); end;"
Statement st = con.createStatement();
st.executeUpdate(Query);
关于java - 使用java代码运行oracle脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33867776/