我用
CDaoDatabase dao_db;
dao_db.Open("",FALSE,FALSE,"ODBC;");
连接上sqlserver2000数据库,
可以成功执行
dao_db.Execute("insert into TableName values ('','')");可是执行
dao_db.Execute("update TableName set field1=var where field2=1");
dao_db.Execute("delete from TableName where field2=1");
时,总是抛出例外,
错误类型为:SQL_INVALID_HANDLE;
这到底是怎么回事呀,是数据库设置问题,还是程序参数问题。
急!
CDaoDatabase dao_db;
dao_db.Open("",FALSE,FALSE,"ODBC;");
连接上sqlserver2000数据库,
可以成功执行
dao_db.Execute("insert into TableName values ('','')");可是执行
dao_db.Execute("update TableName set field1=var where field2=1");
dao_db.Execute("delete from TableName where field2=1");
时,总是抛出例外,
错误类型为:SQL_INVALID_HANDLE;
这到底是怎么回事呀,是数据库设置问题,还是程序参数问题。
急!
解决方案 »
- 不太理解这两句C++ 语言 请大家帮忙看一下
- VC中list control 行中字体显示颜色
- Edit控件 子类化问题
- Visual Assist 无法自动完成输入,高手帮忙下
- 那里可以下载Directshow SDK?
- 如何做出像金山快译那样的县浮工具条啊???
- 车牌识别--用数码摄像机抓取移动图片时产生重影怎么解决?
- 看完了<<windows网络编程>>,不知道下面怎么继续学下去.
- SOS!!mainframe类函数栈中生成的对话框不能使用mainframe类的从CAsyncSocket派生的socket?在mainframe类中同样的使用是好的!!怎么解决?
- 那有录音的源代码?
- 文件怎么换行?
- ★★★★★using namespace std ;using namespace std::rel_ops ;
但是还有可能是("update TableName set field1=var where field2=1")
数据库更新语句有错误,告诉你一个绝招:
CString strSQL;
strSQL.Format(("update TableName set field1=var where field2=1")
MessageBox(strSQL);
可以在调试和运行时看见更新语句,如果不知道这句是写错了还是对了,
打开SQL Server查询分析器,或找到要更改的表,单击右建,选择"打开表"
--“查询”,把update TableName set field1=var where field2=1靠到
查询分析其中执行,能执行就说明语句没错。等分中,呵呵
如果通过ODBC方式,用CDatabase更合适
除非你不会被发现。
而用ACCESS这些小数据库就没有关系。