String strSql="CREATE OR REPLACE PROCEDURE TEST_PRC is \r\n"+
         "begin\r\n"+
         "null;\r\n"+
         "end TEST_PRC;\r\n";
        PreparedStatement stat=conn.prepareStatement(strSql);
        stat.execute();
我这样子试了一下,不行啊。

解决方案 »

  1.   

    写一个存储过程
    把语句传入,
    通过动态sql创建即可。
      

  2.   

    这样子固然可以,但又没有可能直接通过JDBC创建的呢?
    否则的话,那么多的PL/SQL开发环境都是怎么实现创建function,procedure或者package的呢?
      

  3.   

    前台执行dml方式与ddl的方式是否有所不同呢?
    你试一下 'alter table tbname modify(col ...)'看能不能执行?
      

  4.   

    我试过了,把\r\n改成\n就行了,看来是换行引起的问题。