【发布时间】:2012-09-04 21:08:48
【问题描述】:
我已经尝试寻找类似的问题,但我找到了一个,所以我会发布一个!我正在创建一个为我删除某些表的 Java 程序,MySQL 看起来像这样:
String[] tablesToDrop = new String[]{tableName,tableName2};
Connection con = DriverManager.getConnection(dbUrl, userName,password);
Statement stmt = con.createStatement();
for (int i = 0; i < tablesToDrop.length; i++) {
System.out.println("Dropping " + tablesToDrop[i] + " Table..");
stmt.executeUpdate("DROP TABLE IF EXISTS " + tablesToDrop[i]);
}
我的问题是这对于 SQL Server 2008 版本的外观如何? stmt.executeUpdate(???); 部分?我想删除一个表(如果存在),从数组中获取表名并将其传递到 for 循环中。
【问题讨论】:
-
不是 sqlserver 专家,而是sqlservercentral.com/forums/Topic478289-338-1.aspx
-
虽然给出的答案会奏效,但我建议允许您的应用程序删除表是不好的做法并且具有潜在的危险,允许应用程序过多地访问数据库。我建议将临时表或表变量用于临时数据结构。
-
这很奇怪,这家伙编辑了我的帖子,以至于看起来与 Java 无关,但确实如此。那家伙甚至阅读了我的帖子还是只是随机更改了标签? -.-
标签: java sql-server for-loop