2015-02-10 1 views
0

Учитывая базу данных SQLite с записями, состоящими из нескольких столбцов текста, каково значение пустой ячейки (т. Е. Ячейки, которая никогда не обновлялась)? Будет ли это nil, 0 или, возможно, пустая строка?Какова ценность пустой ячейки в SQLite DB в iOS

В качестве примера рассмотрим следующую таблицу, где А, В и С представляют собой текстовые столбцы:

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, если это имеет значение.

Поскольку только некоторые ячейки пустые, другим вариантом будет обновление таблицы по одной ячейке за раз, а не по одной записи за раз. Однако это неэффективно.

+0

Ваш вопрос непонятен. Значение базы данных равно 'NULL'. Как этот 'NULL' преобразуется в определенное значение в вашем коде, зависит от вашего кода и типа данных. Предоставьте более подробную информацию. – rmaddy

ответ

0

Согласно документации SQLite [1], новое значение является значением по умолчанию, определенным при создании/последнем изменении таблицы или NULL, которое отличается от nil в iOS.

Предполагая, что у вас есть контроль над соответствующей базой данных, вы можете определить значение по умолчанию в этой таблице, соответствующее вашим потребностям. Если это не так, ваш код должен будет проверить значение, чтобы убедиться, что он обработан соответствующим образом.

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

Смежные вопросы