zoukankan      html  css  js  c++  java
  • 没事敲代码-SqlHelper

    闲来没事,又把SqlHelper敲了一遍。

    一般,每个程序员都会比较喜欢用自己写的SqlHelper,用起来顺手,呵呵。

    public class SqlHelper
        {
            public static readonly string str = ConfigurationManager.ConnectionStrings["conStr"].ConnectionString;
           
            /// <summary>
            /// 这个方法可以用sql语句,也可以用存储过程
            ///  对连接执行 Transact-SQL 语句并返回受影响的行数。
            /// </summary>
            /// <param name="sql"></param>
            /// <param name="comtype">CommandType</param>
            /// <param name="para">可变参数</param>
            /// <returns>受影响的行数。</returns>
            public static int ExecuteNonQuery(string sql, CommandType comtype,params SqlParameter[]para)
            {
                using (SqlConnection con=new SqlConnection(str) )
                {
                    using (SqlCommand cmd=new SqlCommand(sql,con))
                    {
                      
                        con.Open();
                        if (para!=null)
                        {
                            cmd.Parameters.AddRange(para);
                        }
    
                        cmd.CommandType = comtype;
                        return cmd.ExecuteNonQuery();
                    }
                }
            }
            /// <summary>
            /// 这个方法可以用sql语句,也可以用存储过程
            ///  执行查询,并返回查询所返回的结果集中第一行的第一列。忽略其他列或行。
            /// </summary>
            /// <param name="sql"></param>
            /// <param name="comtype"></param>
            /// <param name="para"></param>
            /// <returns> 结果集中第一行的第一列;如果结果集为空,则为空引用(在 Visual Basic 中为 Nothing)。返回的最大字符数为 2033 个字符。</returns>
            public static object ExecuteScalar(string sql, CommandType comtype, params SqlParameter[] para)
            {
                using (SqlConnection con = new SqlConnection(str))
                {
                    using (SqlCommand cmd = new SqlCommand(sql, con))
                    {
    
                        con.Open();
                        if (para != null)
                        {
                            cmd.Parameters.AddRange(para);
                        }
    
                        cmd.CommandType = comtype;
                        return cmd.ExecuteScalar();
                    }
                }
            }
    
            /// <summary>
            ///   执行查询,并返回查询所返回的结果集中第一行的第一列。忽略其他列或行。
            ///   将 System.Data.SqlClient.SqlCommand.CommandText 发送到 System.Data.SqlClient.SqlCommand.Connection,并使用
            /// </summary>
            /// <param name="sql"></param>
            /// <param name="comtype"></param>
            /// <param name="para"></param>
            /// <returns> 结果集中第一行的第一列;如果结果集为空,则为空引用(在 Visual Basic 中为 Nothing)。返回的最大字符数为 2033 个字符。一个 System.Data.SqlClient.SqlDataReader 对象。</returns>
            public static SqlDataReader ExecuteReader(string sql, CommandType comtype, params SqlParameter[] para)
            {
                SqlConnection con = new SqlConnection(str);
               
                using (SqlCommand cmd=new SqlCommand(sql,con))
                {
                    if (para != null)
                    {
                        cmd.Parameters.AddRange(para);
                    }
                    try
                    {
                        con.Open();
                        cmd.CommandType = comtype;
                        return cmd.ExecuteReader(CommandBehavior.CloseConnection);
                    }
                    catch (Exception)
                    {
                        con.Close();
                        con.Dispose();
                        throw;
                    }
                }
              
    
            }
            /// <summary>
            ///通过SalDataAdapter查询
            /// </summary>
            /// <param name="sql"></param>
            /// <param name="param"></param>
            /// <returns> 返回的是一个表</returns>
           public static DataTable GetTable(string sql, params SqlParameter[] param)
            {
                DataTable dt = new DataTable();
                using (SqlConnection con = new SqlConnection(str))
                {
                    using (SqlCommand cmd = new SqlCommand(sql, con))
                    {
                        cmd.Parameters.AddRange(param);
                        using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
                        {
                            sda.Fill(dt);
                        }
                    }
                }
                return dt;
            }
    
            /// <summary>
            ///通过SalDataAdapter查询
            /// </summary>
            /// <param name="sql"></param>
            /// <param name="param"></param>
            /// <returns> 返回的是一个表</returns>
            public static DataTable GetTable(string sql, params SqlParameter[] param)
            {
                DataTable dt = new DataTable();
                using (SqlConnection con = new SqlConnection(str))
                {
                    using (SqlCommand cmd = new SqlCommand(sql, con))
                    {
                        cmd.Parameters.AddRange(param);
                        using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
                        {
                            sda.Fill(dt);
                        }
                    }
                }
                return dt;
            }
        }
  • 相关阅读:
    C#与JAVA平台RSA算法交互示例
    .NET_RSA加密全接触(重、难点解析)
    .NET和java的RSA互通,仅此而已
    数据库面试常问的一些基本概念
    亿级Web系统搭建——单机到分布式集群
    (译) JSON-RPC 2.0 规范(中文版)
    有趣的 Mysql 存储引擎
    zend opcache的最佳设置
    PHP注释的艺术——phpDoc规范
    说说$POST 、$HTTP_RAW_POST_DATA、php://input三者之间的区别
  • 原文地址:https://www.cnblogs.com/jerrylucky/p/3919858.html
Copyright © 2011-2022 走看看