UDL与数据库连接

本篇文章主要用来讲怎么使用OLE DB Universal Data Link (.udl) 文件快速简单的为ADO.NET OleDbConnection 对象创建一个数据库连接。
  OLE DB Universal Data Link (.udl) 文件为ADO连接字符串连接OLE DB 数据源提供了一个非常方便并且经过验证的方法。使用任何以.udl为后缀名的文件都可以创建一个标准

的连接字符串。你在ADO连接对象中可以直接指定明确路径的使用一个后缀名是.UDL的文件连接一个数据库。当你使用这个文件作为参数的时候,其实它已经包含了连接字符串的信

息了。
  接下来我所要讲的非常关键,这些都是从.NET Framework 类库文档中获得的:创建一个UDL为后缀名的文件,然后把它作为一个参数加载到连接字符串当中。如果你对指定的UDL

为创建操作不少于一次的时候,那只有最后一次操作的连接上的会被加载。如果连接字符串引用了UDL文件,但没有加载UDL中的类容,连接字符串间会

在每次连接的时候把所有的UDL文件重新解析一遍,因为这样UDL被解析了,它才会执行,连接字符串并不知道你给它指定了哪个UDL。  下面就来建立一个简单的控制台应用程序,引用UDL去连接数据库吧。打开你所创建的UDL文件,使用SQL Server OLE DB 提供程序去连接MS SQL Server数据库,这个UDL名字就

称作test.udl,放在C盘根目录下。
  顺便说一下,udl有很多的数据库连接提供程序,如果你不想使用SQL Server的话,你可以使用其他的数据提供程序,使用其他的数据库。

 

  1. using System;
  2. using System.Data;
  3. using System.Data.OleDb;
  4. namespace DataLink
  5. {
  6.     class Class1
  7.     {
  8.         static void Main(string[] args)
  9.         {
  10.             OleDbConnection myConnection = new OleDbConnection("File Name = c://test.udl");
  11.             try
  12.             {
  13.                 myConnection.Open();
  14.                 if (myConnection.State == ConnectionState.Open)
  15.                     Console.WriteLine("Connection opened successfully!");
  16.                 else
  17.                     Console.WriteLine("Connection could not be established");
  18.             }
  19.             catch(Exception ex)
  20.             {
  21.                 Console.WriteLine(ex.Message.ToString());
  22.             }
  23.             finally
  24.             {
  25.                 myConnection.Close();
  26.             }
  27.             Console.ReadLine();
  28.             return;
  29.         }
  30.     }
  31. }

 

      当你的UDL名字与上面的名字不一致,或者指定了一个与上面的路径不一致的路径的时候,你还是要修改一下的,不然会出错的。程序没问题,打出来的是“Connection opened

successfully!”.
     当然如果你还有其它疑问的话,你可以参考微软的帮助文档。

   

     还有我这里提供的操作步骤:

     步驟一:先在你的電腦隨便一個目錄下建立一個 ???.url 的檔案。假設建立在 C:/ 的 connection.udl。
     步驟二:這時你就會發現剛剛建立的檔案圖示不太一樣,用滑鼠點兩下後就會蹦出一個 "資料連結內容" 的視窗。 
    步驟三:看到這個視窗就知道怎麼設定了吧!不知道我也沒辦法了。在最後一個 "全部" 的分頁裡可以設定資料提供者的屬    性。

設定完後,可以使用 "記事本" 來開啟這個檔案,便可以看到連線字串。直接複製給 OleDbConnection.ConnectionString 使用就好了。

想要更偷懶?往下看...
剛剛已經假設把 udl 檔案建立於 "C:/connection.udl" 並將資料連結內容設定完畢。
你可以不需要將 udl 內的連線字串複製給 ConnectionString 用,只要將 ConnectionString 指向這個檔案就好。用法為:File Name=實體路徑的udl檔案名稱。

範例:
Dim conn as New System.Data.SqlClient.OleDbConnection
conn.ConnectionString = "File Name=C:/connection.udl"
這樣就完成了~~~要使用虛擬路徑對應的話可搭配 Server.MapPath 使用。

 

 

         如果你想更直观的看到你的连接字符串,那我也有简便的方法:

       在你创建好那个UDL文件后,新建一个记事本或者只要可以显示文字的东西,打开记事本,然后把设置好的UDL直接拖到记事本中,然后你就可以看到了

        

  1. [oledb]
  2. ; Everything after this line is an OLE DB initstring
  3. Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:/Documents and Settings/Administrator/桌面/CardManager.dll;Persist Security Info=False

    里面就包括了你的连接字符串,当然我是连接的是ACCESS数据库,它本身还是提供了很多的支持程序,支持许多的数据库以及各种连接,很好用,大家一定要用啊!

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值