zoukankan      html  css  js  c++  java
  • C#常用类——DBHelp

     

     using System;
     using System.Collections.Generic;
     using System.Linq;
     using System.Text;
     using System.Configuration;
     using System.Data.SqlClient;
     using System.Data;
     using System;
     using System.Collections.Generic;
     using System.Linq;
     using System.Text;
     using System.Configuration;
     using System.Data.SqlClient;
     using System.Data;

    namespace TestPrj                 //空间名字 TestPrj
     
     {
         public class DBHelper         //类名 DBHelper
         {
     
             //获取数据库连接字符串
             private static string connStr = ConfigurationManager.ConnectionStrings["sqlserver"].ConnectionString;
     
             private static SqlConnection conn;
     
             public static SqlConnection Conn
             {
                 get
                 {
                     if (conn == null)
                     {
                         conn = new SqlConnection(connStr);
                         conn.Open();
                     }
                     if (conn != null && conn.State != ConnectionState.Closed)
                     {
                         conn.Close();
                         conn.Open();
                     }
                     else
                     {
                         conn.Open();
                     }
                     return DBHelper.conn;
                 }
             }
     
     
             /// <summary>
             /// 关闭连接
             /// </summary>        

    public static void closeConn()
             {
                 if (Conn != null && Conn.State != ConnectionState.Closed)
                 {
                     Conn.Close();
                 }
             }

     
     
             /// <summary>
             /// 查询操作
             /// </summary>
             /// <param name="sql">传入以select打头的sql语句或存储过程</param>
             /// <param name="type">命令类型</param>
             /// <param name="pars">数组</param>
             /// <returns></returns>

             public static SqlDataReader getReader(string sql, CommandType type, params SqlParameter[] pars)
             {
                 SqlCommand cmd = new SqlCommand(sql, Conn);
                 cmd.CommandType = type;
                 cmd.Parameters.AddRange(pars);
                 return cmd.ExecuteReader();
             }
             public static SqlDataReader getReader(string sql, CommandType type, params SqlParameter[] pars)
             {
                 SqlCommand cmd = new SqlCommand(sql, Conn);
                 cmd.CommandType = type;
                 cmd.Parameters.AddRange(pars);
                 return cmd.ExecuteReader();
             }


     
     
             /// <summary>
             /// 执行非查询操作(执行增、删、改操作的),不支持事务
             /// </summary>
             /// <param name="sql">传入以insert|update|delete打头的sql语句或存储过程</param>
             /// <param name="type">命令类型</param>
             /// <param name="pars">数组</param>
             /// <returns></returns>
     

            public static int ExecuteNoneQuery(string sql, CommandType type, params SqlParameter[] pars)
             {
                 int result = 0;
     
                 SqlCommand cmd = new SqlCommand(sql, Conn);
                 cmd.CommandType = type;
                 if (pars != null)
                 {
                     cmd.Parameters.AddRange(pars);
                 }
     
                 result = cmd.ExecuteNonQuery();
     
                 //关闭连接对象
                 CloseConn();
     
                 return result;
             }
            public static int ExecuteNoneQuery(string sql, CommandType type, params SqlParameter[] pars)
             {
                 int result = 0;
     
                 SqlCommand cmd = new SqlCommand(sql, Conn);
                 cmd.CommandType = type;
                 if (pars != null)
                 {
                     cmd.Parameters.AddRange(pars);
                 }
     
                 result = cmd.ExecuteNonQuery();
     
                 //关闭连接对象
                 CloseConn();
     
                 return result;
             }

     
             /// <summary>
             /// 非查询操作(执行增、删、改操作的),支持事务,进行批量操作
             /// </summary>
             /// <param name="sql">传入以insert|update|delete打头的sql语句或存储过程</param>
             /// <param name="conn">数据库连接</param>
             /// <param name="type">命令类型</param>
             /// <param name="pars">数组</param>
             /// <returns></returns> 

            public static int ExecuteNoneQuery(string sql, SqlConnection conn, CommandType type, params SqlParameter[] pars)
             {
                 int result = 0;
     
                 //接受外部提供的数据连接对象,并且此连接在本次操作后不要关闭
                 SqlCommand cmd = new SqlCommand(sql, conn);
                 cmd.CommandType = type;
                 cmd.Parameters.AddRange(pars);
     
                 result = cmd.ExecuteNonQuery();
     
                 return result;
             }
            public static int ExecuteNoneQuery(string sql, SqlConnection conn, CommandType type, params SqlParameter[] pars)
             {
                 int result = 0;
     
                 //接受外部提供的数据连接对象,并且此连接在本次操作后不要关闭
                 SqlCommand cmd = new SqlCommand(sql, conn);
                 cmd.CommandType = type;
                 cmd.Parameters.AddRange(pars);
     
                 result = cmd.ExecuteNonQuery();
     
                 return result;
             }

     
             /// <summary>
             /// 获取单个值,返回首行首列
             /// </summary>
             /// <param name="sql">传入以select打头的sql语句</param>
             /// <param name="type">命令类型</param>
             /// <param name="pars">数组</param>
             /// <returns></returns> 

             public static object GetScalar(string sql, CommandType type, params SqlParameter[] pars)
             {
                 object obj = null;
     
                 SqlCommand cmd = new SqlCommand(sql, Conn);
                 cmd.CommandType = type;
                 cmd.Parameters.AddRange(pars);
     
                 obj = cmd.ExecuteScalar();
     
                 //关闭连接对象
                 CloseConn();
     
                 return obj;
             }
         }
     }


     
     

  • 相关阅读:
    tomcat部署web应用的4种方法以及部署多个应用
    LeetCode算法题目解答汇总(转自四火的唠叨)
    16、手把手教你Extjs5(十六)Grid金额字段单位MVVM方式的选择
    15、手把手教你Extjs5(十五)各种Grid列的自定义渲染
    14、手把手教你Extjs5(十四)模块字段和Grid列的定义[2]
    13、手把手教你Extjs5(十三)模块字段和Grid列的定义[1]
    12、手把手教你Extjs5(十二)执行菜单命令在tabPanel中显示模块
    11、手把手教你Extjs5(十一)模块界面的总体设计
    10、手把手教你Extjs5(十)自定义模块的设计
    9、手把手教你Extjs5(九)使用MVVM特性控制菜单样式
  • 原文地址:https://www.cnblogs.com/colyn/p/2294350.html
Copyright © 2011-2022 走看看