android - SQLiteDatabase的插入方法

标签 android sqlite

SQLiteDatabase的insert方法的第二个参数是"nullColumnHack"。这是指什么。应将什么值传递给此参数。

谢谢

最佳答案

假设您有一个名为 foo 的表,其中所有列都允许 NULL 值或具有默认值。

在某些 SQL 实现中,这将是有效的 SQL:

`INSERT INTO `foo;

这在 SQLite 中无效。您必须至少指定一列:

INSERT INTO foo (somecol) VALUES (NULL);

因此,如果您将空的 ContentValues 传递给 insert(),Android 和 SQLite 需要一些安全的列将 NULL 分配给。如果您有多个这样的列可供选择,请通过您选择的选择机制选择一个:掷骰子、Magic 8-Ball(TM)、掷硬币、掷小隔间伴侣等。

就我个人而言,我只是将空的 ContentValues 传递给 insert() 定为非法,但他们没有问我...:- )

礼貌的通用软件。

关于android - SQLiteDatabase的插入方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10633299/

相关文章:

Django反向查询集包含列表中的所有值

android - 如何在不考虑时间的情况下从 unixtime(integer) 列包含当前日期的表中选择记录?

java - 从 SQLite 中包含日期的文本字段中提取年份

android - 如何将所有 JSON 记录存储到 SQLite 中

android - 布局动画在第一次运行时不起作用

android - 流程发布资源

c# - Sqlite 数据库给我警告

sql - 如何在sqlite中计算平方根

java - 如何在 fragment 中使用 getSupportFragmentManager() ?

java - 图标而不是三个点 Android 菜单