zoukankan      html  css  js  c++  java
  • 个人学习代码保存:例2.小项目的sql简单的数据库操作类

    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Data.SqlClient;

    /// <summary>
    /// DataBase 的摘要说明
    /// </summary>

    public class DataBase
    {
        
    private static DataBase _instance;
        
    public DataBase()
        
    {
            
    //
            
    // TODO: 在此处添加构造函数逻辑
            
    //
        }

        
    /// <summary>
        
    /// 获得一个DataBase实例
        
    /// </summary>
        
    /// <returns></returns>

        public static DataBase getInstance()
        
    {
            
    if (_instance == null)
            
    {
                _instance 
    = new DataBase();
            }

            
    return _instance;
        }

        
    /// <summary>
        
    /// 返回SqlConnection对象实例
        
    /// </summary>
        
    /// <returns></returns>

        public static SqlConnection ReturnCon()
        
    {
            
    string connstr=ConfigurationManager.AppSettings["ConnectionString"].ToString();
            SqlConnection con 
    = new SqlConnection(connstr);
            
    if (con.State.Equals(ConnectionState.Closed))
            
    {
                con.Open();
            }

            
    return con;
        }

        
    /// <summary>
        
    /// 返回SqlCommand对象实例
        
    /// </summary>
        
    /// <param name="procName"></param>
        
    /// <returns></returns>

        public static SqlCommand CreateCmd(string procName)
        
    {
            SqlConnection con 
    = ReturnCon();
            SqlCommand cmd 
    = new SqlCommand(procName,con);
            cmd.CommandType 
    = CommandType.StoredProcedure;
            
    return cmd;
        }

        
    public static SqlCommand CreateCmd(string procName, SqlParameter[] prams)
        
    {
            SqlConnection con 
    = ReturnCon();
            SqlCommand cmd 
    = new SqlCommand(procName,con);
            cmd.CommandType 
    = CommandType.StoredProcedure;
            
    foreach (SqlParameter parameter in prams)
            
    {
                cmd.Parameters.Add(parameter);
            }

            
    return cmd;
        }

        
    public static SqlCommand CreateCmd(string procName, SqlConnection con)
        
    {
            SqlConnection sqlcon 
    = con;
            
    if (sqlcon.State.Equals(ConnectionState.Closed))
            
    {
                sqlcon.Open();
            }

            SqlCommand cmd 
    = new SqlCommand(procName,sqlcon);
            cmd.CommandType 
    = CommandType.StoredProcedure;
            
    return cmd;
        }

        
    public static SqlCommand CreateCmd(string procName, SqlParameter[] prams, SqlConnection con)
        
    {
            SqlConnection sqlcon 
    = con;
            
    if (sqlcon.State.Equals(ConnectionState.Closed))
            
    {
                sqlcon.Open();
            }

            SqlCommand cmd 
    = new SqlCommand(procName,sqlcon);
            cmd.CommandType 
    = CommandType.StoredProcedure;
            
    foreach (SqlParameter parameter in prams)
            
    {
                cmd.Parameters.Add(parameter);
            }

            
    return cmd;
        }

        
    /// <summary>
        
    /// 返回SqlDataReader对象实例
        
    /// </summary>
        
    /// <param name="procName"></param>
        
    /// <returns></returns>

        public static SqlDataReader RunProcGetReader(string procName)
        
    {
            SqlCommand cmd 
    = CreateCmd(procName);
            SqlDataReader sdr 
    = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            
    return sdr;
        }

        
    public static SqlDataReader RunProGetReader(string procName, SqlParameter[] prams)
        
    {
            SqlCommand cmd 
    = CreateCmd(procName, prams);
            SqlDataReader sdr 
    = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            
    return sdr;
        }

        
    public static SqlDataReader RunProGetReader(string procName, SqlConnection con)
        
    {
            SqlCommand cmd 
    = CreateCmd(procName, con);
            SqlDataReader sdr 
    = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            
    return sdr;
        }

        
    public static SqlDataReader RunProGetReader(string procName, SqlParameter[] prams, SqlConnection con)
        
    {
            SqlCommand cmd 
    = CreateCmd(procName, prams, con);
            SqlDataReader sdr 
    = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            
    return sdr;
        }

        
    /// <summary>
        
    /// 返回DataTable对象实例
        
    /// </summary>
        
    /// <param name="procName"></param>
        
    /// <param name="prams"></param>
        
    /// <param name="con"></param>
        
    /// <returns></returns>

        public static DataTable RunProTable(string procName, SqlParameter[] prams, SqlConnection con)
        
    {
            SqlCommand cmd 
    = CreateCmd(procName, prams, con);
            SqlDataAdapter sda 
    = new SqlDataAdapter(cmd);
            DataSet ds 
    = new DataSet();
            sda.Fill(ds);
            DataTable dt
    =ds.Tables[0];
            con.Close();
            
    return dt;
        }

        
    /// <summary>
        
    /// 返回执行结果受影响的行数
        
    /// </summary>
        
    /// <param name="procName"></param>
        
    /// <returns></returns>

        public static int RunProExecute(string procName)
        
    {
            SqlCommand cmd 
    = CreateCmd(procName);
            
    int intResult = cmd.ExecuteNonQuery();
            
    return intResult;
        }

        
    /// <summary>
        
    /// 返回首行首列
        
    /// </summary>
        
    /// <param name="procName"></param>
        
    /// <returns></returns>

        public static int RunProScalar(string procName)
        
    {
            SqlCommand cmd 
    = CreateCmd(procName);
            
    int intResult = Convert.ToInt32(cmd.ExecuteScalar());
            
    return intResult;
        }

        
    public static int RunProScalar(string procName, SqlParameter[] prams)
        
    {
            SqlCommand cmd 
    = CreateCmd(procName, prams);
            
    int intResult = Convert.ToInt32(cmd.ExecuteScalar());
            
    return intResult;
        }

    }

  • 相关阅读:
    流式布局思想 js函数的几种简写方式 面向对象 js vue引入bootstrap和jQuery环境
    04--CBV源码分析 Django的settings源码分析 模板层
    C#使用委托和事件来重写串口的接收数据方法DataReceived方法完成数据的接收处理
    自定义控件的封装、常用的鼠标事件的重载、定时器的使用、event事件以及事件过滤器、文件操作以及文本流和数据流的使用
    QT的优点、项目文件目录、main函数、QpushButton、对象树、Qt中坐标系、Qt中信号和槽、自定义信号和槽、信号和槽的拓展、Qt4版本中的信号和槽的缺点、Lambda表达式
    Stylet框架显示自定义界面的步骤
    MahApps.Metro使用
    async和await的使用
    第一个WPF程序(串口调试)
    结构、类、属性:以及面向对象的各种特性继承、封装、多态
  • 原文地址:https://www.cnblogs.com/wbcms/p/1034540.html
Copyright © 2011-2022 走看看