我有 2 个要执行的查询。
delete from song where ast_id = 1;
delete from artist where ast_id = 1;
与 2 有关系。 1 有一个引用另一个的 FK。
我认为查询将一起执行,但我认为如果以正确的顺序执行,将删除艺术家的歌曲,然后是艺术家自己。此情况并非如此。
我最终通过将其分解为 2 个事务来解决它,但是有没有办法让它只保留 1 个?
我正在做一些事情:
string query("delete from song where ast_id = 1; delete from artist where ast_id = 1;");
sqlite3_exec(db, query.c_str(),...);
你可以在上面的 1 笔交易中做到吗/?