SQLite не волнует.
Другое СУБД принципы использования, которые были разработаны в начале 80 , когда это было жизненно важно для производительности.
Например, Oracle не различает NULL
и пустую строку и сохраняет свои NUMBER
как наборы центесимальных цифр.
Это вряд ли имеет смысл сегодня, но это были очень умные решения, когда Oracle разрабатывался.
В одной из разработанных мною баз данных использовались неиндексированные значения, которые хранились как VARCHAR2
и динамически преобразовывались в соответствующие типы данных в зависимости от нескольких условий.
Это было довольно необычно: оно использовалось для массовой загрузки пар ключ-значение в одном обращении к базе данных с использованием коллекций.
Динамические операторы SQL
использовались для анализа данных и помещения их в соответствующие таблицы на основе имени ключа.
Все значения были загружены во временный столбец VARCHAR2
как есть, а затем преобразованы в NUMBER
и DATETIME
для помещения в их столбцы.