Stephen Sutherland [mailto:[EMAIL PROTECTED] wrote: > > Thanks this is great information on sqlite's prepared statements. > > I think I have just one more question on this subject. > > I need to execute a SQL statement like this: > "SELECT * FROM tbl WHERE BookID IN ( :arrayNumbers) ;"
If you want to pass a variable number of items in, you won't be able to use a single placeholder; each placeholder is replaced by a single value, not a list. > My function will be receiving an array like this > > void getVariableBookIDs( int arraynumbers[], int alength ) > { > > // what's the best technique pass these array of numbers to the > query? > // can I use prepared statements ? > // I won't be doing this too often - like within a tight loop so a > regular sqlite3_exec would work as well. > } I'd dynamically cook up a string with a suitable number of parameters, prepare it, and bind each in a loop before sqlite3_step()'ing though the results. (If this was done frequently then you could cache the prepared statements. If not, it's likely not worth the small amount of added complexity.) -- James ----------------------------------------------------------------------------- To unsubscribe, send email to [EMAIL PROTECTED] -----------------------------------------------------------------------------