欢迎进入c/c++编程社区论坛,与200万技术人员互动交流 >>进入
void smslogon::initsqlserver(cstring server, cstring db, cstring username, cstring pwd)
{
m_pconnection.createinstance(adodb.connection);
cstring strcn;
strcn.empty();
strcn=provider=sqloledb;data source=+server
+;initial catalog=+db
+;userid=+username
+;password=+pwd;
_variant_t bcnstr=_variant_t(strcn);
_variant_t bunstr=_variant_t(username);
_variant_t bpwdstr=_variant_t(pwd);
//打开一个连接
try
{
m_pconnection->open(_bstr_t(bcnstr),_bstr_t(bunstr),
_bstr_t(bpwdstr),-1);//adopenunspecified
}
catch(_com_error e)
{
cstring errormessage;
errormessage.format(warning: 连接数据库发生异常. 错误信息: %s; 文件: %s; 行: %d\n, e.errormessage(), __file__, __line__);
afxmessagebox(errormessage);
}
catch(...)
{
afxmessagebox(warning :连接数据库时发生未知错误);
}
}
void smslogon::exitdb() //退出时关闭数据库连接
{
if(m_pconnection!=null)
{
m_pconnection->close();//关闭连接
m_pconnection.release();//释放对象
}
}