空列上的android sqlite索引
我有一个表,想创建3列唯一索引。问题是其中一列可能有空值。您可能知道,sqlite以特殊的方式处理这些值,如果我们有空列上的android sqlite索引,android,sql,sqlite,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中时,它将只接受
row1: A, B, null
row2: A, B, null
它将被接受(即使我在A、B、C上创建了唯一索引)
问题是,是否有任何技巧可以将null视为与所有其他值相同的值(例如null为零),在上述情况下,第二行不会被视为违反规则
提前感谢您的帮助。您可以尝试创建一个表,其中第3列有一个默认值(例如,零),不允许为NULL,这样当它没有包含在INSERT中时,它将只接受默认值。这将保持唯一索引。为时已晚,但必须为自己找到解决方案
在my_表(字段a、字段b、字段c)上创建唯一索引my_索引,其中字段c不为空 不可能。但我想知道是否有可能在sqlite3中创建某种逻辑列。我的意思是该列未存储在数据库中,但计算为:new column=(如果C为null,则为0,否则为C)。如何做到这一点?是否可以在逻辑列上设置索引?@user2707175是什么意思?或者?@njzk2 SQLite的可能副本没有函数索引。