System.Data.SQLite.SQLiteException: Unable to open the database file
[SQLiteException (0x80004005): Unable to open the database file
unable to open database file]
System.Data.SQLite.SQLite3.Reset(SQLiteStatement stmt) +375
System.Data.SQLite.SQLite3.Step(SQLiteStatement stmt) +199...
Эта ошибка возникает при попытке выполнения SQL-инструкции INSERT (UPDATE). Внимание! Не путать с подобным исключением при выполнении открытия базы данных (System.Data.SQLite.SQLite3.Open(...)). См. разницу в трассировке кода.
Всё дело в недостаточных правах на каталог (!), в котором находится *.db-файл (SQLite). Т.е. следует задать права для чтения/записи не только для файла базы данных, но и для каталога, в котором этот файл находится. Это нужно SQLite для создания временного файла журнала операций.
На поиски решения этой проблемы ушли весь выходной день, пара-тройка чайников чая, беглое чтение исходников сборки sqlite3.dll и System.Data.SQLite.dll, и копание на форуме http://sqlite.phxsoftware.com/.
Спасибо IJsbrand, который сам потратил несколько месяцев и подарил это время многим программерам :) Его пост http://sqlite.phxsoftware.com/forums/p/689/5445.aspx#5445.