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(): 一般情况下,查询语句用多一点。

  • 相关阅读:
    flex4的s:states和mx:states的区别
    Flash Builder快捷键
    PE经典DIY案例1:全解开方案让量产PE也能
    U+V2深度隐藏PE制作技术初探
    SQL Server存储过程的删除方法
    利用sql server直接创建日历
    推荐一个好的数据库工具Embarcadero DBArtisan
    css样式大全(整理版)
    asp.net Excel导入&导出
    SQL删除重复数据方法
  • 原文地址:https://www.cnblogs.com/zhangjd/p/5708153.html
Copyright © 2011-2022 走看看