1. 程式人生 > >Oracle - C#連接數據庫

Oracle - C#連接數據庫

需要 lec prot tag datatable 才有 eas config 訪問類

一.System.Data.OracleClient 微軟提供的連接庫,不過已經過時,不建議使用

二.Oracle.DataAccess.Client (ODP.Net) Oracle提供的數據庫訪問類庫.

三.Oracle.ManagedDataAccess.dll (ODP.NET Managed) 也是Oracle提供的。

推薦使用方案3,但是使用ManagedDataAccess的話,必須添加對程序集“netstandard”的引用,而這個程序集又是FrameWork 4.6及以上才有的,

所以筆者這用的.net框架FrameWork 4.5的項目並不能使用, 采用方案二來處理,方案二是需要區分x86/x64版本的.

1.去官網下載需要的dll文件。

http://www.oracle.com/technetwork/topics/dotnet/utilsoft-086879.html

下載對應的vs版本的dll文件,如果vs版本太低,就下載最老的dll文件,筆者下載的最老的: ODAC 11.2 Release 5

將這些dll文件放到項目運行的bin目錄下,和運行文件同一目錄。

數據庫連接語句:

  <connectionStrings>
    <add name="OracleConnString" connectionString="Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.161)(PORT=1521))(CONNECT_DATA=(SID=MyOracle)));Persist Security Info=True;User ID=system;Password=Sky312;"
/> </connectionStrings>

C#調用

private readonly string connstr = ConfigurationManager.ConnectionStrings["OracleConnString"].ConnectionString;

string sql = "SELECT * FROM \"UserInfo\"   ";

OracleConnection connection = new OracleConnection(connstr);
connection.Open();
OracleCommand command 
= new OracleCommand(sql, connection); DataTable table = null; try { OracleDataAdapter adapter = new OracleDataAdapter(); adapter.SelectCommand = command; table = new DataTable(); adapter.Fill(table); } catch { throw; } finally { command.Dispose(); connection.Close(); connection.Dispose(); }
dataGridView1.DataSource =
table;

查詢

技術分享圖片

Oracle - C#連接數據庫