ADO连接数据库读出正常,但写入数据库失败?

Wenxy1 2004-03-30 05:06:26
Access2000数据库,vc6
//////////////////////
void CStudentDlg::writeDataBase(CString id, CString studentName, CString studentClass, CString money)
{
HRESULT hr;
if( id.IsEmpty() )
return;
try
{
hr = m_pConnection.CreateInstance("ADODB.Connection"); //创建Connection对象
if(SUCCEEDED(hr))
{
//AfxMessageBox("create ok");
hr = m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=mysoft.mdb","","",adModeUnknown);///连接数据库
//AfxMessageBox("Open ok");
}
}
catch(_com_error e)
{
CString errormessage;
errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage());
AfxMessageBox(errormessage); ///显示错误信息
return ;
}
//---------------------------------------------------------------------
try
{
if(! m_pRecordset.CreateInstance("ADODB.Recordset"))
{
_variant_t RecordsAffected;
m_pRecordset = m_pConnection->Execute("INSERT INTO student(ID, student_name, student_class, money, all_time) VALUES (id, studentName, class,'money,'')",&RecordsAffected,adCmdText);
m_pRecordset->Close(); ///关闭记录集
m_pConnection->Close();
}
}
catch(_com_error e)///捕捉异常
{
AfxMessageBox("写入数据库失败!"); ///显示错误信息
}
}
...全文
97 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Wenxy1 2004-03-31
  • 打赏
  • 举报
回复
CString sSql = "INSERT INTO student(ID, student_name, student_class, money, all_time) VALUES (";
sSql += id +"," + studentName+ "," + studentClass + "," + "money" + ")";

m_pRecordset = m_pConnection->Execute( (_bstr_t)sSql, &RecordsAffected, adCmdText );
//这样做,还是写入数据库失败
快乐鹦鹉 2004-03-30
  • 打赏
  • 举报
回复
m_pRecordset = m_pConnection->Execute("INSERT INTO student(ID, student_name, student_class, money, all_time) VALUES (id, studentName, class,'money,'')",&RecordsAffected,adCmdText);
-----------------------------------------------------
这句话错了。SQL语句写错了。你将变量名称写到字符串中了。相当于向ID字段中写入字符串"id",而非变量id
CString sSql = 'INSERT INTO student(ID, student_name, student_class, money,
all_time) VALUES (";
sSql += id +"," + studentName+","+class + ","+money+")";

4,012

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧