为什么我们在sqlite数据库方法中使用null,如:
db.insert("table1", null, cv);
是否有必要在方法中使用它? 没有null我们有错误。
答案 0 :(得分:3)
阅读insert
long insert (String table,
String nullColumnHack,
ContentValues values)
String nullColumnHack
:可选;可能是null。 SQL不允许插入 完全空行而不命名至少一个列名。如果你的 提供的值为空,没有列名称和空行 无法插入。如果未设置为null,则为nullColumnHack参数 提供可为空的列名称,以显式插入NULL 在您的值为空的情况下进入。
答案 1 :(得分:0)
假设您有一个名为employee的表,其中所有列都允许NULL值或具有默认值。
在某些SQL实现中,这将是有效的SQL:
INSERT INTO员工;
这在SQLite中无效。您必须至少指定一列:
INSERT INTO employee(somecol)VALUES(NULL);
Android和SQLite需要一些可以安全地分配NULL的列。如果您有多个这样的列可供选择,请通过您选择的选择机制选择一个:掷骰子,Magic 8-Ball(TM),硬币翻转,小隔间配合翻转等。