2012-11-21 69 views
2

我在Visual Studio中創建了一個加載項目,它有一些窗體,並且通過它我必須連接到安裝在其他系統上的DB2數據庫。我有服務器的機器名稱,我想要連接到的數據庫名稱,端口號和憑證。我的系統上沒有安裝任何用於DB2的客戶端。我想使用OLEDB連接。使用c連接DB2#

我可以在沒有安裝客戶端的情況下實現此目的嗎?另外讓我知道什麼參考dll可以幫助我實現這個目標,即應該使用什麼 - 用於DB2的IBM OLE DB提供程序或用於IBM DB2的Microsoft OLEDB提供程序或其他?我在哪裏找到他們?

+0

你能後,請解釋爲什麼你需要'OLEDB'而不是'ODBC'? – Lijo

回答

1

對於OLEDB參閱.NET DB2 OLEDB pre-requisites

另請參考:what is the difference between OLE DB and ODBC data sources?

ODBC對於連接,我使用下面

連接字符串

<add name="DB2ConnectionString_XA" 
    connectionString="Driver={IBM DB2 ODBC DRIVER};Database=MyDB;Hostname=DB2GWTST;Protocol=TCPIP;Port=3700;Uid=remotxa;Pwd=xxxx;"/> 

CODE

 using (OdbcConnection odbcConnection = new OdbcConnection(db2ConnectionString)) 
     { 
      odbcConnection.Open(); 

    //  string commandText = ""; 

      using (OdbcCommand command = new OdbcCommand(commandText, odbcConnection)) 
      { 
       command.CommandType = System.Data.CommandType.Text; 
       command.Parameters.AddWithValue("@NATIONAL_ID", encryptedSSN); 
       using (OdbcDataReader reader = command.ExecuteReader()) 
       { 
        if (reader.HasRows) 
        { 
         while (reader.Read()) 
         { 
          if (!reader.IsDBNull(0)) 
          { 

          } 
         } 
        } 
       } 
      } 
     } 
-1

我以前使用的是ODBC,而不是OLEDB,但是如果您決定改變對ODBC的想法,我會分享鏈接。 您至少需要安裝Db2客戶端和驅動程序。這將安裝IMB DB」 ODBC驅動程序到您的系統(ODBC數據源)的驅動程序從該網站上發現:。http://www-01.ibm.com/support/docview.wss?uid=swg27016878

安裝添加對IBM.Data.DB2.dll