繁体   English   中英

如何在Java JDBC的帮助下运行多个Delete sql语句?

[英]How to run multiple Delete sql statement with the help of java JDBC?

我想一次删除三个不同的表,并为此创建了一个非常简单的SQL语句,如下所示:

DELETE FROM tbl1;DELETE FROM tbl2;DELETE FROM tbl3;

当我直接在mysql中运行但从Java中运行时,此语句正确!

我的Java代码:

public boolean clearTables()
     {
         boolean ans = false;
         if (con != null)
         {
             try
             {
                String deleteQuery = "    DELETE FROM tbl1;DELETE FROM tbl2;DELETE FROM tbl3;";
                Statement st = con.createStatement();
                st.execute(deleteQuery);

                ans = true;
             }
             catch (Exception e) 
             {
                e.printStackTrace();
                ans= false;
             }
         }
         return ans;
     }

如何在Java中一次运行多个SQL语句?

使用addBatch然后executeBatch

   Statement st = con.createStatement();
   st.addBatch("DELETE FROM tbl1");
   st.addBatch("DELETE FROM tbl2");
   st.addBatch("DELETE FROM tbl3");
   int[] results = st.executeBatch();

然后results将包含一个数组,其中包含从每个表中删除的行数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM