C# WinForm 使用Oracle.ManagedDataAccess.dll 连接Oracle数据库
1 安装 Oracle.ManagedDataAccess.dll 引用
VS--工具--NuGet包管理器--管理解决方案的NuGet程序包,浏览搜索 Oracle.ManagedDataAccess.dll 下载即可。
2 封装数据库连接
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Configuration; 6 using Oracle.ManagedDataAccess.Client; 7 using System.Data; 8 using System.IO; 9 using System.Collections; 10 using System.Diagnostics; 11 using Oracle.ManagedDataAccess.Types; 12 13 namespace OracleDemo 14 { 15 public class OracleHelper 16 { 17 private static string connStr = "User Id=admin;Password=123;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.0.1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=test)))"; 18 19 #region 执行SQL语句,返回受影响行数 20 public static int ExecuteNonQuery(string sql, params OracleParameter[] parameters) 21 { 22 using (OracleConnection conn = new OracleConnection(connStr)) 23 { 24 conn.Open(); 25 using (OracleCommand cmd = conn.CreateCommand()) 26 { 27 cmd.CommandText = sql; 28 cmd.Parameters.AddRange(parameters); 29 return cmd.ExecuteNonQuery(); 30 } 31 } 32 } 33 #endregion 34 #region 执行SQL语句,返回DataTable;只用来执行查询结果比较少的情况 35 public static DataTable ExecuteDataTable(string sql, params OracleParameter[] parameters) 36 { 37 using (OracleConnection conn = new OracleConnection(connStr)) 38 { 39 conn.Open(); 40 using (OracleCommand cmd = conn.CreateCommand()) 41 { 42 cmd.CommandText = sql; 43 cmd.Parameters.AddRange(parameters); 44 OracleDataAdapter adapter = new OracleDataAdapter(cmd); 45 DataTable datatable = new DataTable(); 46 adapter.Fill(datatable); 47 return datatable; 48 } 49 } 50 } 51 #endregion 52 } 53 }
3 程序调用
1 string sqlString = "Select a.col1,a.col2 From test a Where a.id=:id"; 2 DataTable dt = OracleHelper.ExecuteDataTable(sqlString,new OracleParameter(":id",1));

浙公网安备 33010602011771号