Вопрос явно не о типе столбца (т. Е. В хранилище), а об использовании литералов TRUE
и FALSE
(т. Е. Анализатора), которые совместимы с SQL как 1005 * согласно документации по ключевым словам PostgreSQL (которая также включает столбцы SQL-92, SQL: 2008 и SQL: 2011 в справочной таблице).
В документации SQLite перечислены все поддерживаемые ключевые слова , и этот список не содержит ни TRUE
, ни FALSE
, поэтому, к сожалению, SQLite не соответствует этим требованиям.
Вы также можете легко протестировать его и посмотреть, как парсер barfs хочет, чтобы токен был именем столбца:
$ sqlite3 :memory:
SQLite version 3.14.0 2016-07-26 15:17:14
sqlite> CREATE TABLE foo (booleanish INT);
sqlite> INSERT INTO foo (booleanish) VALUES (TRUE);
Error: no such column: TRUE