Skip to content

Описание хранилища на SQLite

abbat edited this page May 27, 2011 · 1 revision

Схема хранилища полностью соответствует [схеме на базе MySQL](Описание хранилища на MySQL) с учетом следующих особенностей:

  • Все даты хранятся в поле типа INTEGER в формате UNIXTIME(0) = '1970-01-01 00:00:00';
  • Все булевы значения конвертируются в INTEGER, где 0 = false, 1 = true, >1 ~ true. Следует обратить внимание, что QVariant, созданный на базе булевой переменной, подставляет в SQL запросы строки-значения "true" / "false", по этому перед выполнением / формированием SQL запроса необходимо приводить все булевы переменные к int явно;
  • Следует помнить, что SQLite не поддерживает внешние ключи (без специального на то указания, которое сделано в целях сохранения совместимости), хотя позволяет их объявлять, по этому связь между таблицами message_topic -> message реализуется на уровне кода приложения.