Poco c ++库是否支持sql server事务

时间:2013-09-12 05:48:25

标签: sql-server sql-server-2012 poco-libraries

我正在使用poco c ++库版本1.4.6p1所有我用它来在sql server 2012中做一些事务但是事务不起作用,但它适用于mysql是否需要进行任何其他增强支持交易?

2 个答案:

答案 0 :(得分:2)

我调试了poco库,在poco-> ODBC-> SessionImpl类中,标记事务开始的begin函数没有实现,其中在poco-> MySQL-> SessionImpl类中开始函数具有实现,这就是为什么事务适用于MySQL而不适用于SQL Server

的原因

答案 1 :(得分:0)

截至Poco 1.7.x(撰写本文时为最新版)支持交易。只有您必须明确启用它。这是一个示例:

//setup your session skipped
session.setFeature("autoCommit", false);
Poco::Data::Transaction transaction(session);
std::vector<std::string> sqlList;
sqlList.push_back("DELETE FROM Table WHERE cond1='condition1'");
sqlList.push_back("DELETE FROM Table WHERE cond2='condition2'");
sqlList.push_back("DELETE FROM Table WHERE cond3='condition3'");

transaction.execute(sqlList);
transaction.commit();