首页 > 数据库技术 > 详细

JDBC批量删除某一用户下的触发器

时间:2014-04-08 22:00:55      阅读:469      评论:0      收藏:0      [点我收藏+]

从另外一个地方导出来的表,再导入的时候,存在百把几十个触发器,用PL/SQL删老是报触发器不存在的异常,但是呢,用SQL查能查出来,删也能删掉。

决定用JDBC的循环来删这些。。。。

 

 

bubuko.com,布布扣
 1 public static void deleteTriggers() throws SQLException {
 2         Connection connection = getConnection();
 3 
 4         List<String> triggerNameList = new ArrayList<String>();
 5         String sql = "SELECT  TRIGGER_NAME  FROM ALL_TRIGGERS WHERE OWNER=‘NJZJLMS‘";//OWNER后的一定要大写,否则查不到东西
 6         Statement st = connection.createStatement();
 7         Statement st2 = connection.createStatement();
 8         ResultSet rs = st.executeQuery(sql);
 9         while (rs.next()) {
10             String triggerName = rs.getString("TRIGGER_NAME");
11             if (!triggerName.contains("=")) {
12                 triggerNameList.add(triggerName);
13             }
14         }
15         System.out.println("triggerNameList:" + triggerNameList.size());
16         String sql2 = "";
17         for (int i = 0; i < triggerNameList.size(); i++) {
18             System.out.println("triggerName:"+triggerNameList.get(i));
19         }
20         for (int i = 0; i < triggerNameList.size(); i++) {
21             sql2 = "drop trigger \"" + triggerNameList.get(i) + "\"";//这里triggername一定要用双引号,单引号无效
22             System.out.println("sql2:"+sql2);
23             st2.execute(sql2);
24         }
25         st.close();
26         rs.close();
27         connection.close();
28     }
bubuko.com,布布扣

 

JDBC批量删除某一用户下的触发器,布布扣,bubuko.com

JDBC批量删除某一用户下的触发器

原文:http://www.cnblogs.com/lucky2u/p/3652309.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!