BOOL CGetFieldNameDlg::OnInitDialog()
{
。。
// TODO: Add extra initialization here
AfxOleInit(); HRESULT hr = m_pConnection.CreateInstance(__uuidof(Connection));
if(FAILED(hr))
return FALSE; _bstr_t ConString = "Provider = SQLOLEDB; Server = 192.168.0.23; \
Database = testdb; uid = sa; pwd = 1;"; try
{
m_pConnection->Open(ConString, "sa", "1", adModeUnknown); m_pRecordset.CreateInstance(__uuidof(Recordset));
}
catch(_com_error& e)
{
::MessageBox(NULL, e.Description(), "Waring", MB_OK | MB_ICONWARNING); }
return TRUE; // return TRUE unless you set the focus to a control
}
void CGetFieldNameDlg::OnButton1()
{
。。
_bstr_t mStrSQL;
mStrSQL = "select * from student";当运行到这时:
m_pRecordset->Open(mStrSQL, m_pConnection.GetInterfacePtr(),
adOpenDynamic, adLockOptimistic, adCmdText);。
}出现对象名"student"无效的错误信息!可是在查询分析器中可以执行select * from student
请问是怎么回事啊?
{
。。
// TODO: Add extra initialization here
AfxOleInit(); HRESULT hr = m_pConnection.CreateInstance(__uuidof(Connection));
if(FAILED(hr))
return FALSE; _bstr_t ConString = "Provider = SQLOLEDB; Server = 192.168.0.23; \
Database = testdb; uid = sa; pwd = 1;"; try
{
m_pConnection->Open(ConString, "sa", "1", adModeUnknown); m_pRecordset.CreateInstance(__uuidof(Recordset));
}
catch(_com_error& e)
{
::MessageBox(NULL, e.Description(), "Waring", MB_OK | MB_ICONWARNING); }
return TRUE; // return TRUE unless you set the focus to a control
}
void CGetFieldNameDlg::OnButton1()
{
。。
_bstr_t mStrSQL;
mStrSQL = "select * from student";当运行到这时:
m_pRecordset->Open(mStrSQL, m_pConnection.GetInterfacePtr(),
adOpenDynamic, adLockOptimistic, adCmdText);。
}出现对象名"student"无效的错误信息!可是在查询分析器中可以执行select * from student
请问是怎么回事啊?
不过
m_pConnection->Open(ConString, "sa", "1", adModeUnknown);中的"sa", "1", 可以是"",""空的
sprintf(mStrSQL,"select * from student");
m_pRecordset->Open(mStrSQL, _variant_t((IDispatch *)theApp.m_pConnection,true),
adOpenDynamic,adLockPessimistic,adCmdText);
这个对吗?
=================================
GetInterfacePtr()?
这个对吗?
我觉得不是程序的问题
你看看数据库名没写错不,可能是student在别的库里,还有你权限够不够