zoukankan      html  css  js  c++  java
  • SQLHelper帮助类

    通过分装的方法:

     public class SQLHelper
        {
           private static readonly string ConnectionString = ConfigurationManager.AppSettings["conn"].ToString();
           //SqlParameter[]  方便传递数组
    
           /// <summary>
           /// 主要用于封装Command对象的ExecuteNonQuery方法,用于数据的增删改
           /// </summary>
           /// <param name="conn">Connection对象</param>
           /// <param name="cmdText">Command.CommandText</param>
           /// <param name="cmdType">Command.CommandType</param>
           /// <param name="cmdParams">Command.Parameters</param>
           /// <returns>返回受影响的行数</returns>
           public static int ExecuteNonQuery(string cmdText, CommandType cmdType, params SqlParameter[] cmdParams)
           {
               SqlConnection conn = new SqlConnection(ConnectionString);
               SqlCommand comm = new SqlCommand();
    
               PrepareCommand(comm, conn, cmdText, cmdType, cmdParams);
               try
               {
                   return comm.ExecuteNonQuery();
               }
               catch (SqlException ex)
               {
    
                   throw ex;
               }
               finally {
                   conn.Close();
               }
              
           }
    
           /// <summary>
           /// 封装Command对象的ExecuteReader 方法用于数据的查询
           /// </summary>
           /// <param name="conn">Connection对象</param>
           /// <param name="cmdText">Command.CommandText</param>
           /// <param name="cmdType">Command.CommandType</param>
           /// <param name="cmdParams">Command.Parameters</param>
           /// <returns>返回SqlDataReader对象</returns>
           public static SqlDataReader ExcuteReader(string cmdText, CommandType cmdType, params SqlParameter[] cmdParams)
           {
               SqlConnection conn = new SqlConnection(ConnectionString);
               SqlCommand comm = new SqlCommand();
               PrepareCommand(comm, conn, cmdText, cmdType, cmdParams);
               try
               {
                   //自动关闭
                   return comm.ExecuteReader(CommandBehavior.CloseConnection);
               }
               catch (SqlException ex)
               {
                   
                   throw ex;
               }
           }
    
           /// <summary>
           /// 封装Commond对象的ExecuteScalar方法,用于返回首行首列数据
           /// </summary>
           /// <param name="conn">Connection对象</param>
           /// <param name="cmdText">Command.CommandText</param>
           /// <param name="cmdType">Command.CommandType</param>
           /// <param name="cmdParams">Command.Parameters</param>
           /// <returns>返回的是object单一的值</returns>
           public static object ExecuteScalar(string cmdText, CommandType cmdType, params SqlParameter[] cmdParams)
           {
               SqlConnection conn = new SqlConnection(ConnectionString);
               SqlCommand comm = new SqlCommand();
               PrepareCommand(comm, conn, cmdText, cmdType, cmdParams);
               try
               {
                   return comm.ExecuteScalar();
               }
               catch (SqlException ex)
               {
    
                   throw ex;
               }
               finally
               {
                   conn.Close();
               }
           }
    
    
    
           /// <summary>
           /// 主要用于返回DataTable 查询的数据
           /// </summary>
           /// <param name="conn">Connection对象</param>
           /// <param name="cmdText">Command.CommandText</param>
           /// <param name="cmdType">Command.CommandType</param>
           /// <param name="cmdParams">Command.Parameters</param>
           /// <returns>返回DataTable对象</returns>
           public static DataTable GetDataTable(string cmdText, CommandType cmdType, params SqlParameter[] cmdParams)
           {
               SqlConnection conn = new SqlConnection();
               SqlCommand comm = new SqlCommand();
               PrepareCommand(comm, conn, cmdText, cmdType, cmdParams);
    
               SqlDataAdapter da = new SqlDataAdapter();
               da.SelectCommand = comm;
               DataSet ds = new DataSet();
               try
               {
                   //自动打开自动关闭  实现断开式的链接
                   da.Fill(ds);
                   return ds.Tables[0];
               }
               catch (SqlException ex)
               {
    
                   throw ex;
               }
               finally { 
               conn.Close();
               }
             
           }
           /// <summary>
           /// 主要用于给Command对象进行初始化赋值工作
           /// </summary>
           /// <param name="comm">是操作的Comman对象</param>
           /// <param name="conn">Connection对象</param>
           /// <param name="cmdText">Command.CommandText</param>
           /// <param name="cmdType">Command.CommandType</param>
           /// <param name="cmdParams">Command.Parameters</param>
           private static void PrepareCommand(SqlCommand comm, SqlConnection conn, string cmdText, CommandType cmdType, SqlParameter[] cmdParams)
           {
               if (conn.State == ConnectionState.Closed)  conn.Open();
               comm.Connection = conn;
               comm.CommandText = cmdText;
               comm.CommandType = cmdType;
               if (cmdParams != null)
               {
                   for (int i = 0; i < cmdParams.Length; i++)
                   {
                       comm.Parameters.Add(cmdParams[i]);
                   }
    
               }
           }
    
    
    
        }

    Access数据库的帮助类:

    public class AccessHelper
       {
           private static readonly string ConnectionString = ConfigurationManager.AppSettings["conn"].ToString();
           //SqlParameter[]  方便传递数组
    
           /// <summary>
           /// 主要用于封装Command对象的ExecuteNonQuery方法,用于数据的增删改
           /// </summary>
           /// <param name="conn">Connection对象</param>
           /// <param name="cmdText">Command.CommandText</param>
           /// <param name="cmdType">Command.CommandType</param>
           /// <param name="cmdParams">Command.Parameters</param>
           /// <returns>返回受影响的行数</returns>
           public static int ExecuteNonQuery(string cmdText, CommandType cmdType, params OleDbParameter[] cmdParams)
           {
               OleDbConnection conn = new OleDbConnection(ConnectionString);
               OleDbCommand comm = new OleDbCommand();
    
               PrepareCommand(comm, conn, cmdText, cmdType, cmdParams);
               try
               {
                   return comm.ExecuteNonQuery();
               }
               catch (OleDbException ex)
               {
    
                   throw ex;
               }
               finally
               {
                   conn.Close();
               }
    
           }
    
           /// <summary>
           /// 封装Command对象的ExecuteReader 方法用于数据的查询
           /// </summary>
           /// <param name="conn">Connection对象</param>
           /// <param name="cmdText">Command.CommandText</param>
           /// <param name="cmdType">Command.CommandType</param>
           /// <param name="cmdParams">Command.Parameters</param>
           /// <returns>返回SqlDataReader对象</returns>
           public static OleDbDataReader ExcuteReader(string cmdText, CommandType cmdType, params OleDbParameter[] cmdParams)
           {
               OleDbConnection conn = new OleDbConnection(ConnectionString);
               OleDbCommand comm = new OleDbCommand();
    
               PrepareCommand(comm, conn, cmdText, cmdType, cmdParams);
               try
               {
                   //自动关闭
                   return comm.ExecuteReader(CommandBehavior.CloseConnection);
               }
               catch (OleDbException ex)
               {
    
                   throw ex;
               }
           }
    
           /// <summary>
           /// 封装Commond对象的ExecuteScalar方法,用于返回首行首列数据
           /// </summary>
           /// <param name="conn">Connection对象</param>
           /// <param name="cmdText">Command.CommandText</param>
           /// <param name="cmdType">Command.CommandType</param>
           /// <param name="cmdParams">Command.Parameters</param>
           /// <returns>返回的是object单一的值</returns>
           public static object ExecuteScalar(string cmdText, CommandType cmdType, params OleDbParameter[] cmdParams)
           {
               OleDbConnection conn = new OleDbConnection(ConnectionString);
               OleDbCommand comm = new OleDbCommand();
    
               PrepareCommand(comm, conn, cmdText, cmdType, cmdParams);
               try
               {
                   return comm.ExecuteScalar();
               }
               catch (OleDbException ex)
               {
    
                   throw ex;
               }
               finally
               {
                   conn.Close();
               }
           }
    
    
    
           /// <summary>
           /// 主要用于返回DataTable 查询的数据
           /// </summary>
           /// <param name="conn">Connection对象</param>
           /// <param name="cmdText">Command.CommandText</param>
           /// <param name="cmdType">Command.CommandType</param>
           /// <param name="cmdParams">Command.Parameters</param>
           /// <returns>返回DataTable对象</returns>
           public static DataTable GetDataTable(string cmdText, CommandType cmdType, params OleDbParameter[] cmdParams)
           {
               OleDbConnection conn = new OleDbConnection(ConnectionString);
               OleDbCommand comm = new OleDbCommand();
    
               PrepareCommand(comm, conn, cmdText, cmdType, cmdParams);
    
               OleDbDataAdapter da = new OleDbDataAdapter();
               da.SelectCommand = comm;
               DataSet ds = new DataSet();
               try
               {
                   //自动打开自动关闭  实现断开式的链接
                   da.Fill(ds);
                   return ds.Tables[0];
               }
               catch (OleDbException ex)
               {
    
                   throw ex;
               }
               finally
               {
                   conn.Close();
               }
    
           }
           /// <summary>
           /// 主要用于给Command对象进行初始化赋值工作
           /// </summary>
           /// <param name="comm">是操作的Comman对象</param>
           /// <param name="conn">Connection对象</param>
           /// <param name="cmdText">Command.CommandText</param>
           /// <param name="cmdType">Command.CommandType</param>
           /// <param name="cmdParams">Command.Parameters</param>
           private static void PrepareCommand(OleDbCommand comm, OleDbConnection conn, string cmdText, CommandType cmdType, OleDbParameter[] cmdParams)
           {
               if (conn.State == ConnectionState.Closed) conn.Open();
               comm.Connection = conn;
               comm.CommandText = cmdText;
               comm.CommandType = cmdType;
               if (cmdParams != null)
               {
                   for (int i = 0; i < cmdParams.Length; i++)
                   {
                       comm.Parameters.Add(cmdParams[i]);
                   }
    
               }
           }
       }
    

    比较全的写法:

    public static class DBHelper
        {
    
            private static SqlConnection connection;
            public static SqlConnection Connection
            {
                get 
                {
                    string connectionString = ConfigurationManager.ConnectionStrings["conn"].ConnectionString;
                    if (connection == null)
                    {
                        connection = new SqlConnection(connectionString);
                        connection.Open();
                    }
                    else if (connection.State == System.Data.ConnectionState.Closed)
                    {
                        connection.Open();
                    }
                    else if (connection.State == System.Data.ConnectionState.Broken)
                    {
                        connection.Close();
                        connection.Open();
                    }
                    return connection;
                }
            }
    
    
            public static int ExecuteCommand(string safeSql)
            {
                SqlCommand cmd = new SqlCommand(safeSql, Connection);
                int result = cmd.ExecuteNonQuery();
                return result;
            }
    
            public static int ExecuteCommand(string sql, params SqlParameter[] values)
            {
                SqlCommand cmd = new SqlCommand(sql, Connection);
                cmd.Parameters.AddRange(values);
                return cmd.ExecuteNonQuery();
            }
    
            public static int GetScalar(string safeSql)
            {
                SqlCommand cmd = new SqlCommand(safeSql, Connection);
                int result = Convert.ToInt32(cmd.ExecuteScalar());
                return result;
            }
    
            public static int GetScalar(string sql, params SqlParameter[] values)
            {
                SqlCommand cmd = new SqlCommand(sql, Connection);
                cmd.Parameters.AddRange(values);
                int result = Convert.ToInt32(cmd.ExecuteScalar());
                return result;
            }
    
            public static SqlDataReader GetReader(string safeSql)
            {
                SqlCommand cmd = new SqlCommand(safeSql, Connection);
                SqlDataReader reader = cmd.ExecuteReader();
                return reader;
            }
    
            public static SqlDataReader GetReader(string sql, params SqlParameter[] values)
            {
                SqlCommand cmd = new SqlCommand(sql, Connection);
                cmd.Parameters.AddRange(values);
                SqlDataReader reader = cmd.ExecuteReader();
                return reader;
            }
    
            public static DataTable GetDataSet(string safeSql)
            {
                DataSet ds = new DataSet();
                SqlCommand cmd = new SqlCommand(safeSql, Connection);
                SqlDataAdapter da = new SqlDataAdapter(cmd);
                da.Fill(ds);
                return ds.Tables[0];
            }
    
            public static DataTable GetDataSet(string sql, params SqlParameter[] values)
            {
                DataSet ds = new DataSet();
                SqlCommand cmd = new SqlCommand(sql, Connection);
                cmd.Parameters.AddRange(values);
                SqlDataAdapter da = new SqlDataAdapter(cmd);
                da.Fill(ds);
                return ds.Tables[0];
            }
    		public static object GetValueByWhetherNull(object obj) {
                return obj == null ? (object)DBNull.Value : obj;
            }
    
        }
    

    通过重载:

        public class DataBaseHelper
        {
           
            /// <summary>
            ///  定义静态的连接字符串
            /// </summary>
            private static string ConnString
            {
                get {
                    return System.Configuration.ConfigurationManager.ConnectionStrings["ErpConnString"].ConnectionString;
    
                }
            }
    
    
            /// <summary>
            /// 用于执行一个insert/update/delete语句或则相应的存储过程
            /// </summary>
            /// <param name="cmdText">insert/update/delete SQL语句或则 存储过程</param>
            /// <param name="type">指定命令的类型</param>
            /// <param name="pars">参数集合</param>
            /// <returns>int</returns>
            private static int ExcuteSqlReturnInt(string cmdText, CommandType type, params SqlParameter[] pars)
            {
                //实例化连接对象
                SqlConnection conn = new SqlConnection();
    
                try
                {
                    //打开连接对象
                    if (conn.State == ConnectionState.Closed || conn.State == ConnectionState.Broken)
                    {
                        conn.Open();
                    }
                    //实例化命令对象
                    SqlCommand sqlcommand = new SqlCommand(cmdText, conn);
                    //对命令对象参数集合赋值       
                    if (pars != null && pars.Length > 0)
                    {
                        foreach (SqlParameter p in pars)
                        {
                            sqlcommand.Parameters.Add(p);
                        }
                    }
                    //给命令对象指定类型
                    sqlcommand.CommandType = type;
                    //通过ExecuteNonQuery执行数据库命令,并返回数据库受影响的行数。
                    int count = sqlcommand.ExecuteNonQuery();
    
                    return count;
                }
                catch (Exception ex)
                {
                    return 0;
                }
                finally
                {
                    conn.Close();
                    
                }
            }
    
    
            /// <summary>
            /// 执行一个Select语句或则相关的存储过程 并返回DataSet
            /// </summary>
            /// <param name="cmdText">Select语句或则相关的存储过程</param>
            /// <param name="type">命令对象类型</param>
            /// <param name="pars">Select语句或则相关的存储过程 所需的参数</param>
            /// <returns>DataSet</returns>
            private static DataSet SelectSQLReturnDataSet(string cmdText, CommandType type, params SqlParameter[] pars)
            {
                SqlConnection conn = new SqlConnection(ConnString);
    
                SqlDataAdapter sqldataadapter = new SqlDataAdapter(cmdText, conn);
                if (pars != null && pars.Length > 0)
                {
                    foreach (SqlParameter p in pars)
                    {
                        sqldataadapter.SelectCommand.Parameters.Add(p);
                    }
                }
                sqldataadapter.SelectCommand.CommandType = type;
    
    
                DataSet dt = new DataSet();
    
                sqldataadapter.Fill(dt);
    
    
                return dt;
            
            }
    
    
            /// <summary>
            /// 执行一个Select语句或则相关的存储过程 并返回DataSet
            /// </summary>
            /// <param name="cmdText">Select语句或则相关的存储过程</param>
            /// <param name="type">命令对象类型</param>
            /// <param name="pars">Select语句或则相关的存储过程 所需的参数</param>
            /// <returns>DataSet</returns>
            private static DataSet SelectSQLReturnDataSet(string cmdText, CommandType type)
            {
                SqlConnection conn = new SqlConnection(ConnString);
    
                SqlDataAdapter sqldataadapter = new SqlDataAdapter(cmdText, conn);
              
                sqldataadapter.SelectCommand.CommandType = type;
    
    
                DataSet dt = new DataSet();
    
                sqldataadapter.Fill(dt);
    
    
                return dt;
    
            }
    
                /// <summary>
                /// 执行一个Select语句或则相关的存储过程 并返回DataTable
                /// </summary>
                /// <param name="cmdText">Select语句或则相关的存储过程</param>
                /// <param name="type">命令对象类型</param>
                /// <param name="pars">Select语句或则相关的存储过程 所需的参数</param>
                /// <returns>DataTable</returns>
                private static DataTable SelectSQLReturnTable(string cmdText, CommandType type, SqlParameter[] pars)
                {
                    SqlConnection conn = new SqlConnection(ConnString);
    
                    SqlDataAdapter sqldataadatapter = new SqlDataAdapter(cmdText, conn);
    
                    if (pars != null && pars.Length > 0)
                    {
                        foreach (SqlParameter p in pars)
                        {
                            sqldataadatapter.SelectCommand.Parameters.Add(p);
                        }
                    }
                    sqldataadatapter.SelectCommand.CommandType = type;
    
                    DataTable dt = new DataTable();
    
                    sqldataadatapter.Fill(dt);
    
    
                    return dt;
            
                }
    
    
            /// <summary>
            /// 执行一个Select语句或则相关的存储过程 并返回DataTable
            /// </summary>
            /// <param name="cmdText">Select语句或则相关的存储过程</param>
            /// <param name="type">命令对象类型</param>
            /// <param name="pars">Select语句或则相关的存储过程 所需的参数</param>
            /// <returns>DataTable</returns>
            private static DataTable SelectSQLReturnTable(string cmdText, CommandType type)
            {
                SqlConnection conn = new SqlConnection(ConnString);
    
                SqlDataAdapter sqldataadatapter = new SqlDataAdapter(cmdText, conn);
               
                sqldataadatapter.SelectCommand.CommandType = type;
    
                DataTable dt = new DataTable();
    
                sqldataadatapter.Fill(dt);
    
    
                return dt;
    
            }
    
    
    
            /// <summary>
            /// 执行一个Select语句或则相关的存储过程 并返回查询对象
            /// </summary>
            /// <param name="cmdText">Select语句或则相关的存储过程</param>
            /// <param name="type">命令对象类型</param>
            /// <param name="pars">Select语句或则相关的存储过程 所需的参数</param>
            /// <returns>object</returns>
            private static object SelectSQLReturnObject(string cmdText, CommandType type, SqlParameter[] pars)
            {
                SqlConnection conn = new SqlConnection(ConnString);
    
                try
                {
                    SqlCommand cmd = new SqlCommand(cmdText, conn);
                    if (pars != null && pars.Length > 0)
                    {
                        foreach (SqlParameter p in pars)
                        {
                            cmd.Parameters.Add(pars);
                        }
                    }
                    if (conn.State == ConnectionState.Closed || conn.State == ConnectionState.Broken)
                    {
                        conn.Open();
                    }
    
                    cmd.CommandType = type;
    
                    object obj = cmd.ExecuteScalar();
    
                    return obj;
                }
                catch (Exception ex)
                {
    
                    return null;
    
                }
                finally
                {
                    conn.Close();
                }
            }
    
    
        }
    
     /// <summary>
            /// 执行一个Select语句或则相关的存储过程 并返回一个数据阅读器对象
            /// </summary>
            /// <param name="cmdText">Select语句或则相关的存储过程</param>
            /// <param name="type">指定命令对象的类型</param>
            /// <param name="pars">参数结合</param>
            /// <returns>SqlDataReader</returns>
            private static SqlDataReader SelectSQLReturnReader(string cmdText, CommandType type, SqlParameter[] pars)
            {
                SqlConnection conn = new SqlConnection(ConnString);
    
                try
                {
                    SqlCommand cmd = new SqlCommand(cmdText, conn);
    
                    if (pars != null && pars.Length > 0)
                    {
                        foreach (SqlParameter p in pars)
                        {
                            cmd.Parameters.Add(p);
                        }
                    }
                    if (conn.State == ConnectionState.Closed)
                    {
                        conn.Open();
                    }
    
                    cmd.CommandType = type;
                    SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
    
                    return reader;
                }
                catch (Exception ex)
                {
    
                    return null;
                }
    
            }
    

    重载的方法:

     /// <summary>
        /// 实现所有对SQL Server数据库的所有访问操作
        /// </summary>
        public class SqlDBHelp
        {
            private static string _connStr = "server=.uid=sa;pwd=;database=B2C";
        
            private static SqlConnection sqlcon;
    
            /// <summary>
            /// 获取一个可用于数据库操作的连接类
            /// </summary>
            private static SqlConnection Connection
            {
                get
                {
                    if (sqlcon == null)
                    {
                        sqlcon = new SqlConnection(_connStr);
                        sqlcon.Open();
                    }
                    else if (sqlcon.State == ConnectionState.Broken || sqlcon.State == ConnectionState.Closed)
                    {
                        sqlcon.Close();
                        sqlcon.Open();
                    }
    
                    return sqlcon;
                }
            }
    
            /// <summary>
            /// 根据查询的语句返回执行受影响的行数
            /// </summary>
            /// <param name="strsql">Insert、Update、Delete语句</param>
            /// <returns>执行受影响的行数</returns>
            public static int GetExecute(string strsql)
            {
                int i=-1;
                try
                {
                    SqlCommand sqlcmd = new SqlCommand(strsql, Connection);
                     i= sqlcmd.ExecuteNonQuery();                
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
                finally
                {
                    CloseConnection();                
                }
                return i;
            }
    
            /// <summary>
            /// 根据查询的语句返回执行受影响的行数
            /// </summary>
            /// <param name="strsql">Insert、Update、Delete语句</param>
            /// <param name="p">给SQL语句传递的参数集合</param>
            /// <returns>执行受影响的行数</returns>      
            public static int GetExecute(string strsql,params SqlParameter[] p)
            {
                int i = -1;
                try
                {
                    SqlCommand sqlcmd = new SqlCommand(strsql, Connection);
                    sqlcmd.Parameters.AddRange(p);
                    i = sqlcmd.ExecuteNonQuery();
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
                finally
                {
                    CloseConnection();               
                }
                return i;
            }
    
         
    
            /// <summary>
            /// 根据查询的语句获取查询的结果集
            /// </summary>
            /// <param name="strsql">Select语句</param>
            /// <returns>查询的结果-表数据</returns>
            public static DataTable GetTable(string strsql)
            {
                DataTable dt = null;
                try
                {
                    SqlDataAdapter sda = new SqlDataAdapter(strsql, Connection);
                    dt = new DataTable();
                    sda.Fill(dt);
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
                finally
                {
                    CloseConnection();               
                }
                return dt;
            }
    
            /// <summary>
            /// 根据查询的语句获取查询的结果集
            /// </summary>
            /// <param name="strsql">Select语句</param>
            /// <param name="p">给SQL语句传递的参数集合</param>
            /// <returns>查询的结果-表数据</returns>
            public static DataTable GetTable(string strsql,params SqlParameter[] p)
            {
                DataTable dt = null;
                try
                {
                    SqlDataAdapter sda = new SqlDataAdapter(strsql, Connection);
                    sda.SelectCommand.Parameters.AddRange(p);
                    dt = new DataTable();
                    sda.Fill(dt);
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
                finally
                {
                    CloseConnection();                
                }
                return dt;
            }
    
            /// <summary>
            /// 根据查询的语句返回一个值
            /// </summary>
            /// <param name="strsql">Select语句</param>
            /// <returns>单值</returns>
            public static string GetSingle(string strsql)
            {
                object o = "";
                try
                {
                    SqlCommand sqlcmd = new SqlCommand(strsql, Connection);
                    o = sqlcmd.ExecuteScalar();
    
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
                finally
                {
                    CloseConnection();                
                }
                return o.ToString();
            }
    
           
            /// <summary>
            /// 根据查询的语句返回一个值
            /// </summary>
            /// <param name="strsql">Select语句</param>
            /// <param name="p">给SQL语句传递的参数集合</param>
            /// <returns>单值</returns>
            public static string GetSingle(string strsql,params SqlParameter[] p)
            {
                object o = "";
                try
                {
                    SqlCommand sqlcmd = new SqlCommand(strsql, Connection);
                    sqlcmd.Parameters.AddRange(p);
                    o = sqlcmd.ExecuteScalar();
    
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
                finally
                {
                    CloseConnection();                
                }
                return o.ToString();
            }
    
    
            /// <summary>
            /// 根据查询语句返回轻量级的SqlDataReader对象
            /// </summary>
            /// <param name="strsql">Select语句</param>
            /// <returns>轻量级的SqlDataReader对象</returns>
            public static SqlDataReader GetReader(string strsql)
            {
                SqlCommand sqlcmd = new SqlCommand(strsql,Connection);
                return sqlcmd.ExecuteReader(CommandBehavior.CloseConnection);
            }
         
    
            /// <summary>
            /// 根据查询语句返回轻量级的SqlDataReader对象
            /// </summary>
            /// <param name="strsql">Select语句</param>
            /// <param name="p">给SQL语句传递的参数集合</param>
            /// <returns>轻量级的SqlDataReader对象</returns>
            public static SqlDataReader GetReader(string strsql,params SqlParameter[] p)
            {
                SqlCommand sqlcmd = new SqlCommand(strsql, Connection);
                sqlcmd.Parameters.AddRange(p);
                return sqlcmd.ExecuteReader(CommandBehavior.CloseConnection);
            }
    
            public static bool GetTransOperate(string[] strsqls)
            {
                bool isflag = false;
                SqlTransaction trans=Connection.BeginTransaction();
                SqlCommand sqlcmd = new SqlCommand();
    
                try
                {
                    foreach (string s in strsqls)
                    {
                        sqlcmd.CommandText = s;
                        sqlcmd.Connection = sqlcon;
                        sqlcmd.ExecuteNonQuery();
                    }
                    isflag = true;
                    trans.Commit();
                }
                catch (Exception ex)
                {
                    isflag = false;
                    trans.Rollback();
                    throw new Exception(ex.Message);
                }
                finally
                {
                    CloseConnection();                
                }
                return isflag;
            }
          
    
            /// <summary>
            /// 关闭数据库连接
            /// </summary>
            private static void CloseConnection()
            {
                if (sqlcon != null)
                {
                    sqlcon.Close();
                }
            }
        }
    
  • 相关阅读:
    织梦DedeCms网站首页不生成html文件动态显示方法
    PHP7.0下安装DEDE织梦 出现 GD不支持的解决方法
    DEDECMS5.7支持伪静态的方法
    DEDECMS全站伪静态设置方法
    设置 SSH 通过密钥登录
    Windows安装OpenSSH服务
    VS Code远程开发工具错误-找不到SSH安装
    帝国CMS自定义列表的排序
    帝国CMS灵动标签e:loop的使用方法
    cisco 3750交换机堆叠后配置恢复方法
  • 原文地址:https://www.cnblogs.com/sunliyuan/p/5801314.html
Copyright © 2011-2022 走看看