空列上的android sqlite索引

标签 android sql sqlite android-sqlite

我有一个表,想创建 3 列唯一索引。问题是其中一列可以有空值。正如您可能知道的那样,sqlite 以特殊方式处理这些值,如果我们有

row1: A, B, null
row2: A, B, null

它将被接受(即使我在 A、B、C 上创建了唯一索引)。

问题是是否有任何技巧可以将 null 视为与所有其他值相同的值(例如 null 为零),并且在上述情况下,第二行不会被视为违反规则。

在此先感谢您的帮助。

最佳答案

您可以尝试创建具有默认值(例如零)的第 3 列的表,不允许 NULL,这样当它不包含在 INSERT 中时,它只会采用默认值。这将保留唯一索引。

关于空列上的android sqlite索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20200112/

相关文章:

mysql - 根据表的列连接表

android - 如何用特定行更新 sqlite 表而不重复存在的行?

sql - 将 JOIN 查询重写为子查询/更快的变体

sql - 我怎样才能找出这个连接字符串有什么问题?

java - 基于第一次排序,再次排序 Sqlite vs Java (Android)

android - 计算Android闹钟的时间

android - 共享元素返回过渡闪烁

Java LibGDX 更新和绘制方法

android - 非法状态异常 : The specified child already has a parent

python - 在 python 中将变量传递给 sql 查询时出错