【问题标题】:Android- Must I check if table exists in SqliteHelper.onCreate()?Android-我必须检查 SqliteHelper.onCreate() 中是否存在表吗?
【发布时间】:2013-12-31 11:49:45
【问题描述】:

我将数据库创建表从 Applcation.onCreate 移动到 SqliteHelper.onCreate。

在应用程序中,我必须检查表是否已经存在。 但是在 SqliteHelper 中,由于它是在创建数据库文件时调用的,所以我认为没有必要使用“IF NOT EXISTS”

CREATE TABLE {TABLE_NAME} IF NOT EXISTS (_id bla bla);

我可以把这个sql改成下面吗?

CREATE TABLE {TABLE_NAME} (_id bla bla)

编辑 ---------

我问SqliteHelper.onCreate 是否可以多次调用。

【问题讨论】:

标签: android android-sqlite


【解决方案1】:

onCreate() 只会在数据库不存在时被调用。因此添加IF NOT EXISTS 是不必要的,只会让阅读和维护代码的人感到困惑。

另外,语法是CREATE TABLE IF NOT EXISTS table_name

【讨论】:

    【解决方案2】:

    是的,你可以。但总是鼓励第一种方法!

    【讨论】:

    • 谢谢。我想这就是答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多