2014年2月25日 星期二

[ASP.NET] 連接Oracle

問題:
大部分ASP.NET網站搭配SQL Server較多,若DB使用Oracle,該怎麼做?


作法(使用oleDb):
0. 主機或local需安裝Oracle client,在tnsname.ora設定連Oracle Server服務資訊。

1. 在web.config的connectionStrings標籤內加入連線資訊,例:
<add name="OracleDBConn" connectionString="Provider=MSDAORA(OraOLEDB.Oracle);Data Source=service_name;Persist Security Info=True;User ID=user_id;Password=password"/>

2. 在DB存取class中,引用System.Data.OleDb命名空間;

3. 擷取連線字串(需引用System.Configuration命名空間):
private static string OracleDBConn = ConfigurationManager.ConnectionStrings["OracleDBConn"].ConnectionString;

4. 撰寫操作method,例:
public static DataTable ExecuteDataTable(string strQuery)
{
    try
    {
        DataTable dtReturn = new DataTable();
        using (OleDbConnection conn = new OleDbConnection(OracleDBConn))
        {
            using (OleDbDataAdapter sda = new OleDbDataAdapter(strQuery, conn))
            {
                sda.Fill(dtReturn);
                return dtReturn;
            }
        }
    }
    catch (Exception ex)
    {
        throw ex;
    }
}


參考資料:
http://msdn.microsoft.com/zh-tw/library/system.data.oledb(v=vs.110).aspx
http://c.ittoolbox.com/groups/technical-functional/csharp-l/connection-string-for-ms-access-in-c-3271615

沒有留言:

張貼留言