您好,登錄后才能下訂單哦!
需求:
從一臺Oracle數據庫獲取數據,本以為是很簡單的事情,直接將原來的SqlClient換成OracleClient調用,結果遠沒自己想的簡單。要么安裝Oracle客戶端,要么安裝PLSQL。網上這方面搜索后,太多的文章,還要不停的去測試。最后找個引入外部類庫的方式。這個DLL其實是Oracle為C#專門提供的,在它的官方也可以下載到(不過找起來很麻煩)。
這里我就把這個方案和dll分享給大家。
點擊這里下載
DEMO示例
using Oracle.ManagedDataAccess.Client; //引入命名空間 private void button1_Click(object sender, EventArgs e) { string strSql = "select * from s_user"; DataTable dt = QueryDt(strSql); } //Oracle連接字符串 private static string strconn = "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.30.0.37)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=EMES)));Persist Security Info=True;User ID=EMES_DEV;Password=EMES_DEV;"; private DataTable QueryDt(string sql) { using (OracleConnection conn = new OracleConnection(strconn)) { try { if (conn.State != ConnectionState.Open) { conn.Open(); } OracleDataAdapter adap = new OracleDataAdapter(sql, conn); DataTable dt = new DataTable(); adap.Fill(dt); return dt; } catch (Exception ex) { return null; } finally { conn.Close(); } } }
連接字符串格式:
格式: string strconn = "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.30.0.37)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=EMES)));Persist Security Info=True;User ID=EMES_DEV;Password=EMES_DEV;"; 格式: string strconn = "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=遠程服務器IP地址)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=遠程服務器數據庫服務名稱)));Persist Security Info=True;User ID=數據庫用戶名;Password=數據庫密碼;";
遠程服務器數據庫服務名稱如下:
效果:
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。