zoukankan      html  css  js  c++  java
  • 初学SqlHelper

     1 //数据库连接字符串
     2       public static readonly string constr = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;
     3 
     4       //打开数据库
     5       public static SqlConnection OpenConnection()
     6       {
     7         SqlConnection conn = new SqlConnection(constr);
     8         conn.Open();
     9         return conn;
    10       }
    11 
    12       //执行不返回结果的sql,用于插入和更新,删除
    13       public static int ExecuteNonQuery(string cmdText, params SqlParameter[] parameters)
    14       {
    15         using (SqlConnection conn = new SqlConnection(constr))
    16         {
    17           conn.Open();
    18           return ExecuteNonQuery(conn, cmdText, parameters);
    19         }
    20       }
    21 
    22       //上面方法的重载方法
    23       public static int ExecuteNonQuery(SqlConnection conn, string cmdText, params SqlParameter[] parameters)
    24       {
    25         using (SqlCommand cmd = conn.CreateCommand())
    26         {
    27           cmd.CommandText = cmdText;
    28           cmd.Parameters.AddRange(parameters);
    29           return cmd.ExecuteNonQuery();
    30         }
    31       }
    32 
    33       //返回对象类型的sql查询,对象单个数据记录的中的某个值,或者count(*)计算的结果,在分页中会经常用到。
    34       public static object ExecuteScalar(string cmdText, params SqlParameter[] parameters)
    35       {
    36         using (SqlConnection conn = new SqlConnection(constr))
    37         {
    38           conn.Open();
    39           return ExecuteScalar(conn, cmdText, parameters);
    40         }
    41       }
    42 
    43       //以上方法的重载方法
    44       public static object ExecuteScalar(SqlConnection conn, string cmdText, params SqlParameter[] parameters)
    45       {
    46         using (SqlCommand cmd = conn.CreateCommand())
    47         {
    48           cmd.CommandText = cmdText;
    49           cmd.Parameters.AddRange(parameters);
    50           return cmd.ExecuteScalar();
    51         }
    52       }
    53 
    54       //获得数据表格的查询
    55       public static DataTable ExecuteDataTable(string cmdText, params SqlParameter[] parameters)
    56       {
    57         using (SqlConnection conn = new SqlConnection(constr))
    58         {
    59           conn.Open();
    60           return ExecuteDataTable(conn, cmdText, parameters);
    61         }
    62       }
    63 
    64       //以上方法的重载
    65       public static DataTable ExecuteDataTable(SqlConnection conn, string cmdText, params SqlParameter[] parameters)
    66       {
    67         using (SqlCommand cmd = conn.CreateCommand())
    68         {
    69           cmd.CommandText = cmdText;
    70           cmd.Parameters.AddRange(parameters);
    71           using (SqlDataAdapter adapter = new SqlDataAdapter(cmd))
    72           {
    73             DataTable dt = new DataTable();
    74             adapter.Fill(dt);
    75             return dt;
    76           }
    77         }
    78       }
    View Code - SqlHelper
      1 /// <summary>
      2         /// 查询表中总记录
      3         /// </summary>
      4         /// <param name="data"></param>
      5         /// <returns></returns>
      6         public async Task<ActionResult> ScalarData(ContactModel data)
      7         {
      8             string sql = "select count(*) from Contact";
      9             var DataSource = SqlHelper.ExecuteScalar(sql);
     10             return ReturnJson(new ResponseModel("0000", "成功", "共有记录"+DataSource.ToString()+""));
     11         }
     12         /// <summary>
     13         /// 分页查询表中数据
     14         /// </summary>
     15         /// <param name="data"></param>
     16         /// <returns></returns>
     17         public async Task<ActionResult> SelectPageData(ContactModel data)
     18         {
     19             int pageindex = data.pageindex;
     20             int pagesize = data.pagesize;
     21             string sql = "select top " + pagesize + " * from Contact where id not in (select top (" + pagesize * (pageindex - 1) + ") id from Contact)";
     22             var DataSource = SqlHelper.ExecuteDataTable(sql);
     23             string JsonString = string.Empty;
     24             JsonString = JsonConvert.SerializeObject(DataSource);
     25             return ReturnJson(new ResponseModel("0000", "成功", JsonString));
     26         }
     27         /// <summary>
     28         /// 查询表中所有数据
     29         /// </summary>
     30         /// <param name="data"></param>
     31         /// <returns></returns>
     32         public async Task<ActionResult> SelectData(ContactModel data)
     33         {
     34             string sql = "select * from Contact";
     35             //string sql = "select * from Contact where Name=ISNULL('" + data.name + "',Name)";
     36             var DataSource = SqlHelper.ExecuteDataTable(sql);
     37 
     38             //string sql = "select * from Contact where Name=ISNULL(@Name,Name)";
     39             //var DataSource = SqlHelper.ExecuteDataTable(sql, new SqlParameter("@Name", data.name));
     40             string JsonString = string.Empty;
     41             JsonString = JsonConvert.SerializeObject(DataSource);
     42             return ReturnJson(new ResponseModel("0000","成功", JsonString));
     43         }
     44         /// <summary>
     45         /// 在表中插入一条新的数据
     46         /// </summary>
     47         /// <param name="data"></param>
     48         /// <returns></returns>
     49         public async Task<ActionResult> InsertData(ContactModel data)
     50         {
     51             //string sql = "INSERT INTO Contact VALUES ('"+ data.name+"','"+data.enrollmentDate+"')";
     52             string sql = "INSERT INTO Contact VALUES (@name, @enrollmentDate)";
     53             SqlParameter[] param = new SqlParameter[] {
     54                 new SqlParameter("@name",data.name),
     55                 new SqlParameter("@enrollmentDate",data.enrollmentDate),
     56             };
     57             var DataSource = SqlHelper.ExecuteNonQuery(sql, param);
     58             if (DataSource == 1)
     59             {
     60                 return ReturnJson(new ResponseModel("0000", "成功", ""));
     61             }
     62             return ReturnJson(new ResponseModel("9999", "处理失败", ""));
     63         }
     64         /// <summary>
     65         /// 根据id修改表中的数据
     66         /// </summary>
     67         /// <param name="data"></param>
     68         /// <returns></returns>
     69         public async Task<ActionResult> UpdateData(ContactModel data)
     70         {
     71             if (data.id == null)
     72             {
     73                 return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
     74             }
     75             //string sql = "UPDATE Contact SET Name = '"+ data.name + "',EnrollmentDate = '" + data.enrollmentDate + "' WHERE ID = " + data.id;
     76             string sql = "UPDATE Contact SET Name = @name , EnrollmentDate = @enrollmentDate  WHERE ID = @id";
     77             SqlParameter[] param = new SqlParameter[] {
     78                 new SqlParameter("@id",data.id),
     79                 new SqlParameter("@name",data.name),
     80                 new SqlParameter("@enrollmentDate",data.enrollmentDate),
     81             };
     82             var DataSource = SqlHelper.ExecuteNonQuery(sql, param);
     83             if (DataSource == 1)
     84             {
     85                 return ReturnJson(new ResponseModel("0000", "成功", ""));
     86             }
     87             return ReturnJson(new ResponseModel("9999", "处理失败", ""));
     88         }
     89         /// <summary>
     90         /// 根据id删除表中的数据
     91         /// </summary>
     92         /// <param name="data"></param>
     93         /// <returns></returns>
     94         public async Task<ActionResult> DeleteData(ContactModel data)
     95         {
     96             string sql = "DELETE FROM Contact WHERE ID = @id";
     97             SqlParameter[] param = new SqlParameter[] {
     98                 new SqlParameter("@id",data.id)
     99             };
    100             var DataSource = SqlHelper.ExecuteNonQuery(sql, param);
    101             if (DataSource == 1)
    102             {
    103                 return ReturnJson(new ResponseModel("0000", "成功", ""));
    104             }
    105             return ReturnJson(new ResponseModel("9999", "处理失败", ""));
    106         }
    107 
    108         public JsonResult ReturnJson(ResponseModel response)
    109         {
    110             return this.Json(response, JsonRequestBehavior.AllowGet);
    111         }
    View Code
    1  public class ContactModel
    2     {
    3         public int id { get; set; }
    4         public string name { get; set; }
    5         public string enrollmentDate { get; set; }
    6         public int pageindex { get; set; }
    7         public int pagesize { get; set; }
    8     }
    View Code
  • 相关阅读:
    c/c++混编
    inotify监听文件
    二维数组
    CentOS7 修改系统时间
    书签书签
    c语言并行程序设计之路(四)(barrier的实现和条件变量)
    MPI分布式内存编程(一):预备知识
    有些狮子不喝咖啡:条件式与合取式的翻译
    【部分博客已搬家至博客园】对CSDN、博客园和简书的一点比较
    c语言并行程序设计之路(三)(信号量与同步)
  • 原文地址:https://www.cnblogs.com/nicest/p/7121100.html
Copyright © 2011-2022 走看看