SQLite Forum

Get SQLITE_READONLY when using UPDATE command
Do you get the same problem if you do an INSERT or DELETE FROM ?

Please be aware that if you try to make a change to a database, SQLite creates a new file in the same folder as the database.  Which means in your case that you will need write permissions for the folder your source code is in.  Supplying a read-only database inside your project is often done and works fine.  Giving your application write permissions to itself represents a horrible security problem and tempts malware.

The standard way to start with a SQLite database containing empty tables and indexes, or pre-prepared data, is to include that database file with the project and have your program duplicate it to a folder where it has read/write permissions.