It would appear that I need one "sqlite3* handle" in order to execute statements such as "pragma page_size=32768;", but the act of calling sqlite3_open(filename, &handle) creates the file, which prevents the changing of the page size, as the sqlite master tables are created, thereby rubbing up against the proviso, " The page-size may only be set if the database has not yet been created. ".
Or am I missing something really obvious? Plainly I can compile sqlite3.c with SQLITE_DEFAULT_PAGE_SIZE equal to my desired page size, but surely that was not the way its use was intended. --andy