Пример #1
0
        /// <summary>
        /// 执行命令 并返回影响行数
        /// </summary>
        /// <param name="cmdText"></param>
        /// <param name="commandParameters"></param>
        /// <param name="cmdType"></param>
        /// <returns></returns>
        public int ExecuteNonQuery(string cmdText, DbParameter[] commandParameters, CommandType cmdType = CommandType.Text)
        {
            this.SqlOutPutToLogAsync(cmdText, commandParameters);


            using (DbConnection conn = DatabaseFactory.GetDbConnection(this._dbConfig))
            {
                if (conn.State != ConnectionState.Open)
                {
                    conn.Open();
                }
                using (DbCommand cmd = DatabaseFactory.GetDbDbCommand(this._dbConfig))
                {
                    int val = -1;
                    try
                    {
                        PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
                        val = cmd.ExecuteNonQuery();
                        cmd.Parameters.Clear();
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }

                    return(val);
                }
            }
        }
Пример #2
0
        /// <summary>
        /// 执行查询 返回 DataSet
        /// </summary>
        /// <param name="cmdText"></param>
        /// <param name="commandParameters"></param>
        /// <param name="cmdType"></param>
        /// <returns></returns>
        public DataSet ExecuteDataSet(string cmdText, DbParameter[] commandParameters, CommandType cmdType = CommandType.Text)
        {
            DataSet resultData = new DataSet();

            this.SqlOutPutToLogAsync(cmdText, commandParameters);

            using (DbConnection conn = DatabaseFactory.GetDbConnection(this._dbConfig))
            {
                if (conn.State != ConnectionState.Open)
                {
                    conn.Open();
                }
                using (DbCommand cmd = DatabaseFactory.GetDbDbCommand(this._dbConfig))
                {
                    try
                    {
                        PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
                        var dataAdapter = DatabaseFactory.GetDbDataAdapter(cmd, this._dbConfig);
                        dataAdapter.Fill(resultData);
                        cmd.Parameters.Clear();
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }

                    return(resultData);
                }
            }
        }
Пример #3
0
        /// <summary>
        ///执行命令 并返回首列结果
        /// </summary>
        /// <param name="cmdText"></param>
        /// <param name="commandParameters"></param>
        /// <param name="cmdType"></param>
        /// <returns></returns>
        public object ExecuteScalar(string cmdText, DbParameter[] commandParameters, CommandType cmdType = CommandType.Text)
        {
            object val = null;

            this.SqlOutPutToLogAsync(cmdText, commandParameters);

            using (DbConnection conn = DatabaseFactory.GetDbConnection(this._dbConfig))

            {
                DbCommand cmd = DatabaseFactory.GetDbDbCommand(this._dbConfig);
                try
                {
                    if (conn.State != ConnectionState.Open)
                    {
                        conn.Open();
                    }


                    if (conn.State != ConnectionState.Open)
                    {
                        conn.Open();
                    }


                    PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
                    val = cmd.ExecuteScalar();
                    cmd.Parameters.Clear();
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    cmd.Dispose();
                    conn.Close();
                    conn.Dispose();
                }
            }

            return(val);
        }
Пример #4
0
        /// <summary>
        ///  执行命令  并返回一个可读的Reader
        /// </summary>
        /// <param name="cmdText"></param>
        /// <param name="commandParameters"></param>
        /// <param name="cmdType"></param>
        /// <returns></returns>
        public DbDataReader ExecuteReader(string cmdText, DbParameter[] commandParameters, CommandType cmdType = CommandType.Text)
        {
            this.SqlOutPutToLogAsync(cmdText, commandParameters);

            try
            {
                DbConnection conn = DatabaseFactory.GetDbConnection(this._dbConfig);

                if (conn.State != ConnectionState.Open)
                {
                    conn.Open();
                }
                DbCommand cmd = DatabaseFactory.GetDbDbCommand(this._dbConfig);

                PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
                DbDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);

                return(rdr);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }