我正在使用MySQL。我有一个 select 语句,后面跟着一些使用 C 连接器完成的 insert 语句。我想知道如何将它们全部放在一个事务下,然后最后提交。
我已经阅读了 MySQL 5.0 参考手册并且C API 函数概述 http://dev.mysql.com/doc/refman/5.0/en/c-api-function-overview.html它有这个功能mysql_commit()
?我必须有一个启动事务(如何设置它,只需关闭autocommit()
)最后只提交对吗?
据我了解,没有 mysql_starttransaction() 或类似的东西;所以你陷入了类似的困境:
mysql_autocommit(conn, 0);
//Do stuff here
mysql_commit(conn); //...or mysql_rollback(conn);
我宁愿对所有这些调用使用“查询”方法:
mysql_query(conn, "START TRANSACTION");
//Do stuff here
mysql_query(conn, "COMMIT"); //...or mysql_query(conn, "ROLLBACK");
Also 请参阅此文档 http://dev.mysql.com/tech-resources/articles/mysql-connector-cpp.html#trx.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)