gpt4 book ai didi

java - 删除数据库所有表

转载 作者:行者123 更新时间:2023-12-02 06:01:28 27 4
gpt4 key购买 nike

我有一个名为KG的数据库。我想使用java删除此数据库中的所有表,然后再次创建它们(目的是截断所有数据。按照stackoverflow上某人的建议删除表)。我需要的是一个可以删除所有表的命令。来自 this链接我接受了这个命令

Drop Database KG

此命令不适用于我的情况。还有其他方法可以删除所有表吗?

已编辑

我正在使用的代码是

   {
dbConnect();
try {
stmt = c.createStatement();
sql = "Drop Database KG";
stmt.executeUpdate(sql);
c.commit();
stmt.close();
c.close();
System.out.println("Database Deleted!");
} catch (SQLException e) {
System.err.println("Delete Database Query: " + sql);
System.err.println(e.getClass().getName() + ": " + e.getMessage());
System.exit(0);
}
}

public void dbConnect() {
try {
Class.forName("org.sqlite.JDBC");
c = DriverManager.getConnection("jdbc:sqlite:KG.s3db");
c.setAutoCommit(false);
System.out.println("Connected");
} catch (ClassNotFoundException | SQLException e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
System.exit(0);
}
}

我得到的错误是

Delete Database: Drop Database KG

java.sql.SQLException: near "Database": syntax error

注意:

我已经通过编写大量代码行实现了这一目标。使用的命令

Drop Table If Exists tablename

循环执行此操作。

最佳答案

您无法删除 SQLite 数据库。只需删除数据库文件并重新打开数据库即可。

关于java - 删除数据库所有表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22637913/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com