How could the schema have changed?

-----Original Message-----
From: [email protected] [mailto:[email protected]] 
On Behalf Of Igor Tandetnik
Sent: Thursday, June 28, 2012 9:38 AM
To: [email protected]
Subject: Re: [sqlite] Not sure how to interrupt this

Jeff Archer <[email protected]> wrote:
> I have SQLITE_CONFIG_LOG callback installed:
> sqlite3_config(SQLITE_CONFIG_LOG, cb_sqlite_config_log, 
> /*pUserData*/NULL);
> 
> I get the following message through the SQLITE_CONFIG_LOG callback 
> during the sqlite3_step():
> errcode: SQLITE_SCHEMA  (17)
> message: statement aborts at 80: [INSERT INTO [Scans](ScanID, 
> Timestamp, EndTime, Result) VALUES(NULL, @Timestamp, @Timestamp, 
> @Result);] database schema has changed

My guess is that a) you have prepared your statement with sqlite3_prepare_v2 
(as opposed to sqlite3_prepare), and b) the schema did in fact change between 
the time the statement was prepared and the time it got executed. In this case, 
SQLite would internally intercept SQLITE_SCHEMA (but apparently, not before 
logging it), then finalize, re-prepare and re-execute the statement.
--
Igor Tandetnik

_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to