On 2016/01/09 1:30 PM, Clemens Ladisch wrote:
> Bart Smissaert wrote:
>> I am interested to know from the statement string if the statement is
>> invalid, row producing (could produce rows) or non row producing.
> <http://www.sqlite.org/c3ref/column_count.html> says about
> sqlite3_column_count():
> | Return the number of columns in the result set returned by the
> | prepared statement. This routine returns 0 if pStmt is an SQL
> | statement that does not return data (for example an UPDATE).

Indeed, but unless I am mistaken, that value is not available (in a 
meaningful sense anyway) upon compilation of the SQL statement, aka 
sqlite3_prepare(), but only after at least one sqlite3_step() occurred.

It seems to me the OP needs to know whether output rows will happen 
BEFORE stepping. (I don't see a reason why or argue for it, just 
relaying what I think the OP intended with the question).

It might be useful, some Pragmas (for instance) return values, some 
don't, and this may change in future, etc. For myself though, knowing 
whether output is produced or not is perfectly fine after stepping - and 
for that simply checking the return values from the sqlite functions is 
enough. See:
https://www.sqlite.org/c3ref/step.html


Cheers,
Ryan

Reply via email to