Java-Sqlite截断所有数据库表

时间:2014-03-24 13:36:58

标签: java sql sqlite netbeans

如何使用Java截断Sqlite数据库中的所有表?

我知道我可以做到这一点

{
    ...
     String table_name1 = "Delete From table_name1";
     String table_name2 = "Delete From table_name2";
     String table_name3 = "Delete From table_name3";
     String table_name4 = "Delete From table_name4";
     String table_name5 = "Delete From table_name5";
     stmt.executeUpdate(table_name1);
    ...
 }

我可以执行所有这些字符串来完成任务,但它增加了代码行。

有没有办法用一个命令截断数据库中的所有表,而无需单独输入名称?

2 个答案:

答案 0 :(得分:5)

sqlite中没有TRUNCATE。您可以使用DELETE FROM <tablename>删除所有表格内容。您需要为每个表单独执行此操作。

但是,如果您对删除所有数据感兴趣,请考虑删除数据库文件并创建新数据。

答案 1 :(得分:2)

SQLiteTRUNCATE TABLE中没有SQLite命令,但您可以使用SQLite DELETE命令从现有表中删除完整数据,但建议使用DROP TABLE 1}}命令删除完整表并再次重新创建它。

尝试

{
    ...
     String table_name1 = "DELETE FROM table_name1";
     String table_name2 = "DELETE FROM  table_name2";
     String table_name3 = "DELETE FROM table_name3";
     String table_name4 = "DELETE FROM table_name4";
     String table_name5 = "DELETE FROM table_name5";
     stmt.executeUpdate(table_name1);
   ...
}