如何用配置文件连接数据库?

Q:我现在手上用两个软件.它们都用配置文件连接数据库,这两个配置文件如下(*.ini):  
  apc.ini  
  [ConectInfo]  
  Pvd=SQLOLEB.1  
  PSI=False  
  UserID=chen  
  PW=1234  
  IniCatalog=ety2000  
  DataSource=zhineng  
   
  Lotus.ini  
  [Setup]  
  ServerName=zhineng  
  DatabaseName=Lotus  
  WORKID=TWSQL  
  PASSWD=  
   
   
  两个软件都是用的SQL2000的数据库.  
  这样就不用建数据源了,很方便.  
  在VC中怎样用这样的配置文件连接数据库?另外在VC中怎样调用SQL数据库中的存储过程和视图??  

 

A:

char   szTemp[128];  
  CString   strIniFile;  
  strIniFile   =   ".//apc.ini.ini";  
   
  WIN32_FIND_DATA   fileData;  
  HANDLE   hFileSearch   =   FindFirstFile(strIniFile,   &fileData);  
  if   (hFileSearch   ==   INVALID_HANDLE_VALUE)  
  {  
  AfxMessageBox("读初始化文件出错!");  
  return   FALSE;  
  }  
   
  //   读取数据库服务器有关配置信息  
  ::GetPrivateProfileString("ConectInfo",   "Name",   "BillServer",  
  szTemp,   128,   strIniFile);  
  m_strSvrName   =   szTemp;  
  ::GetPrivateProfileString("ConectInfo",   "Database",   "Bills",  
  szTemp,   128,   strIniFile);  
  m_strDB   =   szTemp;  
  ::GetPrivateProfileString("ConectInfo",   "UID",   "sa",    
  szTemp,   128,   strIniFile);  
  m_strUsrName   =   szTemp;  
  ::GetPrivateProfileString("ConectInfo",   "PWD",   "",  
  szTemp,   128,   strIniFile);  
  m_strPWD   =   szTemp;  
   
   
  try  
  {  
  pConn.CreateInstance("ADODB.Connection");  
  CString   strTmp;  
  strTmp   =   "Provider=SQLOLEDB;SERVER="   +   m_strSvrName +   ";DATABASE="  
  +   m_strDB   +   ";UID="   +   m_strUsrName   +   ";PWD="   +   m_strPWD;  
  pConn->Open(_bstr_t(strTmp),   "",   "",   -1);  
   
  m_pReco   =   NULL;  
  m_pReco.CreateInstance(__uuidof(AdoNS::Recordset));  
  }  
  catch(_com_error   e)   //   捕捉异常  
  {  
  _bstr_t   bstrSource(e.Source());  
  _bstr_t   bs   =     _bstr_t("   Error:   ")   +   _bstr_t(e.Error())  
  +   _bstr_t("   Msg:   ")   +   _bstr_t(e.ErrorMessage())  
  +   _bstr_t("   Description:   ")   +   _bstr_t(e.Description());  
  AfxMessageBox(bs   +   bstrSource);  
  return   FALSE;  
  }

出处:http://topic.csdn.net/t/20050409/20/3923011.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值