大家好,我写了一个事务处理的程序,我是这样写的
pConn->open()
pConn->Execute("select * ×××")
pConn->Execute("Update*****")
char UpdateSql[]="Update table"
char InsertSql[]="Insert table"
try
{
m_pConn->BeginTrans();//开始事务
m_pConn->Execute(UpdateSql,&vField,0);
m_pConn->Execute(InsertSql,&vField,0);
m_pConn->CommitTrans();//提交事务}
catch(_com_error e)
{
m_pConn->RollbackTrans();//回滚事务
}
问题是,每次运行到m_pConn->BeginTrans();//开始事务
则就有异常,我用e.ErrorMessage()得到的错误信息是“0x8004d01d 拒绝了与事务管理器建立连接的申请。”
如果m_pConn->BeginTrans();//开始事务
放再pConn->Execute("select * ×××")前,则可以运行BeginTrans,但pConn->Execute("select * ×××")会有异常
那位大虾知道啊???急!!!!!
pConn->open()
pConn->Execute("select * ×××")
pConn->Execute("Update*****")
char UpdateSql[]="Update table"
char InsertSql[]="Insert table"
try
{
m_pConn->BeginTrans();//开始事务
m_pConn->Execute(UpdateSql,&vField,0);
m_pConn->Execute(InsertSql,&vField,0);
m_pConn->CommitTrans();//提交事务}
catch(_com_error e)
{
m_pConn->RollbackTrans();//回滚事务
}
问题是,每次运行到m_pConn->BeginTrans();//开始事务
则就有异常,我用e.ErrorMessage()得到的错误信息是“0x8004d01d 拒绝了与事务管理器建立连接的申请。”
如果m_pConn->BeginTrans();//开始事务
放再pConn->Execute("select * ×××")前,则可以运行BeginTrans,但pConn->Execute("select * ×××")会有异常
那位大虾知道啊???急!!!!!
解决方案 »
- 没有窗口的CWnd继承类应该如何使用OnTimer函数???
- 如何利用键盘钩子获取到每次按键之间的时间间隔?
- 想为什么这个程序总是在接受第二个数据包时候返回错误??谢谢
- VC不小心卸载一个控件后出现的问题
- socket实现http协议,怎么实现连接保持?
- 30分求助一个菜鸟问题!望高手帮忙!
- 急求 setup factory6.0 使用文档
- 如何捕获编辑框中的回车?(MFC之类免进 )
- 我的ARX程序在自己机器上运行正常,到其它机器上有时正常,有时运行arx程序时会没有任何提示就退出autocad2000,其它机器是否也要安装ObjectARX
- 请问哪有mpeg格式的资料?
- CTreeView 中的item的不同事件
- 在图片的一块区域实现文字输入,支持中文,支持自动横向滚动该怎么做啊
先搞清楚 DBMS 的事务管理方式,是手动开启事务,还是自动开启的事务?另外 catch 改为如下:catch(_com_error &e)
{
MessageBox( e.Description() );
}看看DBMS返回信息。