我有一个表,想创建 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/