Keith is telling you that the developers of SQLite did not develop sqlitebrowser. If the command works fine in the SQLite tool then we don't have a problem with it. You should test it to figure out who to complain to. Here: I did it for you: <code>SQLite version 3.32.3 2020-06-18 14:16:19 Enter ".help" for usage hints. Connected to a transient in-memory database. Use ".open FILENAME" to reopen on a persistent database. sqlite> CREATE TABLE images_raw(identifier_s1 VARCHAR UNIQUE PRIMARY KEY CHECK(identifier_s1 IS NULL OR (typeof(identifier_s1)='text')), path_s1 VARCHAR UNIQUE CHECK(path_s1 IS NULL OR (typeof(path_s1)='text')), is_internal_b0 INTEGER CHECK(is_internal_b0 IS NULL OR (typeof(is_internal_b0)='integer' AND is_internal_b0 BETWEEN 0 AND 1))); sqlite> .schema CREATE TABLE images_raw(identifier_s1 VARCHAR UNIQUE PRIMARY KEY CHECK(identifier_s1 IS NULL OR (typeof(identifier_s1)='text')), path_s1 VARCHAR UNIQUE CHECK(path_s1 IS NULL OR (typeof(path_s1)='text')), is_internal_b0 INTEGER CHECK(is_internal_b0 IS NULL OR (typeof(is_internal_b0)='integer' AND is_internal_b0 BETWEEN 0 AND 1))); sqlite> </code> SQLite has no problem executing that command. The syntax error message is coming from sqlitebrowser, which is not part of SQLite. Complain to the developers of that program.