sqlhelper sqlparameter 实现增删改查
这是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 实现增删改查的更多相关文章
- 使用sqlhelper的简单增删改查
一:所说的简单的三层构架,就是说没有业务逻辑层,将各层没有放到单独的项目中,解决方案如下: 二:form1.cs的详细代码 using System; using System.Collections ...
- sqlHelper做增删改查,SQL注入处理,存储值,cookie,session
一.存储值 eg:登录一个页面,在进入这个页面之前你怎么知道它登没登录呢?[在登录成功之后我们把状态保存起来] 存储值得方式有两种,一种是cookie,一种是session 1.1区别: 代码: if ...
- sqlHelper的增删改查
当一件事情被反复做了多次后.会想找一种办法来取代自己去做这个反复的动作. 敲代码也一样. 在程序中.对于反复的部分.假设是全然同样,那我们就会想着将其写成一个方法(过程.函数),放在一个具有权限的需求 ...
- SqlHelper 增删改查
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...
- ORM 实现数据库表的增删改查
这次通过反射技术来实现一下数据库表的增删改查对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping) 注:引用时约束了以下几点: 数据 ...
- ado.net的简单数据库操作(三)——简单增删改查的实际应用
果然,在犯困的时候就该写写博客,写博客就不困了,哈哈! 上篇我记录了自己的SqlHelper的开发过程,今天记录一下如何使用这个sqlhelper书写一个具有简单增删改查的小实例啦. 实例描述:在数据 ...
- ASP.NET学习笔记(3)——用户增删改查(三层)
说明(2017-10-6 11:21:58): 1. 十一放假在家也没写几行代码,本来还想着利用假期把asp.net看完,结果天天喝酒睡觉,回去的票也没买到,惨.. 2. 断断续续的把用户信息的页面写 ...
- “造轮运动”之 ORM框架系列(一)~谈谈我在实际业务中的增删改查
想想毕业已经快一年了,也就是大约两年以前,怀着满腔的热血正式跨入程序员的世界,那时候的自己想象着所热爱的技术生涯会是多么的丰富多彩,每天可以与大佬们坐在一起讨论解决各种牛逼的技术问题,喝着咖啡,翘着二 ...
- Sql Server xml 类型字段的增删改查
1.定义表结构 在MSSM中新建数据库表CommunicateItem,定义其中一个字段ItemContentXml 为xml类型 2.编辑表数据,新增一行,发现xml类型不能通过设计器录入数据. 需 ...
随机推荐
- regression build test
Q: 什么是regression test以及为什么做regression test? A: fixing1进到build之后,QA/tester要进行手动测试,也可能会写automation.但是随 ...
- 【转载】大数据量传输时配置WCF的注意事项
WCF传输数据量的能力受到许多因素的制约,如果程序中出现因需要传输的数据量较大而导致调用WCF服务失败的问题,应注意以下配置: 1.MaxReceivedMessageSize:获取或设置配置了此绑定 ...
- (转)SpyGlass工具介绍
Spyglass工具有五大模块: lint, CDC(多时钟域检查), LP(低功耗),Constraint(约束),DFT(可测试性). 一,在RTL层面上预估芯片性能,从而引导设计人员开发出更加 ...
- mysql处理海量数据时的一些优化查询速度方法
最近一段时间由于工作需要,开始关注针对Mysql数据库的select查询语句的相关优化方法. 由于在参与的实际项目中发现当mysql表的数据量达到百万级时,普通SQL查询效率呈直线下降,而且如果w ...
- storyboard xib下label怎么自适应宽度高度
先看需求:两个Label,要求蓝色的label紧跟在红色的label文字后面 ok首选正常添加约束 红色的Label添加宽度,高度,左边,上边约束 蓝色的Label添加宽度,高度,左边,和红色的水平 ...
- MCS-51系列特殊功能寄存器(摘抄)
1. P0 (80H) P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 2.SP 栈指针(81H) 3.DPTR 数据指针(由DPH和DPL组成) DPL 数据指针低八 ...
- poj 2823 Sliding Window (单调队列入门)
/***************************************************************** 题目: Sliding Window(poj 2823) 链接: ...
- 揭开HTTP网络协议神秘面纱系列(一)
1.了解Web及网络基础 TCP/IP协议族按层次可以分为下面四层: 应用层:决定了向用户提供应用服务时通信的活动,TCP/IP协议族内预存了各类通用的应用服务,比如:FTP(文件传输协议)和DNS( ...
- coreseek实战(二):windows下mysql数据源部分配置说明
coreseek实战(二):windows下mysql数据源部分配置说明 关于coreseek在windows使用mysql数据源的配置,以及中文分词的详细说明,请参考官方文档: mysql数据源配置 ...
- HDU 2689Sort it 树状数组 逆序对
Sort it Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Sub ...