1.创建一个DbHelper 继承IDisposable(用于释放非托管资源)。
2.配置对应需要连接的多个数据库配置
3.编写基本的增删改查方法
4.调用完手动释放资源
public class OracleDbHelper : IDisposable
{
public static string _connectionStringPORTAL = ConfigurationManager.ConnectionStrings["dataDb1"].ConnectionString;
public static string _connectionStringCM = ConfigurationManager.ConnectionStrings["dataDb2"].ConnectionString;
/// <summary>
/// 当前数据库链接DbConnection对象
/// </summary>
private OracleConnection _connection = null;
/// <summary>
/// 当前连接
/// </summary>
public OracleConnection Connection
{
get { return _connection; }
}
/// <summary>
/// 打开数据库
/// </summary>
/// <returns></returns>
public static OracleConnection CreateConnectionPORTAL()
{
return new OracleConnection(_connectionStringPORTAL);
}
/// <summary>
/// 打开数据库
/// </summary>
/// <returns></returns>
public static OracleConnection CreateConnectionCM()
{
return new OracleConnection(_connectionStringCM);
}
public OracleCommand CreateCommand(string commandText)
{
OracleCommand command = this._connection.CreateCommand();
command.CommandText = commandText;
command.CommandType = CommandType.Text;
command.BindByName = true;
//command.CommandTimeout =
return command;
}
#region ExecuteScalar
/// <summary>
/// 查询返回单行单列的Oracle语句。( 例:select count(*) from 表名或 select name from 表名 )。
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public object ExecuteScalar(string sql)
{
OracleCommand command = CreateCommand(sql);
object result = ExecuteScalar(command);
return result;
}
public object ExecuteScalar(OracleCommand cmd)
{
//LogCommandInfo(cmd);
if (cmd.Connection.State != ConnectionState.Open)
cmd.Connection.Open();
object result = cmd.ExecuteScalar();
//_logger.Info("Return Result: {0}".FormatString(Convert.ToString(retVal)));
return result;
}
public object ExecuteScalar(string sql, OracleParameter[] parameters)
{
OracleCommand command = CreateCommand(sql);
command.Parameters.AddRange(parameters);
return ExecuteScalar(command);
}
#endregion
#region ExecuteDataTable
public DataTable ExecuteDataTable(string commandText)
{
OracleCommand command = CreateCommand(commandText);
return ExecuteDataTable(command);
}
/// <summary>
/// 查询
/// </summary>
/// <param name="cmd"></param>
/// <returns></returns>
public DataTable ExecuteDataTable(OracleCommand cmd)
{

最低0.47元/天 解锁文章
735

被折叠的 条评论
为什么被折叠?



