VS2008mfc连接ORACLE数据库插入数据问题
如题,我连接上oracle数据库了,然后使用m_pRecordset->AddNew(); 新建一条记录进行插入成功,使用(theApp.m_pConnection)->Execute((_bstr_t)StrSQL3, NULL, adCmdText);却一直没有成功,其间没有报错,正常结束程序,但是数据库记录值没有增加。

下面是代码:
首先在程序框架类里连接oracle服务器
下面是插入数据库的代码,也就是有问题的代码段
下图是方法一的增加记录的效果。

删除新增记录,然后注释方法一,取消注释方法二,也就是使用Execute插入数据,无效果。
我仔细看了我的StrSQL3中,SQL语句没有问题,请问前辈们这个是什么问题。编译环境VS2008,mfc框架,x64平台

下面是代码:
首先在程序框架类里连接oracle服务器
try//连接数据库
{
m_pConnection.CreateInstance(__uuidof(Connection));
_bstr_t strConnect="Provider=OraOLEDB.Oracle.1;User ID='system';Password='tiger';Data Source=orcl;Persist Security Info=False;";
m_pConnection->Open(strConnect,"system","tiger",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox(TEXT("数据库连接出错!"));
AfxMessageBox(e.Description());
exit(-1);
}
下面是插入数据库的代码,也就是有问题的代码段
m_pRecordset.CreateInstance("ADODB.Recordset");//创建Recordset实例
CString strSQL="select * from VISIBILITY"; //连接VISIBILITY表
try
{
m_pRecordset->Open((_variant_t)strSQL,(IDispatch*)theApp.m_pConnection,adOpenDynamic,adLockOptimistic,adCmdText);
} //m_pConnection我在上一组代码中已经连接上oracle服务器了
catch (_com_error* e)
{
AfxMessageBox(e->ErrorMessage());
}
CString StrSQL3;
CString Time="2018/12/20 19:00";
CString visib="1.3";
StrSQL3.Format("INSERT INTO VISIBILITY(采样时间,能见度) VALUES(#%s#,'%s')","2018/12/20 18:00","3.0");
//我自己写死了一个记录准备插入
try{
m_pRecordset->AddNew(); //新建一条记录
m_pRecordset->PutCollect("采样时间",_variant_t(Time)); //修改每个字段值
m_pRecordset->PutCollect("能见度",_variant_t(visib)); //方法一。用AddNew然后加Update,可以成功插入记录
//(theApp.m_pConnection)->Execute((_bstr_t)StrSQL3, NULL, adCmdText); //方法二。直接用Execute插入,无BUG,却没有在数据库中增加数据
}
catch(_com_error e)
{
MessageBox(e.Description());
return;
}
m_pRecordset->Update(); //更新至数据库
下图是方法一的增加记录的效果。

删除新增记录,然后注释方法一,取消注释方法二,也就是使用Execute插入数据,无效果。
我仔细看了我的StrSQL3中,SQL语句没有问题,请问前辈们这个是什么问题。编译环境VS2008,mfc框架,x64平台
...全文
相关推荐
vs2008 MFC 开发问题汇总
今天在Visual Studio 2008中调试某个程序时遇到一个奇怪问题 就是在某个源文件中设置的断点老是无效,提示“当前不会命中断点。源代码与原始版本不同”信息 清理项目、重编项目、重新拷贝原文件都解决不了问题 1)“工具”,“选项”,“调试”,“要求源文件与原始版本完成匹配”去掉勾。我没有用这种方法,总觉得将勾掉不太安全。 2)通过重新格式化出问题的源文件亦可以解决,即在VS2005中选择 “编辑”-“高级”-“设置选定内容的格式”。我用这个方法解决,将源文件全部选定,设置格式即可!
vs2008_MFC_开发问题汇总.do
vs2008_MFC_开发问题汇总.do
利用ADODB类连接本地数据库
该代码利用ADODB类进行SQL Server数据库的连接,在vs2008中运行成功
vs MFC开发问题汇总.doc
主要列出了常用开发中出现的一些问题,并怎样来解决这些问题
毕业设计 MFC资源管理器
朋友实习做的MFC资源管理器 不错的程序 绝对就能运行请用VS2008打开


数据库
