收藏 (0) +1 (0) +1 (0) +1
收藏成功查看收藏>>

正在阅读:ADO 数据库连接ADO 数据库连接

2004-04-26 10:16 出处:CSDN 作者:eliner 责任编辑:linjixiong

  4、打开一个连接
  pConnection->Open(ConnectionString,"","",adModeUnknown);///连接数据库

  上面的连接字符串ConnectionString根据不同的数据源,分别对应不同的写法
  1)访问Access 2000
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=databaseName;User ID=userName;Password=userPassWord"

  2)访问ODBC数据
  " Provider=MADASQL;DSN=dsnName;UID=userName;PWD=userPassword;"

  3)访问Oracle数据库
  “Provider=MSDAORA;Data Sourse=serverName;User ID=userName;Password=userPassword;"

  3)访问MS SQL数据库
  "Provider=SQLOLEDB,Data Source=serverName;Initial Catalog=databaseName;User ID=userName;Password=userPassword;"

  4、执行SQL命令
  SQL命令比较多,但是不去考虑细节,这里只说出通用的方法
  CString strSQL;//定义SQL命令串,用来保存SQL语句

  strSQL.Format("SQL statement");
 
  然后在每个要用到SQL命令串的方法中,使用strSQL.AllocSysString()的方法进行类型转换

  5、com的专用数据类型

  variant ,bstr ,SafeArray

  variant变量的范围包括很多,使用_variant_t 进行管理
  bstr是一种字符串变量,使用_bstr_t进行管理

  6、关闭连接

  if(m_pConnection->State)//不能多次关闭,否则会出现错误
  m_pConnection->Close();

  7、结构化异常处理
  ADO封装了COM接口,所以需要进行错误处理
  如下例:
  HRESULT hr;
   try
  {
  hr = m_pConnection.CreateInstance("ADODB.Connection");///创建Connection对象
  if(SUCCEEDED(hr))
  {
  hr = m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data   Source=test.mdb","","",adModeUnknown);///连接数据库
  ///上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改  为:Provider=Microsoft.Jet.OLEDB.3.51; }
  }
  catch(_com_error e)///捕捉异常
  {
  CString errormessage;
  errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage());
  AfxMessageBox(errormessage);///显示错误信息
  }

  8、错误原因的分析
  (1)不支持接口,可能是不能插入空值

  好了,希望大家可以跟我一起完善这篇总结!



察看评论详细内容 我要发表评论
作者笔名简短内容 发表时间
:
键盘也能翻页,试试“← →”键

相关文章

关注我们

最新资讯离线随时看 聊天吐槽赢奖品
手机访问回到顶部