void CDBAccessDlg::AddToGrid(void)
{
OnInitADOConn();
_bstr_t bstrSQL = "select * from employees order by 编号 dese";
m_pRecordset.CreateInstance(__uuidof(Record));
m_pRecordset->Open(bstrSQL,adOpenUnspecified,adLockUnspecified); //这一句就不知道怎么写,里面的参数也不知道有几个,网上找了也不对, while (! m_pRecordset->adoEOF)
{
m_grid.InsertItem(0,"");
m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->Getcollect(_T("编号")));
m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->Getcollect(_T("姓名")));
m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->Getcollect(_T("性别")));
m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->Getcollect(_T("学历"))); m_pRecordset->MoveNext();
}
ExitConnect();}
麻烦朋友帮我看以下,一下是运行后的错误提示:1>e:\vc++_test\dbaccess\dbaccess\dbaccessdlg.cpp(197) : error C2660: “_Record::Open”: 函数不接受 3 个参数
1>e:\vc++_test\dbaccess\dbaccess\dbaccessdlg.cpp(199) : error C2039: “adoEOF”: 不是“_Record”的成员
1> e:\vc++_test\dbaccess\dbaccess\debug\msado15.tlh(3002) : 参见“_Record”的声明
1>e:\vc++_test\dbaccess\dbaccess\dbaccessdlg.cpp(199) : fatal error C1903: 无法从以前的错误中恢复;正在停止编译
1>生成日志保存在“file://e:\vc++_test\DBAccess\DBAccess\Debug\BuildLog.htm”
1>DBAccess - 3 个错误,0 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
{
OnInitADOConn();
_bstr_t bstrSQL = "select * from employees order by 编号 dese";
m_pRecordset.CreateInstance(__uuidof(Record));
m_pRecordset->Open(bstrSQL,adOpenUnspecified,adLockUnspecified); //这一句就不知道怎么写,里面的参数也不知道有几个,网上找了也不对, while (! m_pRecordset->adoEOF)
{
m_grid.InsertItem(0,"");
m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->Getcollect(_T("编号")));
m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->Getcollect(_T("姓名")));
m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->Getcollect(_T("性别")));
m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->Getcollect(_T("学历"))); m_pRecordset->MoveNext();
}
ExitConnect();}
麻烦朋友帮我看以下,一下是运行后的错误提示:1>e:\vc++_test\dbaccess\dbaccess\dbaccessdlg.cpp(197) : error C2660: “_Record::Open”: 函数不接受 3 个参数
1>e:\vc++_test\dbaccess\dbaccess\dbaccessdlg.cpp(199) : error C2039: “adoEOF”: 不是“_Record”的成员
1> e:\vc++_test\dbaccess\dbaccess\debug\msado15.tlh(3002) : 参见“_Record”的声明
1>e:\vc++_test\dbaccess\dbaccess\dbaccessdlg.cpp(199) : fatal error C1903: 无法从以前的错误中恢复;正在停止编译
1>生成日志保存在“file://e:\vc++_test\DBAccess\DBAccess\Debug\BuildLog.htm”
1>DBAccess - 3 个错误,0 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
2、在Open中,竟然没有Connection对象?定义:_RecordsetPtr pRecordSet;
初始化:pRecordSet.CreateInstance(__uuidof(Recordset));
使用:
pRecordSet->Open((_variant_t)sql,pConn.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);pConn 为 _ConnectionPtr 对象,自己解决定义和初始化,以及连接数据库
{
OnInitADOConn();
_bstr_t bstrSQL = "select * from employees order by 编号 dese";
m_pRecordset.CreateInstance(__uuidof(Recordset));
m_pRecordset->Open((_variant_t)bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText); while (! m_pRecordset->adoEOF)
{
m_grid.InsertItem(0,"");
m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->Getcollect(_T("编号")));
m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->Getcollect(_T("姓名")));
m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->Getcollect(_T("性别")));
m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->Getcollect(_T("学历"))); m_pRecordset->MoveNext();
}
ExitConnect();}
还是有错误提示:
1>e:\vc++_test\dbaccess\dbaccess\dbaccessdlg.cpp(197) : error C2660: “_Record::Open”: 函数不接受 5 个参数
1>e:\vc++_test\dbaccess\dbaccess\dbaccessdlg.cpp(199) : error C2039: “adoEOF”: 不是“_Record”的成员
1> e:\vc++_test\dbaccess\dbaccess\debug\msado15.tlh(3002) : 参见“_Record”的声明
1>e:\vc++_test\dbaccess\dbaccess\dbaccessdlg.cpp(199) : fatal error C1903: 无法从以前的错误中恢复;正在停止编译
1>生成日志保存在“file://e:\vc++_test\DBAccess\DBAccess\Debug\BuildLog.htm”
1>DBAccess - 3 个错误,0 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
_RecordPtr m_pRecordset; //指向Recordset对象的指针已经定义了,就是还有上面的错误提示。请高手帮忙!
// TODO: 在此处引用程序需要的其他头文件
//加载数据库类
#include "icrsint.h"
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","EndOfFile")2、那个sql 直接用CString 定义
3、while(!pRecordSet->EndOfFile)
{
...
pRecordSet->MoveNext();
}
而不是while (! m_pRecordset->adoEOF)
rename("EOF","adoEOF")rename("BOF","adoBOF")
已经有啦。
::CoInitialize(NULL);是加在什么地方呢?好像编译后还是错误。
本人是新手,能加你QQ再请教你吗?我的Q611695232.谢谢!