求OracleHelper数据库助手的使用,主要是针对数据访问层的增、删、改、插,附OracleHelper数据库助手,请帮我给一个表增、删、改、插的例子,谢谢,本人刚学
OracleHelper.cs
using System;
using System.Data;
using System.Configuration;
using System.Data.OracleClient;
using System.Data.SqlClient;
namespace XingRenDAL
{
/// <summary>
/// Oracle数据库操作助手
/// </summary>
public class OracleHelper
{
/// <summary>
/// 连接Oracle数据库
/// </summary>
private OracleConnection OracleConn = null;
private readonly string RETURNVALUE = "RETURNVALUE";
public void Open()
{
if (OracleConn == null)
{
OracleConn = new OracleConnection(ConfigurationManager.AppSettings["OracleConnetionString"].ToString());
///oraConn =new OracleConnection("data source=EIS;user id=SYSTEM;password=yzmroot;");
}
if (OracleConn.State == ConnectionState.Closed)
{
try
{
///打开数据库连接
OracleConn.Open();
}
catch(Exception ex)
{
SystemError.CreateErrorLog(ex.Message);
}
finally
{
///关闭已经打开的数据库连接
}
}
}
/// <summary>
/// 关闭数据库连接
/// </summary>
public void Close()
{
///判断连接是否已经创建
if (OracleConn != null)
{
///判断连接的状态是否打开
if (OracleConn.State == ConnectionState.Open)
{
OracleConn.Close();
}
}
}
/// <summary>
/// 释放资源
/// </summary>
public void Dispose()
{
// 确认连接是否已经关闭
if (OracleConn != null)
{
OracleConn.Dispose();
OracleConn = null;
}
}
/// <summary>
/// 执行存储过程
/// </summary>
/// <param name="procName">存储过程的名称</param>
/// <returns>返回存储过程返回值</returns>
public int RunProc(string procName)
{
OracleCommand cmd = CreateProcCommand(procName, null);
try
{
///执行存储过程
cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
///记录错误日志
SystemError.CreateErrorLog(ex.Message);
}
finally
{
///关闭数据库的连接
Close();
}
///返回存储过程的参数值
return (int)cmd.Parameters[RETURNVALUE].Value;
}
/// <summary>
/// 执行存储过程
/// </summary>
/// <param name="procName">存储过程名称</param>
/// <param name="prams">存储过程所需参数</param>
/// <returns>返回存储过程返回值</returns>
public int RunProc(string procName, OracleParameter[] prams)
{
OracleCommand cmd = CreateProcCommand(procName, prams);
try
{
///执行存储过程
cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
///记录错误日志
SystemError.CreateErrorLog(ex.Message);
}
finally
{
///关闭数据库的连接
Close();
}
///返回存储过程的参数值
return (int)cmd.Parameters[RETURNVALUE].Value;
}
/// <summary>
/// 执行存储过程
/// </summary>
/// <param name="procName">存储过程的名称</param>
/// <param name="dataReader">返回存储过程返回值</param>
public void RunProc(string procName, out OracleDataReader dataReader)
{
///创建Command
OracleCommand cmd = CreateProcCommand(procName, null);
try
{
///读取数据
dataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
catch (Exception ex)
{
dataReader = null;
///记录错误日志
SystemError.CreateErrorLog(ex.Message);
}
}
/// <summary>
/// 执行存储过程
/// </summary>
/// <param name="procName">存储过程的名称</param>
/// <param name="prams">存储过程所需参数</param>
/// <param name="dataSet">返回DataReader对象</param>
public void RunProc(string procName, OracleParameter[] prams, out OracleDataReader dataReader)
{
///创建Command
OracleCommand cmd = CreateProcCommand(procName, prams);
try
{
///读取数据
dataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
catch (Exception ex)
{
dataReader = null;
///记录错误日志
SystemError.CreateErrorLog(ex.Message);
}
}
/// <summary>
/// 执行存储过程
/// </summary>
/// <param name="procName">存储过程的名称</param>
/// <param name="dataSet">返回DataSet对象</param>
public void RunProc(string procName, ref DataSet dataSet)
{
if (dataSet == null)
{
dataSet = new DataSet();
}
///创建OracleDataAdapter
OracleDataAdapter da = CreateProcDataAdapter(procName, null);
try
{
///读取数据
da.Fill(dataSet);
}
catch (Exception ex)
{
///记录错误日志
SystemError.CreateErrorLog(ex.Message);
}
finally
{
///关闭数据库的连接
Close();
}
}
/// <summary>
/// 执行存储过程
/// </summary>
/// <param name="procName">存储过程的名称</param>
/// <param name="prams">存储过程所需参数</param>
/// <param name="dataSet">返回DataSet对象</param>
public void RunProc(string procName, OracleParameter[] prams, ref DataSet dataSet)
{
if (dataSet == null)
{
dataSet = new DataSet();
}
///创建OracleDataAdapter
OracleDataAdapter da = CreateProcDataAdapter(procName, prams);
try
{
///读取数据
da.Fill(dataSet);
}
catch (Exception ex)
{
///记录错误日志
SystemError.CreateErrorLog(ex.Message);
}
finally
{
///关闭数据库的连接
Close();
}
}