iOS中SQLite DB中空单元格的值是多少?

时间:2015-02-10 19:26:53

标签: ios sqlite

给定一个包含多个文本列的记录的SQLite数据库,空单元格(即从未更新过的单元格)的值是多少?它会是零,0还是空字符串?

例如,请考虑下表,其中A,B和C是文本列:

id A B C
_  _ _ _
1  d e f
2  g h
3  i

细胞2C,3B和3C的价值是多少?

如果我要使用以下查询一次更新此表一条记录

update table set A=? B=? C=? where id=?

'?'的绑定值是什么?用空单元格更新记录时?如果重要的话,我正在使用iOS。

由于只有一些单元格为空,另一种选择是一次更新一个单元格,而不是一次更新一个单元格。然而,这感觉效率低下。

1 个答案:

答案 0 :(得分:0)

根据SQLite文档[1],新值是创建/上次修改表时定义的默认值或NULL,这与iOS中的nil不同。

假设您可以控制相关数据库,您可以在该表中定义一个适合您需要的默认值。如果不是这种情况,您的代码将需要测试该值以确保它得到适当处理。

[1] https://www.sqlite.org/lang_insert.html