在Visual C++中如何利用UDL文件来建立ADO连接

2016-02-19 12:34 20 1 收藏

下面这个在Visual C++中如何利用UDL文件来建立ADO连接教程由图老师小编精心推荐选出,过程简单易学超容易上手,喜欢就要赶紧get起来哦!

【 tulaoshi.com - 编程语言 】


  使用通用数据连接文件(*.UDL,以下简称文件)来创建ADO连接,可以和ODBC一样可视化地定义要连接的数据源,从而实现数据访问的透明性。
  
  1.使用UDL文件来创建ADO连接
  
  创建ADO的连接,首先要设置ADO连接对象的ConnectionString属性,该属性提供所要连接的数据库类型、数据所处服务器、要访问的数据库和数据库访问的安全认证信息。比较专业的方法是在ConnectionString中直接提供以上信息,下面是访问不同类型数据源设置ConnectionString的标准:
  访问ODBC数据
  
  "Provider=MSDASQL;DSN=dsnName;UID=userName;PWD=userPassWord;"
  访问Oracle数据库
  "Provider=MSDAORA;Data Source=serverName;User ID=userName; Password=userPassword;"
  访问MS SQL数据库
  "Provider=SQLOLEDB;Data Source=serverName;Initial Catalog=databaseName; User ID=userName;Password=userPassword;"
  访问Access 数据库
  "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=databaseName;User ID=userName;Password=userPassword;"
  上述的连接属性设置标准随着数据源的类型不同而变化,软件用户经常不习惯这种设置方式,都希望有可视化的数据源设置方法。为此Microsoft提供了通用数据连接文件(.UDL)来建立和测试ADO连接属性。ADO连接对象可以很方便地使用UDL文件来连接数据源,下面例子使用my_data1.udl来创建ADO连接。
  
  _ConnectionPtr m_pDBConn;
  m_pDBConn.CreateInstance(__uuidof(Connection));
  m_pDBConn-ConnectionString ="File Name=c:mydirmy_data1.udl";
  m_pDBConn-Open("","","",NULL);
  这样一来无论数据源如何变化,在软件中都可以用统一的方法编程。当数据源改变时,只要双击相应的udl文件即可可视化地设置数据源,无需更改软件。
  
  因为ADO是COM接口,为了软件的可靠性,打开ADO连接时,可以加入异常处理代码。
  
  try{
  m_pDBConn-Open("","","",NULL);
  }catch(_com_error &e){
  //处理异常的代码
  . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
  m_pDBConn=NULL;
  }
  因为_ConnectionPtr m_pDBConn是智能指针,应在处理异常代码时将智能指针设为NULL后将自动将引用计数降为0。
  
  假如不出现异常,只要在使用完m_pDBConn,只要引用Close方法即可。
  
  2.创建你所需的UDL文件
  
  在你所想创建UDL文件的目录中单击右键,选择从菜单 新建Microsoft 数据连接,然后将新创建的UDL文件更改为你所希望的文件名(.UDL扩展名不能改变)。
  
  注:假如操作系统是Window 2000,先创建一个文本文件,再将该文本文件的扩展名改为 "udl"。
  
  然后双击所创建的UDL文件,即可视化地完成数据源的设定。
  
  使用UDL文件必须在系统中先安装Microsoft MDAC,Win 98第二版,Win 2000中都自动包含了该组件,需要该组件最新版本时可以到Microsoft网站去下载。

来源:http://www.tulaoshi.com/n/20160219/1601197.html

延伸阅读
   持久对象 (persistent objects)广泛应用于游戏、分布式数据库系统、多媒体以及图形应用程序中。目前C++并不直接支持持久性(persistence)(但有一些在C++未来版本中添加持久性和反射(reflection)的建议)。 !-- frame contents -- !-- /frame contents -- 持久对象可以在创建它的程序的作用域之外保持自身状态。...
标签: ASP
  dddggg [原作] Function SwitchExcelInfo(xlsFileName) Dim xlsStr Dim rs Dim i,j,k Dim ExcelConn Dim ExcelFile Dim objExcelApp Dim objExcelBook Dim bgColor xlsStr = "" ExeclFile = Server.MapPath(xlsFileName) Set objExcelApp = CreateObject("Excel.Application") objExcelApp.Quit Set objExcelApp = CreateObject("...
  适用于: Microsoft Visual C++ .NET 2003 Microsoft Visual C++ Toolkit 2003 Microsoft Visual Studio .NET 摘要: 演示了 Visual C++ 2003 编译器提供的众多代码优化功能中的几项功能。(8 ...
随着信息时代的到来,需要处理的信息量越来越庞大,需要解决的问题越来越复杂,使得计算量剧增。通过提高单个处理器的计算速度和采用传统的"顺序(串行)"计算技术已难以胜任。因此,需要有功能更强大的计算机系统和计算机技术来支撑。并行计算机及并行计算技术应运而生。     但由于缺乏实验环境和机...
本文以eMule为例,探讨一下多国语言支持的实现。选择emule,因为它的多国语言支持实现的相当好,可以支持动态切换。而且最要害,它是开源的,可以直接通过源码来研究它的实现技术。 !-- frame contents -- !-- /frame contents -- emule是利用动态加载资源DLL来实现多语言切换的,每一个资源DLL中包含了一份对应某一语言的字符...

经验教程

545

收藏

10
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部