I'm wrapping sqlite3 with a lightweight little C++ API to allow me to
use it more easily from C++ code and I have a couple questions about
the lifespan of data passed into and received from the sqlite3 API:

1. Will the const char* returned by sqlite3_column_name() persist
   until the statement is finalized, or are there situations under
   which sqlite could free it before then?

2. Will SQLITE_STATIC data bound to text or blob parameters (using
   the sqlite3_bind_text/blob() functions) ever be touched by sqlite
   outside of calls to sqlite3_step()?

3. Is my belief that text or blob data returned by 
   sqlite3_column_text/blob() does not need to be free()'d and is
   only valid until the next sqlite3_step/reset/finalize() on that
   statement correct?
   
Thanks,

Brian

Reply via email to