• 数据库2_sqlHelper


    封装一个受影响的行

     1  public static int ExcuteNonQuery(string sqlText,params SqlParameter[] parameters)
     2         {
     3             using (SqlConnection conn = new SqlConnection(GetSqlConnectionString()))
     4             {
     5                 using (SqlCommand cmd = conn.CreateCommand())
     6                 {
     7                     conn.Open();
     8                     cmd.CommandText = sqlText;
     9                     cmd.Parameters.AddRange(parameters);//把参数添加到cmd命令中。
    10                     return cmd.ExecuteNonQuery();
    11                 }
    12             }
    13         }

    执行sql。返回 查询结果中的 第一行第一列的值

     1   #region 执行sql。返回 查询结果中的 第一行第一列的值
     2 
     3         public static object ExcuteScalar(string sqlText, params SqlParameter[] parameters)
     4         {
     5             using (SqlConnection conn = new SqlConnection(GetSqlConnectionString()))
     6             {
     7                 using (SqlCommand cmd = conn.CreateCommand())
     8                 {
     9                     conn.Open();
    10                     cmd.CommandText = sqlText;
    11                     cmd.Parameters.AddRange(parameters);
    12                     return cmd.ExecuteScalar();
    13                 }
    14             }
    15         }
    16 
    17         public static T ExcuteScalar<T>(string sqlText, params SqlParameter[] parameters)
    18             //where T:UserInfo要求必须继承某个类型
    19             //where T:class //必须是类
    20             //where T:new () //要求T必须有默认构造函数
    21             
    22             //where 可以现在T类型,必须是class,必须有构造函数,必须继承或者实现某个类或者接口。
    23         {
    24             using (SqlConnection conn = new SqlConnection(GetSqlConnectionString()))
    25             {
    26                 using (SqlCommand cmd = conn.CreateCommand())
    27                 {
    28                     conn.Open();
    29                     cmd.CommandText = sqlText;
    30                     cmd.Parameters.AddRange(parameters);
    31                     return (T)cmd.ExecuteScalar();
    32                     //int? i = 0;
    33                     //object num = i;
    34                     //i = num as int?;
    35                 }
    36             }
    37         }
    38         #endregion

     执行sql 返回一个DataTable

     1   public static DataTable ExcuteDataTable(string sqlText, params SqlParameter[] parameters)
     2         {
     3             using (SqlDataAdapter adapter = new SqlDataAdapter(sqlText, GetSqlConnectionString()))
     4             {
     5                 DataTable dt =new DataTable();
     6                 adapter.SelectCommand.Parameters.AddRange(parameters);
     7                 adapter.Fill(dt);
     8                 return dt;
     9             }
    10         }

    执行sql 脚本,返回一个SqlDataReader

     1   public static SqlDataReader ExucteReader(string sqlText, params SqlParameter[] parameters)
     2         {
     3             //SqlDataReader要求,它读取数据的时候,它哟啊独占 它的SqlConnection对象,而且SqlConnection必须是Open状态。
     4             SqlConnection conn =new SqlConnection(GetSqlConnectionString());//不要释放连接,因为后面还要需要连接打开状态。
     5             SqlCommand cmd = conn.CreateCommand();
     6             conn.Open();
     7             cmd.CommandText = sqlText;
     8             cmd.Parameters.AddRange(parameters);
     9             //CommandBehavior.CloseConnection:代表,当SqlDataReader释放的时候,顺便把SqlConnection对象也释放掉。
    10             return cmd.ExecuteReader(CommandBehavior.CloseConnection);

    另外还赋这片也是可以参考,上文是根据EF来判断的 http://www.cnblogs.com/lishuangzhe/archive/2013/08/26/SqlHelper.html

  • 相关阅读:
    Android app 简单的电话拨号器
    JavaWEB开发中的/到底代表什么
    springmvc json
    ForeignKey.on_delete
    django 实现指定文件合并成压缩文件下载
    常用SQL的优化
    数据库 两个简单实用的表级优化方法
    一天只能触发一次操作
    Ajax 生成流文件下载 以及复选框的实现
    django Q和F查询
  • 原文地址:https://www.cnblogs.com/liuweiqiang11188/p/6682034.html
Copyright © 2020-2023  润新知