zoukankan      html  css  js  c++  java
  • Asp.net C# DBHelper类

    public static class DBHelper
        {
            //数据库连接属性
            private static SqlConnection connection;
            public static SqlConnection Connection
            {
                get
                {
                    string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].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;
                }
            }
            /// <summary>
            /// 执行带参存储过程s
            /// </summary>
            public static void ExecProc(string strProName, SqlParameter[] para)
            {
                connection.Open();
                try
                {
                    SqlCommand sqlcmd = connection.CreateCommand();
                    sqlcmd.CommandText = strProName;
                    sqlcmd.CommandType = CommandType.StoredProcedure;
                    foreach (SqlParameter paras in para)
                    {
                        sqlcmd.Parameters.Add(paras);
                    }
                    sqlcmd.ExecuteNonQuery();
                }
                finally
                {
                    connection.Close();
                }
            }
            /// <summary>
            /// 根据sql语句执行非查询操作
            /// </summary>
            public static bool ExecNoQuery(string sql)
            {
               
                try
                {
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandText = sql;
                    return true;
                }
                catch
                {
                    return false;
                }
               
            }
            /// <summary>
            /// 根据sql语句获得一个DataTable
            /// </summary>
            public static DataTable ExecQuery(string Sql)
            {
                connection.Open();
                SqlDataAdapter da = new SqlDataAdapter(Sql, connection);
                DataTable dt = new DataTable();
                da.Fill(dt);
                return dt;
                connection.Close();
             
            }
            /// <summary>
            /// 执行无参SQL语句
            /// </summary>
            public static int ExecuteCommand(string safeSql)
            {
                SqlCommand cmd = new SqlCommand(safeSql, Connection);
                int result = cmd.ExecuteNonQuery();
                return result;
            }
            /// <summary>
            /// 执行带参SQL语句
            /// </summary>
            public static int ExecuteCommand(string sql, params SqlParameter[] values)
            {
                SqlCommand cmd = new SqlCommand(sql, Connection);
                cmd.Parameters.AddRange(values);
                return cmd.ExecuteNonQuery();
            }
            /// <summary>
            /// 执行无参SQL语句,并返回执行记录数
            /// </summary>
            public static int GetScalar(string safeSql)
            {
                SqlCommand cmd = new SqlCommand(safeSql, Connection);
                int result = Convert.ToInt32(cmd.ExecuteScalar());
                return result;
            }
            /// <summary>
            /// 执行有参SQL语句,并返回执行记录数
            /// </summary>
            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;
            }
            /// <summary>
            /// 执行无参SQL语句,并返回SqlDataReader
            /// </summary>
            public static SqlDataReader GetReader(string safeSql)
            {
                SqlCommand cmd = new SqlCommand(safeSql, Connection);
                SqlDataReader reader = cmd.ExecuteReader();
                return reader;
            }
            /// <summary>
            /// 执行有参SQL语句,并返回SqlDataReader
            /// </summary>
            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];
            }
            /// <summary>
            /// 根据sql语句获得一个单值字符串
            /// </summary>
            public static string ReturnStringScalar(string sql)
            {
                SqlCommand cmd = new SqlCommand(sql, Connection);
                try
                {
                    string result = cmd.ExecuteScalar().ToString();
                    return result;
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                    return "0";
                }
                connection.Close();
            }
            /// <summary>
            /// 执行事务处理
            /// </summary>
            public static bool ExecTSQL(string[] sqls)
            {
                connection.Open();
                SqlTransaction trans = connection.BeginTransaction(IsolationLevel.ReadCommitted);
                try
                {
                    for (int i = 0; i < sqls.Length; i++)
                    {
                        if (sqls[i] == "" || sqls[i] == null)
                        {
                            continue;
                        }
                        SqlCommand cmd = connection.CreateCommand();
                        cmd.Transaction = trans;
                        cmd.CommandText = sqls[i];
                        cmd.ExecuteNonQuery();
                    }
                    trans.Commit();
                    return true;
                }
                catch
                {

                    trans.Rollback();
                    return false;
                }
                finally
                {
                    trans = null;
                    connection.Close();
                }
            }

        }

  • 相关阅读:
    欧拉计划之题目7:找出第10001个质数
    DShow实现一个avi视频的播放(含有个人解释和注释)
    DirectX 9 SDK安装后在vs2010里编译BaseClasses出错问题解决方法
    C#内存占用大量资源的解决办法
    C#读写ini文件操作
    【Java】编程技术经典书籍列表
    【数据库_Mysql】查询当前年份的sql
    【数据库_Mysql】MySQL动态语句 if set choose where foreach trim
    【JavaScript】20款漂亮的css字体
    【数据库_Mysql】<foreach>标签在Mysql中的使用
  • 原文地址:https://www.cnblogs.com/moss_tan_jun/p/2025457.html
Copyright © 2011-2022 走看看