On Wed, 2007-05-09 at 16:18 -0700, Jon Scully wrote: > Simpler than that. I merely want to attach to two databases (files). > flash.db contains a set of tables that hold non-volatile data; ram.db > contains a set of tables that is re-built (volatile) on re-boot -- but > offers fast, read-only access. No table-name overlaps, of course. > > I want to access both sets of tables, seamlessly, as I should be able > to do using ATTACH, at the command prompt, but do so using the C API. > > Just wondering how others do this (Using ATTACH? Using > sqlite3_open()? Obviously I haven't looked very far into the > sqlite3_open() code to see how it's put together, etc.).
Execute an ATTACH statement via sqlite3_exec(), or sqlite3_prepare/step/finalize. > sqlite3 *db; > > if (sqlite3_open("flash.db", &db)) { > fprintf(stderr, "Can't open the database in the Flash file > system\n"); > exit(2); > } else if (sqlite3_open("ram.db", &db)) { > fprintf(stderr, "Can't open the database in the RAM-disk file > system\n"); > sqlite3_close(db); > exit(2); > } Don't do this. The second call to sqlite3_open opens a new database connection to the file "ram.db" and overwrites variable db with the new handle. Dan. ----------------------------------------------------------------------------- To unsubscribe, send email to [EMAIL PROTECTED] -----------------------------------------------------------------------------