*** 1,5 **** --- 1,6 ---- FAQ + ------ Q) How can I compare the speed of SQLite writing and reading from a table to doing roughly the same thing with a flat file? ------ *************** *** 91,96 **** --- 92,98 ---- Q) What is the calling convention for sqlite3.dll API functions (for Windows) and for SQLite callback functions (for sqlite3_exec function)?{linebreak} + A) cdecl (caller pushes parameters right to left on stack, caller cleans up) ------- Q) On sqlite3_Open(), when the file with given filename doesn't exist, SQLite *************** *** 101,109 **** --- 103,113 ---- So, what is the most natural way to determine, that Open() created new database instead of opening the existing one?{linebreak} + A) Use some system API funtion like IsFileExists(DB_filename) before calling sqlite_open(DB_filename) {linebreak} + A) or, use the "user_version" pragma. Right after calling open(), do "pragma user_version". If it returns "0", then assume that this is a new file -- create your tables and do "pragma *************** *** 119,124 **** --- 123,129 ---- instead of automatically rollback it on opening the DB??? (assume the transaction journal file integrity is fully correct) + A) No. ------- Q) Is there a standard way of backing up SQlite databases aside from simply *************** *** 137,142 **** --- 142,148 ---- ------ Q) Is there a simple way to figure out the primary key(s) of a table through sql? + A) Only by doing a select on the master table. ------ Q) Does SQLite have a bulk loading tool? *************** *** 154,159 **** --- 160,166 ---- ------ Q) Are there any advantages of using either a static library over the linked library (Performace, Speed, Compatibality)? + A) Depends, but on Windows platforms hardly. It matters startup times and perhaps the ease of deployment. ------