using an sqlite3 database with WAL enabled -Python
google-drive-api, python, sqlite
Solution
problem solved. I just downloaded the latest version of sqlite from http://www.sqlite.org/download.html and overwrote the old .dll in my python27/DLL directory. Works fine now.
What a nusance.
Problem
I'm trying to modify the two database files used by Google Drive to redirect my sync folder via a script (snapshot.db and sync_conf.db). While I can open the files in certain sqlite browsers (not all) I cant get python to execute a query. I just get the message: `sqlite3.DatabaseError: file is encrypted or is not a database` Apparently google is using a Write-Ahead-logging (WAL) configuration on the databases and it can be turned off by running `PRAGMA journal_mode=DELETE;` (according to sqlite.org) against the database, but I can't figure out how to run that against the database if python can't read it. heres what I have (I tried executing the PRAGMA command and commiting and then reopening but it didnt work): ``` import sqlite3 snapShot = 'C:\Documents and Settings\user\Local Settings\Application Data\Google\Drive\snapshot.db' sync_conf = 'C:\Documents and Settings\user\Local Settings\Application Data\Google\Drive\sync_config.db' sync_folder_path = 'H:\Google Drive' conn = sqlite3.connect(snapShot) cursor = conn.cursor() #cursor.execute('PRAGMA journal_mode=DELETE;') #conn.commit() #conn= sqlite3.connect(snapShot) #cursor = conn.cursor() query = "UPDATE local_entry SET filename = '\\?\\" + sync_folder_path +"' WHERE filename ='\\?\C:Users\\admin\Google Drive'" print query cursor.execute(query) ```