gpt4 book ai didi

android - 如何在仅包含 ID 列的 SQLite 表中创建新行?

转载 作者:行者123 更新时间:2023-11-29 17:46:01 25 4
gpt4 key购买 nike

我在 Android 上的 SQLite 数据库中有一个表,它只包含一个带有行 ID 的列。该表用于链接不同表中的数据集。当我尝试在表中插入一个新行时,它抛出了这个异常:

android.database.sqlite.SQLiteException: near "null": syntax error (code 1): , while compiling: INSERT INTO journeyDetailsTable(null) VALUES (NULL)

我的表是这样创建的:

private static final String CREATE_TABLE_JOURNEY_DETAIL = "create table " +
TABLE_NAME + " (" + ID_COLUMN + " integer primary key autoincrement);";

我正在尝试像这样插入一个新行:

parentID = db.insert(ANOTHER_TABLE, null, new ContentValues());

有什么想法吗?

最佳答案

SQLiteDatabase.insert(String, String, ContentValues) 的文档明确指出 SQL 不允许插入一个完全空的行而不命名至少一个列名。这意味着,如果您不指定任何值,则需要指定一个列名以将 NULL 插入到其中。您应该可以使用 db.insert(ANOTHER_TABLE, ID_COLUMN, new ContentValues()) 来完成它。

无论如何,您可能应该重新考虑您的数据库结构,因为像这样设置表似乎不是有效的、可维护的和不可监督的,尤其是从长远来看。

关于android - 如何在仅包含 ID 列的 SQLite 表中创建新行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26700177/

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