关于ADO数据库的问题,求各位大侠帮忙啊。。。。。
最近写了一个ADO数据库的程序,老是出现错误百思不得其解啊!
这部分的功能是实现数据库的添加功能
void CPcsDlg::OnComfirm()
{
UpdateData();
_bstr_t vSQL;
CString strno;
strno.Format("%d",m_strno);
//向Title表里面插入数据
vSQL="insert into Title values('"+strno+"','"+m_strTitle+"')";
m_ADOConn.ExecuteSQL(vSQL);
//向OptionContent表里面插入数据
vSQL="insert into OptionContent value('"+strno+"','"+m_strSelection+"','"+m_strSelectionContent+"')";
m_ADOConn.ExecuteSQL(vSQL);
UpdateData(false);
}
这部分是我的修改功能的实现
void CPcsDlg::OnComfirmModifyTitle()
{
UpdateData();
CString str;
str.Format("Update Title SET QuestionContent = '%s' where QuestionNo = '%d'",m_mSelectionContent,m_mQuestionNo);
_bstr_t vSQL((LPCTSTR)str);
//注释的部分是我测试的删除功能
/* str.Format("%d",m_mQuestionNo);
vSQL ="Update Title set QuestionContent = " +m_mSelectionContent + " where QuestionNo = " + str;;
vSQL=_T("delete from Title where QuestionNo = '"+str+"'");*/
m_ADOConn.ExecuteSQL(vSQL);
UpdateData(false);
}
//这部分是ExecuteSQL()函数的实现
BOOL CADOConn::ExecuteSQL(_bstr_t bstrSQL)
{
try
{
if(m_pConnection==NULL)
{
OnInitADOConn();
}
m_pConnection->Execute(bstrSQL,NULL,adCmdText);
return true;
}
catch(_com_error e)
{
AfxMessageBox("不能打开记录集");
return false;
}
}
我尝试了很多种方法,前面的添加功能很正常,但是在修改(删除)的时候总是出现异常,提示就是“不能打开记录集”。百思不得其解啊,还望哪位大侠帮助。我觉得ExecuteSQL()函数应该没问题的。另外说明我用的是Acess2010数据库
这部分的功能是实现数据库的添加功能
void CPcsDlg::OnComfirm()
{
UpdateData();
_bstr_t vSQL;
CString strno;
strno.Format("%d",m_strno);
//向Title表里面插入数据
vSQL="insert into Title values('"+strno+"','"+m_strTitle+"')";
m_ADOConn.ExecuteSQL(vSQL);
//向OptionContent表里面插入数据
vSQL="insert into OptionContent value('"+strno+"','"+m_strSelection+"','"+m_strSelectionContent+"')";
m_ADOConn.ExecuteSQL(vSQL);
UpdateData(false);
}
这部分是我的修改功能的实现
void CPcsDlg::OnComfirmModifyTitle()
{
UpdateData();
CString str;
str.Format("Update Title SET QuestionContent = '%s' where QuestionNo = '%d'",m_mSelectionContent,m_mQuestionNo);
_bstr_t vSQL((LPCTSTR)str);
//注释的部分是我测试的删除功能
/* str.Format("%d",m_mQuestionNo);
vSQL ="Update Title set QuestionContent = " +m_mSelectionContent + " where QuestionNo = " + str;;
vSQL=_T("delete from Title where QuestionNo = '"+str+"'");*/
m_ADOConn.ExecuteSQL(vSQL);
UpdateData(false);
}
//这部分是ExecuteSQL()函数的实现
BOOL CADOConn::ExecuteSQL(_bstr_t bstrSQL)
{
try
{
if(m_pConnection==NULL)
{
OnInitADOConn();
}
m_pConnection->Execute(bstrSQL,NULL,adCmdText);
return true;
}
catch(_com_error e)
{
AfxMessageBox("不能打开记录集");
return false;
}
}
我尝试了很多种方法,前面的添加功能很正常,但是在修改(删除)的时候总是出现异常,提示就是“不能打开记录集”。百思不得其解啊,还望哪位大侠帮助。我觉得ExecuteSQL()函数应该没问题的。另外说明我用的是Acess2010数据库
...全文
相关推荐
数据库连接技术综合(ado,odbc,ado.net,ole db,jdbc)
此ppt 综合了几乎所有的数据库连接技术(ado,odbc,ado.net,ole db,jdbc) ,并且有具体的java和 jsp的两个实例,安装好开发环境之后 可以直接运行
ASP 的 Database Access 组件通过 ADO
ASP 的 Database Access 组件通过 ADO 连接并操作 WEB 数据库的步骤 ASP 的 Database Access 组件通过 ADO 连接并操作 WEB 数据库的步骤
ODBC、OLE DB和ADO简单介绍
对ODBC、OLE DB和ADO简单介绍的简单介绍,适合数据库新手学习
DataBase application class ado
通用数据库存取接口,包括查询、修改、删除等
在labview中用ADO访问数据库
ADO可用来编写紧凑简明的脚本,以便连接到Open Database Connectivity(ODBC)兼容的数据库和OLE DB兼容的数据源,这样ASP程序就可以访问任何与ODBC兼容的数据库,包括MS SQL SERVER、Access、Oracle等等。


数据库
