On Fri, Jan 23, 2009 at 10:41 PM, John Machin <sjmac...@lexicon.net> wrote:
> Two suggestions:
>
> (A) Check to see if the corresponding SELECT works:
>
> "SELECT *, CASE WHEN lft BETWEEN ? AND ?"
> "    THEN lft + ? ELSE lft + ?"
> "END FROM tags WHERE lft BETWEEN ? AND ?",
It worked similar to the UPDATE statement, SQLITE_DONE is returned,
without any SQLITE_ROW.

> (B) Note that the effect of C's compile-time concatenation of string
> literals means that that you end up with:
>
> "... ELSE lft + ?END WHERE ..."
> not "... ELSE lft + ? END WHERE ..."
>
> The former case should just work, or (much less preferably) give an
> error return. However it's cheap to add a space and run it again to see
> if you've stumbled on a weird dark-corner-case bug.
Oops. At first I had them separate and as a big long string. Then I
made it into a loop and chopped up the strings and somehow forgot
about spaces. The behavior before with one long string was exactly the
same though.
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to