是否可以执行一个包含多个查询的事务,例如在table1中插入smth并在table2中插入smth?我该如何实现呢?我使用libpqxx
来交互数据库并期待与之相关的答案。谢谢。
答案 0 :(得分:2)
pqxx::work
是默认的交易类型。
在exec()
之前使用多个commit()
方法在一个事务中运行多个查询:
using namespace pqxx;
...
connection c("dbname=test user=postgres hostaddr=127.0.0.1");
work w(c);
w.exec("create table test_xx (id int primary key)");
w.exec("insert into test_xx values (1)");
w.commit();
...