//数据库连接字符串
public static readonly string constr = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString; //打开数据库
public static SqlConnection OpenConnection()
{
SqlConnection conn = new SqlConnection(constr);
conn.Open();
return conn;
} //执行不返回结果的sql,用于插入和更新,删除
public static int ExecuteNonQuery(string cmdText, params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(constr))
{
conn.Open();
return ExecuteNonQuery(conn, cmdText, parameters);
}
} //上面方法的重载方法
public static int ExecuteNonQuery(SqlConnection conn, string cmdText, params SqlParameter[] parameters)
{
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = cmdText;
cmd.Parameters.AddRange(parameters);
return cmd.ExecuteNonQuery();
}
} //返回对象类型的sql查询,对象单个数据记录的中的某个值,或者count(*)计算的结果,在分页中会经常用到。
public static object ExecuteScalar(string cmdText, params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(constr))
{
conn.Open();
return ExecuteScalar(conn, cmdText, parameters);
}
} //以上方法的重载方法
public static object ExecuteScalar(SqlConnection conn, string cmdText, params SqlParameter[] parameters)
{
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = cmdText;
cmd.Parameters.AddRange(parameters);
return cmd.ExecuteScalar();
}
} //获得数据表格的查询
public static DataTable ExecuteDataTable(string cmdText, params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(constr))
{
conn.Open();
return ExecuteDataTable(conn, cmdText, parameters);
}
} //以上方法的重载
public static DataTable ExecuteDataTable(SqlConnection conn, string cmdText, params SqlParameter[] parameters)
{
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = cmdText;
cmd.Parameters.AddRange(parameters);
using (SqlDataAdapter adapter = new SqlDataAdapter(cmd))
{
DataTable dt = new DataTable();
adapter.Fill(dt);
return dt;
}
}
}

- SqlHelper

 /// <summary>
/// 查询表中总记录
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
public async Task<ActionResult> ScalarData(ContactModel data)
{
string sql = "select count(*) from Contact";
var DataSource = SqlHelper.ExecuteScalar(sql);
return ReturnJson(new ResponseModel("", "成功", "共有记录"+DataSource.ToString()+"条"));
}
/// <summary>
/// 分页查询表中数据
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
public async Task<ActionResult> SelectPageData(ContactModel data)
{
int pageindex = data.pageindex;
int pagesize = data.pagesize;
string sql = "select top " + pagesize + " * from Contact where id not in (select top (" + pagesize * (pageindex - ) + ") id from Contact)";
var DataSource = SqlHelper.ExecuteDataTable(sql);
string JsonString = string.Empty;
JsonString = JsonConvert.SerializeObject(DataSource);
return ReturnJson(new ResponseModel("", "成功", JsonString));
}
/// <summary>
/// 查询表中所有数据
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
public async Task<ActionResult> SelectData(ContactModel data)
{
string sql = "select * from Contact";
//string sql = "select * from Contact where Name=ISNULL('" + data.name + "',Name)";
var DataSource = SqlHelper.ExecuteDataTable(sql); //string sql = "select * from Contact where Name=ISNULL(@Name,Name)";
//var DataSource = SqlHelper.ExecuteDataTable(sql, new SqlParameter("@Name", data.name));
string JsonString = string.Empty;
JsonString = JsonConvert.SerializeObject(DataSource);
return ReturnJson(new ResponseModel("","成功", JsonString));
}
/// <summary>
/// 在表中插入一条新的数据
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
public async Task<ActionResult> InsertData(ContactModel data)
{
//string sql = "INSERT INTO Contact VALUES ('"+ data.name+"','"+data.enrollmentDate+"')";
string sql = "INSERT INTO Contact VALUES (@name, @enrollmentDate)";
SqlParameter[] param = new SqlParameter[] {
new SqlParameter("@name",data.name),
new SqlParameter("@enrollmentDate",data.enrollmentDate),
};
var DataSource = SqlHelper.ExecuteNonQuery(sql, param);
if (DataSource == )
{
return ReturnJson(new ResponseModel("", "成功", ""));
}
return ReturnJson(new ResponseModel("", "处理失败", ""));
}
/// <summary>
/// 根据id修改表中的数据
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
public async Task<ActionResult> UpdateData(ContactModel data)
{
if (data.id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
//string sql = "UPDATE Contact SET Name = '"+ data.name + "',EnrollmentDate = '" + data.enrollmentDate + "' WHERE ID = " + data.id;
string sql = "UPDATE Contact SET Name = @name , EnrollmentDate = @enrollmentDate WHERE ID = @id";
SqlParameter[] param = new SqlParameter[] {
new SqlParameter("@id",data.id),
new SqlParameter("@name",data.name),
new SqlParameter("@enrollmentDate",data.enrollmentDate),
};
var DataSource = SqlHelper.ExecuteNonQuery(sql, param);
if (DataSource == )
{
return ReturnJson(new ResponseModel("", "成功", ""));
}
return ReturnJson(new ResponseModel("", "处理失败", ""));
}
/// <summary>
/// 根据id删除表中的数据
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
public async Task<ActionResult> DeleteData(ContactModel data)
{
string sql = "DELETE FROM Contact WHERE ID = @id";
SqlParameter[] param = new SqlParameter[] {
new SqlParameter("@id",data.id)
};
var DataSource = SqlHelper.ExecuteNonQuery(sql, param);
if (DataSource == )
{
return ReturnJson(new ResponseModel("", "成功", ""));
}
return ReturnJson(new ResponseModel("", "处理失败", ""));
} public JsonResult ReturnJson(ResponseModel response)
{
return this.Json(response, JsonRequestBehavior.AllowGet);
}
  public class ContactModel
{
public int id { get; set; }
public string name { get; set; }
public string enrollmentDate { get; set; }
public int pageindex { get; set; }
public int pagesize { get; set; }
}

初学SqlHelper - 实现增删改查的更多相关文章

  1. sqlHelper做增删改查,SQL注入处理,存储值,cookie,session

    一.存储值 eg:登录一个页面,在进入这个页面之前你怎么知道它登没登录呢?[在登录成功之后我们把状态保存起来] 存储值得方式有两种,一种是cookie,一种是session 1.1区别: 代码: if ...

  2. sqlHelper的增删改查

    当一件事情被反复做了多次后.会想找一种办法来取代自己去做这个反复的动作. 敲代码也一样. 在程序中.对于反复的部分.假设是全然同样,那我们就会想着将其写成一个方法(过程.函数),放在一个具有权限的需求 ...

  3. sqlHelper做增删改查

    1.把数据库里面的数据显示出来 sqlHelper怎么用:[网上可以下载,需要可以找楼主要] 1.拷贝到项目,修改它的命名空间等于当前项目名称 2.数据库的连接信息,用户名,密码,登录方式等 < ...

  4. 求亲篇:数据库操作,SqlHelper,增删改查

    1.利用SqlHelper类 2.简单的数据绑定输出 string strSql = "select * from login"; DataTable dt = SqlHelper ...

  5. webapi初学项目(增删改查)

    初学wenapi做了一个从数据库增删改查的项目 webapi: 1.创建项目:visual C# —> ASP.NET MVC 4 web应用程序 模板—>web api; 2.注册路由: ...

  6. sqlhelper sqlparameter 实现增删改查

    这是sqlHelper.cs类,类内里封装了方法 using System; using System.Collections.Generic; using System.Linq; using Sy ...

  7. SqlHelper 增删改查

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...

  8. NHibernate初学一之简单增删改查

    以前有简单了解NHibernate,但因项目一直没有运用所以也没有机会进行一个详细了解:最近利用一点空闲的时间认真学习它:同样希望把学习过程进行简单记录,今天简单写一个针对MSSQL数据库的增删改查的 ...

  9. webapi初学项目(增删改查),webapi增删

    wenapi做了一个从数据库增删改查的项目 webapi: 1.创建项目:visual C# —> ASP.NET MVC 4 web应用程序 模板—>web api; 2.注册路由: 路 ...

随机推荐

  1. 可变大小、颜色边框、样式的UISwitch

    1.CHSwitch.h // // 文 件 名:CHSwitch.h // // 版权所有:Copyright © 2018 lelight. All rights reserved. // 创 建 ...

  2. java集合类学习笔记之ArrayList

    1.简述 ArrayList底层的实现是使用了数组保存所有的数据,所有的操作本质上是对数组的操作,每一个ArrayList实例都有一个默认的容量(数组的大小,默认是10),随着 对ArrayList不 ...

  3. GN算法---《Community structure in social and biological networks》这篇论文讲了什么?

    用中文记下这篇论文的大致意思,以防止忘了.好记性不如烂笔头! 摘要:最近的一些研究在研究社交网络或WWW.研究者都集中于研究网络的“小世界性”,“幂率分布特性”,“网络传递性”(聚类性吧).本文提出网 ...

  4. request对象常用方法

    String getParameter(String name)根据表单组件名称获取提交数据 Sring[] getParameterValues(String name)获取表单组件对应多个值时的请 ...

  5. [转][Unity3D]引擎崩溃、异常、警告、BUG与提示总结及解决方法

    1.U3D经常莫名奇妙崩溃.   一般是由于空异常造成的,多多检查自己的引用是否空指针.   2.编码切换警告提示.   警告提示:Some are Mac OS X (UNIX) and some ...

  6. SpeechVoiceSpeakFlags枚举类型的详细解释

    http://blog.csdn.net/zhou_xw6511/article/details/8313528

  7. ES6,CommonJS 区别

    Javascript,javascript是一种脚本编程语言,有自己独立的语法与语义,没有javascript,也就没有其他的那些概念了. 关于ES6,可直接理解为javascript的增强版(增加了 ...

  8. LeetCode15. 三数之和

    15. 三数之和 描述 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组. 注意:答案中 ...

  9. docker 镜像的配置文件修改

    #抛砖引玉# docker exec -ti 容器ID /bin/bash

  10. [原创]Aop之使用Autofac+Castle 自动注入服务且动态代理服务实现拦截(非MVC控制器拦截)

    public static class AutofacComponentManualRegister { /// <summary> /// 注册 /// </summary> ...