Voloda2
Voloda2

Reputation: 12607

I have a SQLite syntax error in DELETE statement

I have a very strange sqlite syntax error.

const char *statement = "DELETE FROM quotes t1 WHERE t1.id=127";
int returnCode = sqlite3_exec(database, statement, NULL, NULL, &errorMsg);
if (returnCode!=SQLITE_OK) 
{
    fprintf(stderr, "Error: %s", errorMsg);
    sqlite3_free(errorMsg);
}

 Error: near "t1": syntax error

But this code works well

const char *statement = "DELETE FROM quotes WHERE id=127";
int returnCode = sqlite3_exec(database, statement, NULL, NULL, &errorMsg);

Upvotes: 2

Views: 470

Answers (1)

Mark Byers
Mark Byers

Reputation: 838116

SQLite doesn't allow aliases in delete statements.

See the manual for the allowed syntax.


delete-stmt

enter image description here

qualified-table-name

enter image description here

Upvotes: 5

Related Questions