using System;
using System.Data;
namespace ETD.Data
{
///
///
///
public interface IDBHandlerble : IDisposable
{
///
/// 添加参数
///
/// 参数名称
/// 参数类型
/// 参数方向
/// 返回执行结果
void AddParameter(string paramName, DbType paramType, ParameterDirection p_objDirection);
///
/// 重载-添加参数
///
/// 参数名称
/// 参数类型
/// 参数方向
/// 参数值
/// 返回执行结果
void AddParameter(string paramName, DbType paramType, ParameterDirection p_objDirection, object pValue);
///
/// 添加有长度的参数
///
/// 参数名称
/// 参数类型
/// 参数长度
/// 参数方向
/// 返回执行结果
void AddParameter(string paramName, DbType paramType, int paramSize, ParameterDirection p_objDirection);
///
/// 重载-添加有长度的参数
///
/// 参数名称
/// 参数类型
/// 参数长度
/// 参数方向
/// 参数值
/// 返回执行结果
void AddParameter(string paramName, DbType paramType, int paramSize, ParameterDirection p_objDirection, object pValue);
///
/// 启动事务处理
///
void BeginTransaction();
///
/// 提交事务处理
///
void CommitTransaction();
///
/// 关闭数据库连接
///
/// 返回执行结果状态码
void ConnectionClose();
///
/// 打开数据连接
///
/// 返回执行结果状态码
void ConnectionOpen();
///
/// 返回数据适配器
///
/// 查询命令
/// 返回执行结果
IDbDataAdapter ExecuteAdapter(string commandText);
///
/// 重载-返回数据适配器(适应存储过程调用需求)
///
/// 查询命令
/// 查询命令类型
/// 返回执行结果
IDbDataAdapter ExecuteAdapter(string commandText, CommandType commandType);
///
/// 返回数据集
///
/// 查询命令
/// 返回执行结果
DataSet ExecuteDataSet(string commandText);
///
/// 重载-返回数据集(适应存储过程调用需求)
///
/// 查询命令
/// 查询命令类型
/// 返回执行结果
DataSet ExecuteDataSet(string commandText, CommandType commandType);
///
/// 重载-返回数据集(适应存储过程调用需求)
///
/// 查询命令
/// 查询命令类型
/// 表名
/// 返回执行结果
DataSet ExecuteDataSet(string commandText, CommandType commandType, string tableName);
///
/// 重载-返回数据集(适应存储过程调用需求)
///
/// DataSet 名称
/// 查询命令
/// 查询命令类型
/// 表名
/// 返回执行结果
DataSet ExecuteDataSet(string dataSetName, string commandText, CommandType commandType, string tableName);
///
/// 返回数据表
///
/// 查询命令
/// 返回执行结果
DataTable ExecuteDataTable(string commandText);
///
/// 返回数据表
///
///
///
/// 返回执行结果
DataTable ExecuteDataTable(string commandText, bool isCloseConnection);
///
/// 重载-返回数据表
///
/// 查询命令
/// 查询命令类型
/// 返回执行结果
DataTable ExecuteDataTable(string commandText, CommandType commandType);
///
/// 重载-返回数据表
///
/// 查询命令
/// 查询命令类型
/// 表名
/// 返回执行结果
DataTable ExecuteDataTable(string commandText, CommandType commandType, string tableName);
///
/// 重载-返回数据表
///
/// 查询命令
/// 查询命令类型
/// 表名
/// 是否关闭数据库
/// 返回执行结果
DataTable ExecuteDataTable(string commandText, CommandType commandType, string tableName, bool isCloseConnection);
///
/// 返回数据表(分页)
///
/// 当前页
/// 每页显示数
/// 总记录数
/// 需要查询的字段
/// 排序字段,例如: id asc,name desc 不带order by
/// 查询表名称,如果是复杂查询传入(select * from ...)
///
DataTable ExecuteDataTable(int page, int pageSize, ref int recordCount, string strFields, string strOrderBy, string strTableName);
///
/// 执行无返回类型数据查询(返回影响行数)
///
/// 查询命令(SQL语句)
/// 返回执行结果影响行数
int ExecuteNonQuery(string commandText);
///
/// 执行无返回类型数据查询(返回影响行数)
///
/// 查询命令(SQL语句)
/// 是否关闭数据连结,true: 关闭,false: 不关闭
/// 返回执行结果影响行数
int ExecuteNonQuery(string commandText, bool isCloseConnection);
///
/// 重载-无返回类型数据查询(适应存储过程调用需求且返回影响行数)
///
/// 查询命令
/// 查询命令类型
/// 返回执行结果影响行数
int ExecuteNonQuery(string commandText, CommandType commandType);
///
/// 重载-无返回类型数据查询(适应存储过程调用需求且返回影响行数)
///
/// 查询命令
/// 查询命令类型
/// 是否关闭数据连结,true: 关闭,false: 不关闭
/// 返回执行结果影响行数
int ExecuteNonQuery(string commandText, CommandType commandType, bool isCloseConnection);
///
/// 返回向前只读数据集查询
///
/// 查询命令
/// 返回执行结果
IDataReader ExecuteReader(string commandText);
///
/// 重载-返回向前只读数据集查询(适应存储过程调用需求)
///
/// 查询命令
/// 查询命令类型
/// 返回执行结果
IDataReader ExecuteReader(string commandText, CommandType commandType);
///
/// 重载-返回向前只读数据集查询(适应存储过程调用需求)
///
/// 查询命令
/// 查询命令类型
/// 提供对查询结果和查询对数据库的影响的说明
/// 返回执行结果
IDataReader ExecuteReader(string commandText, CommandType commandType, CommandBehavior p_objBehaviour);
///
/// 返回第一行第一列结果的数据查询
///
/// 查询命令
/// 返回查询结果
object ExecuteScalar(string commandText);
///
/// 返回第一行第一列结果的数据查询
///
/// 查询命令
/// 是否关闭数据连结,true: 关闭,false: 不关闭
/// 返回查询结果
object ExecuteScalar(string commandText, bool isCloseConnection);
///
/// 重载-返回第一行第一列结果的数据查询(适应存储过程调用需求)
///
/// 查询命令
/// 查询命令类型
/// 是否关闭数据连结,true: 关闭,false: 不关闭
/// 返回查询结果
object ExecuteScalar(string commandText, CommandType commandType, bool isCloseConnection);
///
/// 获得数据库连接字符串
///
/// 模块名称
///
string GetDataLink(string ModuleName);
///
/// 提取参数值
///
/// 参数名称
/// 返回执行结果
object GetParameter(string paramName);
///
/// 将DataTable添加到DataSet中
///
/// DataSet对象
/// 表名数组
void LoadDataSet(DataSet dataSet, string[] tableNames);
///
/// 将DataTable添加到DataSet中
///
/// DataSet对象
/// 表名
void LoadDataSet(DataSet dataSet, string tableName);
///
/// 修改参数值
///
/// 参数名称
/// 参数值
void ModifyParameter(string paramName, object pValue);
///
/// 移除所有的参数
///
void RemoveAllParameters();
///
/// 移除参数
///
/// 参数名称
void RemoveParameter(string paramName);
///
/// 回滚事务处理
///
void RollbackTransaction();
}
}