java - 在 Java App 中删除 If Exists 查询

标签 java sql-server for-loop

我试过寻找类似的问题,但我能找到一个,所以我会发布一个!我正在创建一个 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 循环中。

最佳答案

IF EXISTS(select * from sysobjects where name='tblname') drop table tblname

关于java - 在 Java App 中删除 If Exists 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12262051/

相关文章:

java - 收到错误 Invalid Oracle URL specified : OracleDataSource. makeURL

JAVA使用类来同步线程之间的操作

java - 使用父类(super class)/继承/构造函数问题

sql-server - 如何在 transact sql 中执行相当于 "#define SomeValue 5"的操作?

c++ - 为什么变量声明和for循环的条件一样好用?

java - 使用 BroadcastReceiver 重启手机后如何获取 sharedPreference 值?

具有 XML 命名空间的 SQL Server 2005 - 查询多个节点和属性

sql-server - 避免连接失败时出现空指针

php - 在 PHP 中使用 Foreach 循环时邮件正文复制

node.js - 带有嵌套 promise 的循环