主题:DBManager类执行sql语句出错 共有35858人关注过本帖 |
---|
AT_lee |
1楼 |
DBManager类执行sql语句出错 Post By:2011-11-29 16:47:00 [只看该作者]
调用DBManager类操作数据库时,如下的删除表,创建表,插入都正常
                CString TableName; TableName="testtable"; dbm.DeleteTable(TableName); dbm.CreateTable(TableName); dbm.InsertRecord(TableName,test); 可select语句执行报错。                 execsql.Format(_T("SELECT * FROM %s"),TableName); dbm.ExecSql(execsql); 执行select语句后   hr= -214746726{E_NOINTFACE} 请大家帮忙看看是什么原因! |
|
单帖管理 | 引用 | 回复 |
yy |
2楼 |
Post By:2011-11-30 11:17:00 [只看该作者]
我们先看下该问题再联系你,我邮件你一个微软的官方例程给你,测试可用
|
|
单帖管理 | 引用 | 回复 |
AT_lee |
3楼 |
Post By:2011-12-2 18:04:00 [只看该作者]
原代码为
hr = m_pADOCERS->Open(varStrSql,varEmpty,MSADOCE::adOpenDynamic,MSADOCE::adLockOptimistic,MSADOCE::adCmdText); 修改为 hr = m_pADOCERS->Open(varStrSql,varEmpty,MSADOCE::adOpenUnspecified,MSADOCE::adLockUnspecified,MSADOCE::adCmdUnspecified); 测试了一下,可以使用select语句了 |
|
单帖管理 | 引用 | 回复 |
yxy |
4楼 |
Post By:2011-12-2 18:21:00 [只看该作者]
demo能运行,但是我们的图形demo不行,使用了绘图资源,为了图漂亮。但是这个上面跑不起来,程序员说是内核驱动不支持。他给了你们技术支持我们的运行代码什么的,和例程了。
|
|
单帖管理 | 引用 | 回复 |
IT |
5楼 |
Post By:2012-2-14 15:32:00 [只看该作者]
按AT_lee的说法修改了下ExecSql函数的源代码,结果select 命令可以了,但是insert命令却又返回错误,请求通用的ExecSql执行语句
|
|
单帖管理 | 引用 | 回复 |
yy |
6楼 |
Post By:2012-2-15 13:23:00 [只看该作者]
如果使用select,Recordset::Open的第四个参数不能为adLockOptimistic。使用AT_lee的办法,全使用默认值是个好办法,我测试没有什么问题。insert命令出错可能是之前有插入过相同的数据了。
|
|
单帖管理 | 引用 | 回复 |