C#應用程式連線Oracle DB免安裝Client的方法

使用framework內建的System.Data.OracleClient,這個需要安裝Oracle Client並且設定tnsname.ora檔案才可以與Oracle DB連線,工具會報出已過時的警告,建議不要用這種方式,因為.net framework已不在支援這樣的寫法。

那就只好使用另一種方式了(Oracle官方出品),就是Oracle.DataAccess.Client或 Oracle.ManagedDataAccess.dll,這兩種( 也叫ODP.net )方式都不用安裝Oracle Client, Oracle.ManagedDataAccess.dll 性能最優,官方下載位置在這裡

當然也可以用Nuget的方式去安裝。
PM> Install-Package Oracle.ManagedDataAccess -Version 19.6.0

解壓縮ODP.net後在參考本篇,加入到參考中,就可以連線Oracle DB了。

一個簡單的select範例如下:

string conn_str = "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=主機位置)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=DB的SID)));User ID=DB帳號;Password=DB密碼;";
OracleConnection conn_oracle = new OracleConnection(conn_str);
conn_oracle.Open();
OracleCommand cmdOracle = new OracleCommand("SELECT TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS') RIGHTNOW FROM DUAL", conn_oracle);
OracleDataReader readerOracle = cmdOracle.ExecuteReader();
if (readerOracle.Read())
{
	
	this.EventLog.WriteEntry("現在時間:" + readerOracle["RIGHTNOW"].ToString());
}
readerOracle.Close();

if (conn_oracle != null)
{
	conn_oracle.Close();
	conn_oracle.Dispose();
}

More From Forest Beat

冬の前田森林公園のフリ

在Linux中列出目錄的空間使用大小

列出檔案大小的指令是ls,但是這個指令列出的目錄大小是固定的,又不能自動加總,所以想要知道/home/下各個使用者用了多少檔案空間,那可以參考以下指令
技術
0
minutes
高層ビルのフリー写真素材

Windows 10中的小算盤不見了?

如題小算盤不見了怎麼辦?其實很簡單,搜尋商店,然後輸入關鍵字,安裝一下就可以~~~
技術
0
minutes
桜のフリ

Top 20 Best Programming Languages To Learn in 2024

IT小菜雞必需掌握一種以上的程式語言,因為程式語言是實現軟體解決方案的工具。
技術
0
minutes
サクラのフリ

快速了解MVC、MVP、MVVM、MVI架構的演進

MVC、MVP、MVVM、MVI 都是軟體架構模式,用來組織和管理程式碼,提高程式碼的可讀性、可維護性和可擴展性。
技術
0
minutes
spot_imgspot_img