我做了一个ODBC的连接,可它老是弹出选择数据源的框,可我已经创建了数据源,不知如何解决,谁有例子给发一个?E-mail: [email protected]#include <afxdb.h>CDatabase m_db;
CRecordset m_rs;
CString strSQL = _T("");
strSQL = "select max(Pre_entry_) as maxID from Form_hea where Pre_entry_ like '%";
strSQL += (LPCTSTR)cbstrCCFHead.m_str;
strSQL += "%'";
if(m_db.Open(_T("CCF"),FALSE,FALSE, _T("ODBC;DSN=CCF")),TRUE)
{
if(m_db.IsOpen())
{
//m_rs.m_pDatabase = &m_db;
if(m_rs.Open(CRecordset::snapshot,_T(strSQL),CRecordset::readOnly))
{
long rc = m_rs.GetRecordCount();
MessageBox("Success","Title",MB_OK);
}
}
}
CRecordset m_rs;
CString strSQL = _T("");
strSQL = "select max(Pre_entry_) as maxID from Form_hea where Pre_entry_ like '%";
strSQL += (LPCTSTR)cbstrCCFHead.m_str;
strSQL += "%'";
if(m_db.Open(_T("CCF"),FALSE,FALSE, _T("ODBC;DSN=CCF")),TRUE)
{
if(m_db.IsOpen())
{
//m_rs.m_pDatabase = &m_db;
if(m_rs.Open(CRecordset::snapshot,_T(strSQL),CRecordset::readOnly))
{
long rc = m_rs.GetRecordCount();
MessageBox("Success","Title",MB_OK);
}
}
}
修改为:
if (m_db.OpenEx( _T("ODBC;DSN=CCF"), CDatabase::noOdbcDialog | CDatabase::useCursorLib))
Open(...........)中那有错。
m_rs.Open(CRecordset::snapshot,_T(strSQL),CRecordset::readOnly)老是弹出选择框,不知如何解决?????????????
就可以了
不就可以了吗?
2.看connectionstring的格式是否正确
总之我是这么用的
db.OpenEx("DSN=DSNname",CDatabase::noOdbcDialog))
没有出过错。