zoukankan      html  css  js  c++  java
  • 重构的数据库助手类

    /*
     * 创建人:张良伟
     * 创建时间:2013-12-10 19:00
     * 说明:数据库助手类
     * 版权所有:张良伟&www.tg029.com(众志网)
     */
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data;
    using System.Data.SqlClient;
    using System.Configuration;

    namespace DAL
    {
        public class SQLHelper
        {
            private SqlConnection conn = null;
            private SqlCommand cmd = null;
            private SqlDataReader sdr = null;
            public SQLHelper()
            {
                string connStr = @"server=2013-20131109GT;database=newssystem;uid=sa;pwd=123456";
                conn = new SqlConnection(connStr);
            }

            private SqlConnection GetConn()
            {
                if (conn.State == ConnectionState.Closed)
                {
                    conn.Open();
                }
                return conn;
            }

            /// <summary>
            ///  执行不带参数的增删改SQL语句或存储过程
            /// </summary>
            /// <param name="cmdText">增删改SQL语句或存储过程</param>
            /// <param name="ct">命令类型</param>
            /// <returns></returns>
            public int ExecuteNonQuery(string cmdText, CommandType ct)
            {
                int res;
                try
                {
                    cmd = new SqlCommand(cmdText, GetConn());
                    cmd.CommandType = ct;
                    res = cmd.ExecuteNonQuery();
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    if (conn.State == ConnectionState.Open)
                    {
                        conn.Close();
                    }
                }
                return res;
            }

            /// <summary>
            ///  执行带参数的增删改SQL语句或存储过程
            /// </summary>
            /// <param name="cmdText">增删改SQL语句或存储过程</param>
            /// <param name="ct">命令类型</param>
            /// <returns></returns>
            public int ExecuteNonQuery(string cmdText, SqlParameter[] paras, CommandType ct)
            {
                int res;
                using (cmd = new SqlCommand(cmdText, GetConn()))
                {
                    cmd.CommandType = ct;
                    cmd.Parameters.AddRange(paras);
                    res = cmd.ExecuteNonQuery();
                }
                return res;
            }

            /// <summary>
            ///  执行查询SQL语句或存储过程
            /// </summary>
            /// <param name="cmdText">查询SQL语句或存储过程</param>
            /// <param name="ct">命令类型</param>
            /// <returns></returns>
            public DataTable ExecuteQuery(string cmdText, CommandType ct)
            {
                DataTable dt = new DataTable();
                cmd = new SqlCommand(cmdText, GetConn());
                cmd.CommandType = ct;
                using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
                {
                    dt.Load(sdr);
                }
                return dt;
            }

            /// <summary>
            ///  执行带参数的查询SQL语句或存储过程
            /// </summary>
            /// <param name="cmdText">查询SQL语句或存储过程</param>
            /// <param name="paras">参数集合</param>
            /// <param name="ct">命令类型</param>
            /// <returns></returns>
            public DataTable ExecuteQuery(string cmdText, SqlParameter[] paras, CommandType ct)
            {
                DataTable dt = new DataTable();
                cmd = new SqlCommand(cmdText, GetConn());
                cmd.CommandType = ct;
                cmd.Parameters.AddRange(paras);
                using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
                {
                    dt.Load(sdr);
                }
                return dt;
            }
        }
    }

  • 相关阅读:
    Atitit.Java exe bat  作为windows系统服务程序运行
    Atitit. Object-c语言 的新的特性  attilax总结
    Atitit. Object-c语言 的新的特性  attilax总结
    Atitit。Time base gc 垃圾 资源 收集的原理与设计
    Atitit。Time base gc 垃圾 资源 收集的原理与设计
    Atitit.go语言golang语言的新的特性  attilax总结
    Atitit.go语言golang语言的新的特性  attilax总结
    Atitit.pdf 预览 转换html attilax总结
    Atitit.pdf 预览 转换html attilax总结
    Atitit.office word  excel  ppt pdf 的web在线预览方案与html转换方案 attilax 总结
  • 原文地址:https://www.cnblogs.com/liangwei/p/3468325.html
Copyright © 2011-2022 走看看