1、添加依赖库引用:

2、编写帮助类库
using Oracle.ManagedDataAccess.Client;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
namespace DB_Helper4Oracle
{
public class oracle_helper
{
public string ip = "";
public ushort port = 1521;
public string user = "";
public string pass = "";
public string service_name = "";
public string err = "0";
public DataTable DB_Read(string sql_str)
{
DataTable dt = new DataTable();
try
{
using (OracleConnection db_conn = new OracleConnection($@"Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST={ip})(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME={service_name})));User Id={user};Password={pass};"))
{
db_conn.Open();
using (OracleCommand db_Command = new OracleCommand(sql_str, db_conn))
{
OracleDataAdapter db_Adapter = new OracleDataAdapter(db_Command);
db_Adapter.Fill(dt);
db_conn.Close();
}
}
err = "0";
}
catch (Exception ex)
{
dt = null;
err = $@"读数据失败,原因:{ex.Message},SQL:{sql_str}";
}
return dt;
}
public bool DB_Write(string sql_str)
{
try
{
using (OracleConnection db_conn = new OracleConnection($@"Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST={ip})(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME={service_name})));User Id={user};Password={pass};"))
{
db_conn.Open();
using (OracleCommand db_Command = new OracleCommand(sql_str, db_conn))
{
db_Command.ExecuteNonQuery();
}
db_conn.Close();
}
err = "0";
return true;
}
catch (Exception ex)
{
err = $@"写数据失败,原因:{ex.Message},SQL:{sql_str}";
return false;
}
}
public string GetLastErr()
{
return err;
}
}
}
3、调用测试
private void Form1_Load(object sender, EventArgs e)
{
db = new oracle_helper()
{
ip = "*.*.*.*",
port = 1521,
user = "***",
pass = "***",
service_name = "***"
};
string cph = "冀D***";
DataTable dt = db.DB_Read($@"
SELECT * FROM V_CGJC WHERE CAR_NO='{cph}'
");
MessageBox.Show(db.GetLastErr()); ;
dataGridView1.DataSource = null;
dataGridView1.DataSource = dt;
}
