/// <summary> /// 运行SQL语句、参数化的SQL语句或者存储过程,返回DataSet。 /// 可以传入多条查询语句,返回的DataSet里会有多个DataTable /// </summary> /// <param name="text">查询语句或者存储过程的名称。 /// 比如select * from tableName1 select * from tableName2 /// 或者 Proc_xxxGetDataSet /// </param> /// <returns>返回DataSet</returns> public virtual DataSet ExecuteFillDataSet(string text) { //设置command _dal.SetCommand(text); //创建一个DataAdapter,用于填充数据 DbDataAdapter da = CommonFactory.CreateDataAdapter(_dal.Command, _dal.DatabaseProvider); //关联DataAdapter 和 Command da.SelectCommand = _dal.Command; try { var ds = new DataSet(); da.Fill(ds); //打开数据库,填充数据 return(ds); } catch (Exception ex) { _dal.SetError("ExecuteFillDataSet", text, ex.Message, _dal.ConnectionString); //处理错误 return(null); } finally { //自动关闭了,不用手动关闭。 da.Dispose(); } }
/// <summary> /// 运行SQL语句、参数化的SQL语句或者存储过程,返回DataTable记录集 /// </summary> /// <param name="text">查询语句或者存储过程的名称。 /// 比如select * from tableName1 /// 或者 Proc_xxxGetDataTable /// </param> /// <returns></returns> public virtual DataTable ExecuteFillDataTable(string text) { _dal.SetCommand(text); //设置command DbDataAdapter da = CommonFactory.CreateDataAdapter(_dal.Command, _dal.DatabaseProvider); try { var dt = new DataTable(); da.Fill(dt); return(dt); } catch (Exception ex) { _dal.SetError("ExecuteFillDataTable", text, ex.Message + "<BR>ex:" + ex, _dal.ConnectionString); //处理错误 return(null); } finally { //自动关闭了,不用手动关闭。 da.Dispose(); } }