【发布时间】:2020-02-14 06:48:51
【问题描述】:
在 sqlite 中,我们可以在任何更新或插入操作之后执行 BEGIN TRANSACTION 然后 COMMIT 以确保数据库的原子特性。我可以使用 sqlite C API 实现相同的目标吗?
例如:
*BEGIN TRANSACTION;
UPDATE accounts
SET balance = balance - 1000
WHERE account_no = 100;
UPDATE accounts
SET balance = balance + 1000
WHERE account_no = 200;
INSERT INTO account_changes(account_no,flag,amount,changed_at)
VALUES(100,'-',1000,datetime('now'));
INSERT INTO account_changes(account_no,flag,amount,changed_at)
VALUES(200,'+',1000,datetime('now'));
COMMIT;*
我想在 C/C++ 程序中使用 sqlite 的 C/C++ API 完成上述操作
【问题讨论】:
-
您不能在 C 程序中使用 C++ API。
-
@ThomasSablik,我不想专门在C程序中做,我只想知道C或C++中有没有API
-
呃。您只需像执行任何 sql 语句一样执行它们...
sqlite3_exec()效果很好,因为它们不返回任何内容并且不需要任何绑定到参数的值。 -
“我想在 C 程序中使用 sqlite 的 C/C++ API 执行上述操作” 您的问题应该包含所有必要的信息。不要在 cmets 中更改您的问题。编辑您的问题。
-