这是sqlHelper.cs类,类内里封装了方法

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Configuration; /// <summary>
///sqlHelper 的摘要说明
/// </summary>
public class sqlHelper
{
public sqlHelper()
{
//
//TODO: 在此处添加构造函数逻辑
//
}
public static readonly string sqlstr=ConfigurationManager.ConnectionStrings["sqlcnn"].ConnectionString;
/// <summary>
/// 获取结果集的第一行第一列的结果
/// </summary>
/// <param name="sqlText">要执行的检索语句</param>
/// <param name="paramss">检索语句中的参数列表</param>
/// <returns></returns>
public static object ExecuteScalar(string sqlText,params SqlParameter[] paramss)
{
using (SqlConnection sqlcnn=new SqlConnection(sqlstr))
{
using (SqlCommand sqlcmm=sqlcnn.CreateCommand())
{
sqlcmm.CommandText = sqlText;
FillParam(paramss, sqlcmm);
sqlcnn.Open();
return sqlcmm.ExecuteScalar();
}
}
}//返回查找的第一行第一列
/// <summary>
/// 填充Command对象的参数列表
/// </summary>
/// <param name="paramss">参数列表</param>
/// <param name="sqlcmm">command对象</param>
private static void FillParam(SqlParameter[] paramss, SqlCommand sqlcmm)
{
foreach (SqlParameter param in paramss)
{
sqlcmm.Parameters.Add(param);
}
}//遍历参数
/// <summary>
/// 执行对数据库的增、删、改操作,并返回数据库中受影响的行数
/// </summary>
/// <param name="sqlText">要执行的insert、update、delete语句</param>
/// <param name="paramss">要执行的语句中的参数列表</param>
/// <returns></returns>
public static int ExecuteNonquery(string sqlText,params SqlParameter[] paramss)
{
using (SqlConnection sqlcnn=new SqlConnection(sqlstr))
{
using (SqlCommand sqlcmm=sqlcnn.CreateCommand())
{
sqlcmm.CommandText = sqlText;
FillParam(paramss,sqlcmm);
sqlcnn.Open();
return sqlcmm.ExecuteNonQuery();
}
}
}//返回sqlcmm.ExcuteQuery()
/// <summary>
/// 获取检索结果集,返回DataTable
/// </summary>
/// <param name="sqlText">要执行的检索语句</param>
/// <param name="paramss">检索语句中的参数列表</param>
/// <returns></returns>
public static DataTable ExecteTable(string sqlText, params SqlParameter[] paramss)
{
using (SqlConnection sqlcnn=new SqlConnection(sqlstr))
{
using (SqlCommand sqlcmm=sqlcnn.CreateCommand())
{
sqlcmm.CommandText = sqlText;
FillParam(paramss,sqlcmm);
sqlcnn.Open();
using (SqlDataReader reader=sqlcmm.ExecuteReader())
{
DataTable dt = new DataTable();
dt.Load(reader);
return dt;
}
}
}
}//返回DataTable } 下面是增删改查操作: using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data; public partial class Caozuo : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{ }
protected void btnAdd_Click(object sender, EventArgs e)
{
string sqlstr = "insert into Denglu(Sname,Spassword)values(@name,@password)";
int i = sqlHelper.ExecuteNonquery(sqlstr,new SqlParameter("@name",this.txtName.Text),new SqlParameter("@password",this.txtPassword.Text));
if (i > )
{
ClientScript.RegisterClientScriptBlock(GetType(), "提示", "<script>alert('添加成功!')</script>", false);
}
else
{
ClientScript.RegisterClientScriptBlock(GetType(),"提示","<script>alert('添加失败!')</script>",false);
}
} protected void btnDel_Click(object sender, EventArgs e)
{
string sqlstr = "delete from Denglu where Sname=@name";
int i = sqlHelper.ExecuteNonquery(sqlstr,new SqlParameter("@name",this.txtName.Text));
if (i > )
{
ClientScript.RegisterClientScriptBlock(GetType(), "提示", "<script>alert('删除成功!')</script>", false);
}
else
{
ClientScript.RegisterClientScriptBlock(GetType(), "提示", "<script>alert('删除失败!')</script>", false);
}
}//删除
protected void btnEdit_Click(object sender, EventArgs e)
{
string sqlstr = "update Denglu set Spassword=@password where Sname=@name";
int i = sqlHelper.ExecuteNonquery(sqlstr,new SqlParameter("@name",this.txtName.Text),new SqlParameter("@password",this.txtPassword.Text));
if (i > )
{
ClientScript.RegisterClientScriptBlock(GetType(), "提示", "<script>alert('修改成功!')</script>", false);
}
else
{
ClientScript.RegisterClientScriptBlock(GetType(), "提示", "<script>alert('修改失败!')</script>", false);
}
}//更改
protected void btnLook_Click(object sender, EventArgs e)
{
string sqlstr = "select Spassword from Denglu where Sname=@name";
DataTable dt = sqlHelper.ExecteTable(sqlstr,new SqlParameter("@name",this.txtName.Text.Trim()));
this.txtPassword.Text = dt.Rows[][].ToString();
}//查找
protected void btnRefresh_Click(object sender, EventArgs e)
{
string sqlstr = "select * from Denglu";
DataTable dt = sqlHelper.ExecteTable(sqlstr);
this.GridView1.DataSource = dt;
this.GridView1.DataBind();
}//刷新
}

sqlhelper sqlparameter 实现增删改查的更多相关文章

  1. 使用sqlhelper的简单增删改查

    一:所说的简单的三层构架,就是说没有业务逻辑层,将各层没有放到单独的项目中,解决方案如下: 二:form1.cs的详细代码 using System; using System.Collections ...

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

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

  3. sqlHelper的增删改查

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

  4. SqlHelper 增删改查

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

  5. ORM 实现数据库表的增删改查

    这次通过反射技术来实现一下数据库表的增删改查对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping) 注:引用时约束了以下几点: 数据 ...

  6. ado.net的简单数据库操作(三)——简单增删改查的实际应用

    果然,在犯困的时候就该写写博客,写博客就不困了,哈哈! 上篇我记录了自己的SqlHelper的开发过程,今天记录一下如何使用这个sqlhelper书写一个具有简单增删改查的小实例啦. 实例描述:在数据 ...

  7. ASP.NET学习笔记(3)——用户增删改查(三层)

    说明(2017-10-6 11:21:58): 1. 十一放假在家也没写几行代码,本来还想着利用假期把asp.net看完,结果天天喝酒睡觉,回去的票也没买到,惨.. 2. 断断续续的把用户信息的页面写 ...

  8. “造轮运动”之 ORM框架系列(一)~谈谈我在实际业务中的增删改查

    想想毕业已经快一年了,也就是大约两年以前,怀着满腔的热血正式跨入程序员的世界,那时候的自己想象着所热爱的技术生涯会是多么的丰富多彩,每天可以与大佬们坐在一起讨论解决各种牛逼的技术问题,喝着咖啡,翘着二 ...

  9. Sql Server xml 类型字段的增删改查

    1.定义表结构 在MSSM中新建数据库表CommunicateItem,定义其中一个字段ItemContentXml 为xml类型 2.编辑表数据,新增一行,发现xml类型不能通过设计器录入数据. 需 ...

随机推荐

  1. C++Builder Berlin 编译

    编译工程,一个单元有错误,就停下了, 能不能把所有单元都编译,一次处理所有单元的错误?

  2. guava cache

    适用场景 缓存在很多场景下都是相当有用的.例如,计算或检索一个值的代价很高,并且对同样的输入需要不止一次获取值的时候,就应当考虑使用缓存. Guava Cache与ConcurrentMap很相似,但 ...

  3. 移动端WEB开发,click,touch,tap事件浅析

    一.click 和 tap 比较 两者都会在点击时触发,但是在手机WEB端,click会有 200~300 ms,所以请用tap代替click作为点击事件. singleTap和doubleTap 分 ...

  4. openjudge ROADS

    726:ROADS 总时间限制: 1000ms 内存限制: 65536kB 描述 N cities named with numbers 1 ... N are connected with one- ...

  5. Installshield 打包安装包心得

     制作简单的安装软件 声明:下面的教程,是把读者当做完全没接触过IS的角度来制作的. 1. 启动InstallShield 12.建立一个InstallShield MSI Project,如图: 2 ...

  6. 利用js对象的特性,去掉数组中的重复项

  7. 【IIS】 网站优化

    [IIS] 网站优化 一. 从硬件入手,升级服务器的cpu,内存,硬盘 这是成本最低的方法,所以如果要优化,请先考虑下现有服务器的硬件能力是不是满足要求. 二. 从数据库入手 索引: 检查该建的索引建 ...

  8. 写一个ajax程序就是如此简单

    写一个ajax程序就是如此简单 ajax介绍: 1:AJAX全称为Asynchronous JavaScript and XML(异步JavaScript和XML),指一种创建交互式网页应用的网页开发 ...

  9. hdu 3506 Monkey Party 区间dp + 四边形不等式优化

    http://acm.hdu.edu.cn/showproblem.php?pid=3506 四边行不等式:http://baike.baidu.com/link?url=lHOFq_58V-Qpz_ ...

  10. lstm

    http://colah.github.io/posts/2015-08-Understanding-LSTMs/ 这里介绍lstm写的很不错,尤其是按照不同的part进行解析,感觉很好,很清晰.