OperationalError, создающий индекс в sqlite

EDIT: версия TL; DR

Я набрал это

CREATE INDEX IF NOT EXISTS IDX_FILE_SIZE table_name (file_size); 

вместо этого

 CREATE INDEX IF NOT EXISTS IDX_FILE_SIZE ON table_name (file_size); 

Не делай этого.

Некоторые глупые вопросы:

Стоит ли утверждать, что в заявлении о нарушении отсутствует слово ON ?

CREATE INDEX, ЕСЛИ НЕ СУЩЕСТВУЕТ IDX_FILE_FULLPATH_FILE_PARENT_DIR ON table_name (file_fullpath, file_parent_dir);
CREATE INDEX, если НЕ СУЩЕСТВУЕТ IDX_FILE_SIZE имя_таблицы (file_size); – отсутствует ВКЛ
CREATE INDEX, если НЕ СУЩЕСТВУЕТ IDX_TAG_TITLE ON table_name (tag_title);

Где-то во всех формулировках вашего вопроса я увидел фразу «синтаксическая ошибка»?

Пробовали ли вы простой шаг выполнения SQL-инструкций в интерпретаторе команд sqlite3 и выяснения, какую синтаксическую ошибку вы фактически получали?

Например

 SQLite version 3.6.14 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite> create table foo (bar int, zot int); sqlite> create index barx on foo(bar); sqlite> create index zotx foo(zot); SQL error: near "foo": syntax error sqlite> 

Вы считали, что просматриваете TFRRD (The Fantastic Rail-Road Diagram) в документах ?

Вы писали: «" », когда я запускаю эту команду в меньшем скрипте (verifyIndexSmaller), она не дает никаких ошибок. Если я затем попытаюсь снова запустить большой скрипт, хотя индекс был создан меньшим скриптом, я все равно получаю Ошибка""".

Вы считали, что вы не выполняли эту команду в меньшем скрипте, но на самом деле запускали другую (исправленную!) Версию этой команды?

Вы теперь понимаете, почему S.Lott пытался заставить вас разрезать вафли и сосредоточиться на части SQL, которая вызывала ошибку?