65,211
社区成员
发帖
与我相关
我的任务
分享
//1.MFC ODBC:
CHAR *szAttributes =
"DSN=student\0DESCRIPTION=student\0"
"SERVER=server name\0"
"DATABASE=student\0";
if (FALSE == SQLConfigDataSource(NULL,ODBC_CONFIG_DSN,"Oracle ODBC Driver\0",szAttributes))
AfxMessageBox("配置系统数据源失败,请手动配置!");
//logon the server
if(dlg.DoModal()==IDOK)
{
szServer=dlg.m_strServer;
szUser=dlg.m_strUser;
szPwd=dlg.m_strPwd;
CString strConnect;
strConnect.Format("SERVER=%s;DSN=student;UID=%s;PWD=%s",szServer,szUser,szPwd);
if(!m_DB.OpenEx(strConnect,CDatabase::useCursorLib|CDatabase::noOdbcDialog))
{
AfxMessageBox("无法登录!请确认服务器、用户名和密码正确!");
return false;
}
}
else
exit(0);
// 2.ADO
_bstr_t source("Driver={Oracle Server};Data Source=student;");
_bstr_t user("username");
_bstr_t pwd("password");
try{
hr=m_connection.CreateInstance(_uuidof(Connection));
if(SUCCEEDED(hr))
hr=m_connection->Open(source,user,pwd,16);
else
MessageBox("Connection Error");
if(SUCCEEDED(hr))
hr=m_recordset.CreateInstance(_uuidof(Recordset));
else
MessageBox("Open Error");
if(SUCCEEDED(hr))
m_fConnected=TRUE;
else
m_fConnected=FALSE;
}
catch(_com_error &e)
{
MessageBox(e.ErrorMessage());
m_fConnected=FALSE;
}
if(!m_fConnected)
MessageBox("ADO数据源初始化失败");
else
{
m_strSource=(const char*)source;
AfxMessageBox(m_strSource);
}