Keith Medcalf Sent: Monday, December 18, 2017 2:31 PM ...snipped a lot...
>>Right, all of the statements are step'd regardless of the result of >>sqlite3_column_count(). SQLITE_DONE is returned from the first >>step() for insert queries. >>In pseudocode, it's >>prepare("insert...") //okay >>int num_col = sqlite3_column_count() //okay >>step() until sqlite_done //okay >>assert(num_col > 0) // blows up here, even though the query was successful >So if the insert statement was step'd, then how is it that it has not been >executed? Is the code more like: It *has* been executed successfully. All of the statements are step'd regardless of the result of sqlite3_column_count(). The assertion still fails. ...snip... >Because if the INSERT is stepped until done, then UNLESS each statement (or >group of statements) is taking place within an explicit transaction that is >then rolled back, the INSERT must have run to completion and been committed, >and the data MUST have been inserted ... notwithstanding the assert failure. >As far as I can tell, the only way this would not be true is if the statement >were run inside an explicit transaction which was "aborted" by de-rugging >before it was committed. *The insert did run to correct completion*. There aren't any transactions, only a rogue num_col > 0 post-condition that throws an error. That's the thing I'm trying to get around; I'm trying to get sqlite3_column_count() > 0 from a SQL statement that effects an insert. ---------------------------------------------------------------------- This message, and any attachments, is for the intended recipient(s) only, may contain information that is privileged, confidential and/or proprietary and subject to important terms and conditions available at http://www.bankofamerica.com/emaildisclaimer. If you are not the intended recipient, please delete this message. _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users