Вот этот:
SELECT * FROM TABLE_NAME WHERE NEW_COLUMN_NAME = null
Вернет пустой набор строк практически в любой базе дат, потому что в SQL выражение NULL = x
является ложным для всех x
(даже x
NULL). Попробуйте вместо этого:
SELECT * FROM TABLE_NAME WHERE NEW_COLUMN_NAME IS NULL
Аналогичные проблемы NULL будут применяться к этому:
SELECT * FROM TABLE_NAME WHERE NEW_COLUMN_NAME != 1
так что попробуйте:
SELECT * FROM TABLE_NAME WHERE NEW_COLUMN_NAME != 1 OR NEW_COLUMN_NAME IS NULL
вместо.
Это не является чем-то конкретным для SQLite или Android, это просто нормальное поведение SQL. Если вам абсолютно не нужно разрешать значения NULL в столбцах, создайте их с помощью NOT NULL
(и, возможно, по умолчанию), чтобы избежать путаницы и разочарований.