//数据库连接字符串
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. shell-脚本-作用是发现前10个最占用磁盘空间的文件

    #!/bin/bash## 这个脚本的作用是发现前10个最占用磁盘空间的文件################定义这个脚本的全区变量##################################C ...

  2. 【python】使用python smtplib库发邮件添加cc,bcc

    #!/usr/bin/env python# -*- coding: utf-8 -*- '''@author@mail @date 2017/03/16 发送邮件'''import smtplibf ...

  3. EL表达式的语法与应用

    EL(是Expression Language的缩写),使用EL对JSP输出进行优化,可以使得页面结构更加清晰,代码可读性高,也更加便于维护. EL表达式的语法: 语法:$(EL 表达式) $  和 ...

  4. Javascript 上传文件到Azure存储

    对一些前端工程师来讲,使用javascript上传文件到Azure存储中可能是需要掌握的技能,希望这篇博客能给到帮助. 在开始前我们需要了解以下几点: 共享访问签名(Shared Access Sig ...

  5. 杀死进程命令 kill

    一般kill命令和ps命令结合使用, 例:现在想杀死telnet的进程 1.在所有进程中查看telnet命令 ps -ef |grep telnet 2.根据上面命令查到的进程id,如pid 是 xx ...

  6. P3235 [HNOI2014]江南乐

    $ \color{#0066ff}{ 题目描述 }$ 小A是一个名副其实的狂热的回合制游戏玩家.在获得了许多回合制游戏的世界级奖项之后,小A有一天突然想起了他小时候在江南玩过的一个回合制游戏. 游戏的 ...

  7. ExtJS 4.2.1学习笔记(一)——MVC架构与布局

    1       ExtJS入门 1.1     支持所有主流浏览器 调试推荐:chrome.Safari.Firefox 1.2     推荐目录结构 - appname (包含所有程序代码,是根目录 ...

  8. flex布局浅谈

    flex布局浅谈和实例 阿基米德曾说给我一个支点我可以撬动地球,而拥有flex基本可以撬动所有的布局. 1.flex布局基本介绍及效果展示 工欲善其事必先利其器,来来来,一起看下基础知识先(呵~,老掉 ...

  9. 关于 FPDF、HTML2PDF里的中文、日文、韩文等双字节字符换行问题

    最近使用 FPDF.HTML2PDF导出中文PDF,发现表格里的数据不会自动换行,格式乱了,看了一下手册,有个 functionCell()可以设置换行,但是设置了半天也没反应!最后搞了一个笨办法完美 ...

  10. tornado 09 cookie和session

    tornado 09 cookie和session 一.cookie #有什么办法能够让浏览器记住登录信息,下次再打开的时候可以自动登录?网站是如何记录登录信息的? class SetCookieHa ...