zoukankan      html  css  js  c++  java
  • MySQLHelper

    
    using System;
    using System.Configuration;
    using System.Data;
    using System.Data.SqlClient;
    
    using Constant;
    
    namespace Dal
    {
        /// <summary>
        /// This class can not be extends and it provide services for dal.
        /// </summary>
        public sealed class SqlHelper
        {
    
            #region Private Constructor
    
            private SqlHelper() { }
    
            #endregion
    
            #region Returns SqlConnection
    
            /// <summary>
            /// Gets the connection with database.
            /// </summary>
            /// <returns>Return the connection of database.</returns>
            public static SqlConnection GetConnection()
            {
                string connStr = ConfigurationManager.AppSettings["connStr"];
                SqlConnection conn = new SqlConnection(connStr);
                return conn;
            }
    
            #endregion
    
            #region Closes SqlDataReader Method
    
            /// <summary>
            /// Closes the sqldatareader and dispose it.
            /// </summary>
            /// <param name="sqlDataReader">Returns sqldatareader.</param>
            public static void CloseSqlDataReader(SqlDataReader sqlDataReader)
            {
                if (!sqlDataReader.IsClosed)
                {
                    sqlDataReader.Close();
                    sqlDataReader.Dispose();
                }
                else
                {
                    //TODO NOTHING
                }
            }
            #endregion
    
            #region Returns SqlDataReader
    
            /// <summary>
            /// Gets data from database.
            /// </summary>
            /// <param name="sqlText">The sql text.</param>
            /// <param name="prams">The parameters of the sql text.</param>
            /// <returns>Return sqldatareader.</returns>
            public static SqlDataReader ExecureReader(string sqlText, SqlParameter[] prams)
            {
                SqlCommand sqlCommand = null;
    
                SqlConnection sqlConnection = GetConnection();
    
                if (sqlConnection.State != ConnectionState.Open)
                {
                    sqlConnection.Open();
                }
    
                sqlCommand = new SqlCommand(sqlText, sqlConnection);
    
                if (null != prams)
                {
                    sqlCommand.Parameters.AddRange(prams);
                }
    
                return sqlCommand.ExecuteReader();
    
                //There doesn't close the connection with database.  Because in reading the data the connection must be open.
            }
    
            #endregion
    
            #region ExecuteNonQuery Method
    
            /// <summary>
            /// Does the insert, update, delete function.
            /// </summary>
            /// <param name="sqlText">The sql text.</param>
            /// <param name="parms">The parameters of the sql.</param>
            /// <returns>Returns influence number.</returns>
            public static int ExecuteNonQuery(string sqlText, SqlParameter[] parms)
            {
                int i = 0;
    
                using (SqlConnection sqlConnection = GetConnection())
                {
                    if (sqlConnection.State == ConnectionState.Closed)
                    {
                        sqlConnection.Open();
                    }
    
                    using (SqlCommand sqlCommand = new SqlCommand())
                    {
                        sqlCommand.Connection = sqlConnection;
                        sqlCommand.CommandText = sqlText;
                        sqlCommand.Parameters.AddRange(parms);
                        i = sqlCommand.ExecuteNonQuery();
                    }
                }
    
                return i;
            }
    
            /// <summary>
            /// Gets the influence rows.
            /// </summary>
            /// <param name="sqlText">The sql text.</param>
            /// <param name="parms">The parameters of the sql.</param>
            /// <returns>Returns influence number.</returns>
            public static int ExecuteNonQuery(string sqlText)
            {
                int i = 0;
    
                using (SqlConnection sqlConnection = GetConnection())
                {
                    if (sqlConnection.State == ConnectionState.Closed)
                    {
                        sqlConnection.Open();
                    }
    
                    using (SqlCommand sqlCommand = new SqlCommand())
                    {
                        sqlCommand.Connection = sqlConnection;
                        sqlCommand.CommandText = sqlText;
                        i = sqlCommand.ExecuteNonQuery();
                    }
                }
    
                return i;
            }
    
            #endregion
    
            #region Returns Object
    
            /// <summary>
            /// Gets the first row and first column data.
            /// </summary>
            /// <param name="sql">The sql text.</param>
            /// <param name="prams">The parameters of the sql text.</param>
            /// <returns>Returns an object.</returns>
            public static object ExecuteScalar(string sqlText, SqlParameter[] parms)
            {
                object result;
    
                using (SqlConnection sqlConnection = GetConnection())
                {
                    if (sqlConnection.State != ConnectionState.Open)
                    {
                        sqlConnection.Open();
                    }
    
                    using (SqlCommand sqlCommand = new SqlCommand(sqlText, sqlConnection))
                    {
                        sqlCommand.Parameters.AddRange(parms);
                        result = sqlCommand.ExecuteScalar();
                    }
                }
    
                return result;
            }
    
            #endregion
        }
    }
  • 相关阅读:
    jQuery操作Table学习总结[转]
    SQL语句中的单引号处理以及模糊查询
    正则表达式实现将html文本转换为纯文本格式(将html字符串转换为纯文本方法)
    ASP.NET中使用UpdatePanel实现局部异步刷新方法和攻略(转)
    Response.Redirect在新窗口打开(转载)
    position属性absolute与relative 的区别
    下载文件
    gridveiw的使用
    MarkDown和流程图诠释你的代码
    git使用笔记
  • 原文地址:https://www.cnblogs.com/chenyongblog/p/3817384.html
Copyright © 2011-2022 走看看