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;
}