Ejemplo n.º 1
0
        /// <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();
            }
        }
Ejemplo n.º 2
0
        /// <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();
            }
        }