Sander Jansen wrote:
Using SqLite 3.3.3 I'm trying to prepare the following statement:

"CREATE INDEX IF NOT EXISTS someindexname ON sometable(somecolumn);"

It returns SQLITE_OK but returns a NULL statement. ( I think a newer
version doesn't have this behaviour). Does this actually mean that it
is a unsupported SQL query? If I remove
"IF NOT EXISTS" the prepare statement will actually return an error
saying the Index already exists.
Sander,

If the index already exists, then a null statement is all you need to create it. :-)

I assume you are saying that sqlite3_prepare is setting the statement pointer to NULL. I think there was a bug report about this behavior in an earlier version (< 3.3.13) of sqlite. You might want to try it with a current version to see if you get the same behavior.

As a work around, you could simply not execute (i.e. don't call sqlite3_step) a NULL statement. Now that I think about it, sqlite may already have that check in place so that sqlite_step(NULL) does nothing and returns.

HTH
Dennis Cote

-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to