In the docs there is this line:
https://www.sqlite.org/lang_UPSERT.html "The conflict target is required for DO UPDATE upserts, but is optional for DO NOTHING. A DO NOTHING upsert without a conflict target works the same as an INSERT OR IGNORE."
The charts are pretty, and useful, but they can show illegal paths due to various rules like this.
Also note on quotes, single is for a text literal, double is for identifiers.
So it should be
insert into person ("name") values ('hello')...
or just plain
insert into person (name) values ('hello')...
From: sqlite-users [mailto:[hidden email]] On Behalf Of Matt
Sent: Wednesday, January 16, 2019 11:30 AM
To: [hidden email] Subject: [sqlite] Confusion re UPSERT syntax error
> Also note on quotes, single is for a text literal, double is for identifiers.
> So it should be
> insert into person ("name") values ('hello')...
> or just plain
> insert into person (name) values ('hello')...
though if you're going to quote your identifiers, it should really be
insert into "person" ("name") values ('hello')...
It's better just not to use double quotes at all, unless you have no control over identifiers and they may have punctuation in.
Hi all, I was looking to the sqlite3_interrupt to make my application
closing faster without waiting for long standing DB operation. I read in
the documentation that should not be a problem to call it during insert
update or delete: if transaction is running is automatically rolled
Do you think there's some extra care I have to deal with before using
interrupt function? Do you have some experience in using it during
read/write operation on DB?