zoukankan      html  css  js  c++  java
  • SqlHelper类

    工作的时候我用的最多的是Orcal数据库,但是写小程序和Dome的时候,我喜欢用Sql Server数据库,SqlHelper类是最基本的与数据库交互的类,记录下来,下次用的时候直接拷贝。

      public static class SqlHelper
        {
            static string connection = "Data Source=.;Initial Catalog=Exercise;Integrated Security=True";//数据库连接字符串
            /// <summary>
            /// 返回受影响的行数
            /// </summary>
            /// <param name="sql">sql语句</param>
            /// <param name="sp">参数</param>
            /// <returns></returns>
            public static int ExcuteNonQuery(string sql, params SqlParameter[] sp)
            {
                using (SqlConnection conn = new SqlConnection(connection))
                {
                    conn.Open();
                    using (SqlCommand cmd = new SqlCommand(sql, conn))
                    {
                        cmd.CommandText = sql;
                        cmd.Connection = conn;
                        cmd.Parameters.AddRange(sp);
                        return cmd.ExecuteNonQuery();
                    }
                }
            }
            /// <summary>
            /// 返回首行首列的值
            /// </summary>
            /// <param name="sql">sql语句</param>
            /// <param name="sp">参数</param>
            /// <returns></returns>
            public static int ExcuteScalre(string sql, params SqlParameter[] sp)
            {
                using (SqlConnection conn = new SqlConnection(connection))
                {
                    conn.Open();
                    using (SqlCommand cmd = new SqlCommand(sql, conn))
                    {
                        cmd.Parameters.AddRange(sp);
                        return (int)cmd.ExecuteScalar();
                    }
                }
            }
            /// <summary>
            /// 返回DataTable类型的数据
            /// </summary>
            /// <param name="sql">sql语句</param>
            /// <param name="sp">参数</param>
            /// <returns></returns>
            public static DataTable ExcuteDataTable(string sql, params SqlParameter[] sp)
            {
                using (SqlConnection conn = new SqlConnection(connection))
                {
                    conn.Open();
                    using (SqlCommand cmd = new SqlCommand(sql, conn))
                    {
                        cmd.Parameters.AddRange(sp);
                        DataTable dt = new DataTable();
                        using (SqlDataAdapter adapter = new SqlDataAdapter(cmd))
                        {
                            adapter.Fill(dt);
                        }
                        return dt;
                    }
                }
            }
            /// <summary>
            /// 返回SqlDataReader
            /// </summary>
            /// <param name="sql">sql语句</param>
            /// <param name="sp">参数</param>
            /// <returns></returns>
            public static SqlDataReader ExcuteSqlDataReader(string sql, params SqlParameter[] sp)
            {
                SqlConnection conn = new SqlConnection(connection);
                conn.Open();
                SqlCommand cmd = new SqlCommand(sql, conn);
                cmd.Parameters.AddRange(sp);
                SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                return reader;
            }
        }
    ExcuteNonQuery(): 查询语句不能用,如果用ExcuteNonQuery执行查询语句,返回值会是 -1,UPDATE、INSERT 和 DELETE用的最多.
    ExcuteScalre(): 一般情况下,查询语句用多一点。

  • 相关阅读:
    Java中二进制数与整型之间的转换
    校招小白机考入坑之从键盘输入java的各种数据类型
    使用flume抓取tomcat的日志文件下沉到kafka消费
    Scala学习笔记之Actor多线程与线程通信的简单例子
    通过流的方式操作hadoop的API
    Windows环境下使用kafka单机模式
    scrapy
    python 虚拟环境
    celery使用
    redis install
  • 原文地址:https://www.cnblogs.com/zhangjd/p/5708153.html
Copyright © 2011-2022 走看看