Пример #1
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="sqlExpression"></param>
 /// <param name="enumReturn"></param>
 public override void AddAction(string sqlExpression,
                                EnumDBReturnAccess enumReturn)
 {
     #region
     this.AddAction(sqlExpression, enumReturn, null);
     #endregion
 }
Пример #2
0
        /// <summary>
        /// 添加检索操作,不带过滤条件
        /// </summary>
        /// <param name="sqlExpression"></param>
        /// <param name="fillDs"></param>
        public override void AddAction(string sqlExpression,
                                       DataSet fillDs, EnumDBReturnAccess enumReturn)
        {
            if (enumReturn == EnumDBReturnAccess.ExeNoQuery ||
                enumReturn == EnumDBReturnAccess.SaveDS ||
                enumReturn == EnumDBReturnAccess.Scalar)
            {
                ExtConsole.Write("该接口只提供填充数据集的功能!");
                return;
            }
            Expression sql = this.createSqlAction();

            sql.SqlBusiness = sqlExpression;
            sql.ReturnDS    = fillDs;
            sql.EnumReturn  = enumReturn;
            this._executor.Actions.Add(sql);
        }
Пример #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="sqlExpression"></param>
 /// <param name="enumReturn"></param>
 /// <param name="conditions"></param>
 public override void AddAction(string sqlExpression,
                                EnumDBReturnAccess enumReturn, DBConditions conditions)
 {
     #region
     if (enumReturn == EnumDBReturnAccess.SaveDS ||
         enumReturn == EnumDBReturnAccess.FillDsByCustom ||
         enumReturn == EnumDBReturnAccess.FillDsByStoredProcedure)
     {
         ExtConsole.Write("该接口不提供存储数据集或检索数据集功能!");
         return;
     }
     Expression sql = this.createSqlAction();
     sql.SqlBusiness   = sqlExpression;
     sql.EnumReturn    = enumReturn;
     sql.SqlConditions = conditions;
     this._executor.Actions.Add(sql);
     #endregion
 }
Пример #4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="enumReturn"></param>
        private void subtractCount(EnumDBReturnAccess enumReturn)
        {
            switch (enumReturn)
            {
            case EnumDBReturnAccess.ExeNoQuery:
            case EnumDBReturnAccess.Scalar:
                this.GeneralCommandCount--;
                break;

            case EnumDBReturnAccess.FillDsByCustom:
            case EnumDBReturnAccess.FillDsByStoredProcedure:
            case EnumDBReturnAccess.SaveDS:
            case EnumDBReturnAccess.FillDsWithoutPage:
                this.AdvanceCommandCount--;
                break;

            default:
                break;
            }
        }
Пример #5
0
        /// <summary>
        /// 获取单表数据集(类内部复用)
        /// </summary>
        /// <param name="fillDs">传入的空数据集</param>
        /// <param name="conditions">查询条件</param>
        /// <param name="returntype">数据库访问返回类型</param>
        /// <param name="isCount">是否需要计算记录条数</param>
        /// <returns>符合where条件的记录条数(去除分页)</returns>
        protected int getCustomDs(DataSet fillDs,
                                  DBConditions conditions, EnumDBReturnAccess returntype, bool isCount)
        {
            #region
            IDBAccess dbaccess  = new DBAccess();
            int       rowscount = 0;
            try
            {
                string tablename = (fillDs.Tables.Count > 0) ?
                                   fillDs.Tables[0].TableName : "tablename";
                string sqlformat = "select {0} from [{1}]";

                //this.setConnectString(dbaccess);

                dbaccess.AddAction(string.Format(sqlformat, "*", tablename),
                                   conditions, fillDs, returntype);

                if (isCount)
                {
                    dbaccess.AddAction(string.Format(sqlformat, "count(*)", tablename),
                                       EnumDBReturnAccess.Scalar, conditions);
                }

                dbaccess.StartActions();
                if (isCount)
                {
                    rowscount = Convert.ToInt32(dbaccess.Actions[1].ReturnValue);
                }
                dbaccess.ClearActions();

                return(rowscount);
            }
            finally
            {
                dbaccess.Dispose();
            }
            #endregion
        }
Пример #6
0
 /// <summary>
 /// 添加检索操作,不带过滤条件
 /// </summary>
 /// <param name="sqlExpression"></param>
 /// <param name="fillDs"></param>
 /// <param name="enumReturn"></param>
 public abstract void AddAction(string sqlExpression,
                                DataSet fillDs, EnumDBReturnAccess enumReturn);
Пример #7
0
 /// <summary>
 /// 添加update、insert、delete操作,带过滤条件
 /// </summary>
 /// <param name="sqlExpression"></param>
 /// <param name="enumReturn"></param>
 /// <param name="conditions"></param>
 public abstract void AddAction(string sqlExpression,
                                EnumDBReturnAccess enumReturn, DBConditions conditions);