ASP.NET中的ExecuteNonQuery()方法的用法
下面我将详细讲解在机房收费系统D层中如何对数据库的增加、删除、修改,最后再来总结一下
ExecuteNonQuery(),ExecuteScalar(),ExecuteReader的用法:
一、增、删、改
1、 增加新的记录
Private Sub frmAddUser_Load(sender As Object, e As EventArgs) Handles MyBase.Load
{
MyConnection.Open();’打开数据库
MyCommand1.CommandText="InsertintoUser_Info(userID,PWD,Level,UserName) values (@UserID,@PWD,@Level,@UserName) ";
MyCommand1.Connection = MyConnection;
MyCommand1.ExecuteNonQuery();
’由于增加了一条记录,所以返回1
//或者MyCommand1.ExecuteReader();先增加一条记录,然后返回一个System.Data.OleDb.OleDbDataReader类型的对象,该对象为:EOF
//或者MyCommand1. ExecuteScalar();先增加一条记录,返回未实列化的对象
MyConnection.Close();
}
2、 删除现有数据
Private Sub frmDeUser_Load(sender As Object, e As EventArgs) Handles MyBase.Load
{
MyConnection.Open();’打开数据库
MyCommand1.CommandText = "delete * from admin";
MyCommand1.Connection = MyConnection;
MyCommand1.ExecuteNonQuery();
’由于删除了n条记录,所以返回n
//或者MyCommand1.ExecuteReader();先删除n条记录,然后返回一个System.Data.OleDb.OleDbDataReader类型的对象,该对象为:EOF
//或者MyCommand1. ExecuteScalar();先删除n条记录,返回未实列化的对象
MyConnection.Close();
}
3、 修改现有数据
Private Sub frmModifyUser_Load(sender As Object, e As EventArgs) Handles MyBase.Load
MyConnection.Open();’打开数据库
MyCommand1.CommandText = "update User_Info set PWD='" & enUser.NewPWD & "' where UserName ='" & enUser.UserName & "'";
MyCommand1.Connection = MyConnection;
MyCommand1.ExecuteNonQuery();’
由于修改了1条记录,所以返回n
//或者MyCommand1.ExecuteReader();
先修改了1条记录,然后返回一个System.Data.OleDb.OleDbDataReader类型的对象,该对象为:EOF
//或者MyCommand1. ExecuteScalar();先修改了1条记录,返回未实列化的对象
MyConnection.Close();
二、关于MyCommand的ExecuteNonQuery(),ExecuteScalar(),ExecuteReader方法的区别:
1、ExecuteNonQuery():执行SQL,返回一个整型变量,如果SQL是对数据库的记录进行操作,那么返回操作影响的记录条数,如果是 SQL="CREATE TABLE LookupCodes (code_id smallint IDENTITY(1,1)PRIMARY KEY CLUSTERED, code_desc varchar(50) NOT NULL)"那么在表创建成功后该方法返回–1。
例如:
privatevoid Page_Load(object sender, System.EventArgs e)
{
MyConnection.Open();’打开数据库
MyCommand1.CommandText= "CREATE TABLE LookupCodes (code_id smallint IDENTITY(1,1) PRIMARY KEYCLUSTERED, code_desc varchar(50) NOT NULL)"; MyCommand1.Connection = MyConnection;
MyCommand1.ExecuteNonQuery();’首先建立一个LookupCodes表,然后返回-1
//或者MyCommand1.ExecuteReader();首先建立一个LookupCodes表,然后返回一个System.Data.OleDb.OleDbDataReader类型的对象,该对象为:EOF
//或者MyCommand1.ExecuteScalar();首先建立一个LookupCodes表,返回未实列化的对象
MyConnection.Close();
}
2、 ExecuteScalar():执行SQL,(如果SQL是查询Select)返回查询结果的第一行第一列,如果(如果SQL不是查询Select)那 么返回未实列化的对象,因为对象未实列化,所以返回结果不能ToString(),不能Equals(null),也就是说返回结果没有任何作用
3、 executeReader方法执行SQL,(如果SQL是查询Select)返回查询结果的集合,类型是System.Data.OleDb.OleDbDataReader,你可以通过此结果,获取查询的数据。如果(如果SQL不是查询Select)那么 返回一个没有任何数据的System.Data.OleDb.OleDbDataReader类型的集合(EOF)
三、总结:
ASP.Net中对于数据库的操作方法很多,要实现统一个目标不同的人可能会采取不同的方法,就好像在ASP中有的人喜欢用RS.Addnew,有的人喜欢用”Insert Into”,主要是看个人的习惯,当然在性能上不同的方法可能会存在较大的差别,这个只能靠我们在平常的学习中一点一滴的积累经验的。
另外顺便说一下 ASP.Net页提供类似如下方式的操作方法:
Dim Paras As SqlParameter() ={New SqlParameter("@cardno", enStudent.cardno),New SqlParameter("@studentNo", enStudent.studentNo),New SqlParameter("@studentName", enStudent.studentName),New SqlParameter("@sex", enStudent.sex),New SqlParameter("@department", enStudent.department),New SqlParameter("@grade", enStudent.grade),New SqlParameter("@Studentclass", enStudent.Studentclass),New SqlParameter("@cash", enStudent.cash),New SqlParameter("@status", enStudent.status)}
以上是对ASP.NET中的ExecuteNonQuery()方法的用法的简单总结,如有出入,还请见谅。
转载于:https://www.cnblogs.com/jiangu66/p/3241646.html
ASP.NET中的ExecuteNonQuery()方法的用法相关推荐
- Asp.net中利用ExecuteNonQuery()执行存储过程返回-1解决方案
Asp.net中利用ExecuteNonQuery()执行存储过程返回-1解决方案 2009-08-22 14:06 by chenkai, 544 阅读, 1 评论, 收藏, 编辑 Asp.net中 ...
- ASP.NET中Get和Post的用法
ASP.NET中Get和Post的用法 http://developer.51cto.com 2009-07-29 16:53 wangpei cnblogs 我要评论(0) 本文介绍了asp ...
- SqlHelper类中的ExecuteNonQuery方法解析
在SqlHelper类(windows原)中,ExecuteNonQuery方法通常用于执行数据库更新与返回存储过程的输出参数,它有九个重载,接下来我们来一一解析. 首先介绍一下此方法可以输入哪些参数 ...
- ASP.NET中String.IndexOf 方法的使用
ASP.NET中String.IndexOf 方法的使用 收藏 String.IndexOf 方法 (value, [startIndex], [count]) 报告指定字符在此实例中的第一个匹配 ...
- java drawstring字体大小,JAVA中,drawstring 方法的用法,格式是什么啊
啦啦啦额68的回答 Java中Graphics类的drawString()方法: i)drawString(String str,int x,int y): String str是可以在屏幕上显示的字 ...
- ResultSet 中的getString 方法的用法
ResultSet 中的getString()方法的用法? 检举 | 2009-9-3 12:32 提问者: 爱海的人233 | 浏览次数:5638次 ResultSet rs; Sting s=rs ...
- 在ASP.NET中调用存储过程方法新解
摘要 存储过程的调用在B/S系统中用的很多.传统的调用方法不仅速度慢,而且代码会随着存储过程的增多不断膨胀,难以维护.新的方法在一定程度上解决了这些问题. 关键词 ASP.NET:存储过程 在使用.N ...
- asp.net中的加密方法
本文由chenyangASP版权所有,可以转载,复制,粘贴,并请注明出处,但不得修改! 无论什么时候只要我们使用数据库开发网站,我们就必须保护用户资料,这非常必要. 黑客可以盗窃口令,个人隐私遭到严重 ...
- 在ASP.NET中调用存储过程方法
两种不同的存储过程调用方法 为了突出新方法的优点,首先介绍一下在.NET中调用存储过程的"官方"方法.另外,本文的所有示例程序均工作于SqlServer数据库上,其它情况类似,以后 ...
- Lodop插件中的StartPrint方法的用法,备忘
Lodop中的StartPrint方法详解: 参数: PrintName:打印名称, pageWidth:纸张尺寸宽 pageHeight:纸张尺寸高 StyleContent:模板json字符串 I ...
最新文章
- 用for实现Go的while和do...while
- 吴恩达教你如何使用“锤子”?机器学习新书免费领
- seaborn使用boxplot函数进行箱图可视化(使用色彩调色板自定义设置箱图的颜色、在boxplot函数内设置palette参数自定义调色板)
- MemCache在Windows环境下的搭建及启动
- 离线地图解决方案(二):地图基本控制
- hystrix熔断和降级的区别_Ribbon+Hystrix断路器实现微服务的降级和熔断
- VisualStudioIDE各个版本大合集分享
- 2010年5月22日 网络规划师下午II 试题预测和论文预测
- 数据结构之基环树——骑士,Island,旅行加强版,Number of Simple Paths,Traffic Network in Numazu,Card Game
- Java的HttpURLConnection通过POST请求中文乱码
- 自动处理可载入模块命令 modprobe
- 5分钟即可使用25年的Linux
- html一个页面分页代码怎么写,纯JS前端实现分页代码
- Python解法华为OJ机试-迷宫问题
- 最轻松mflac转flac、mp3方法
- cve_2019_0708 bluekeep复现踩坑
- 静态网页—制作“人人网首页”页面
- 工程与建设杂志工程与建设杂志社工程与建设编辑部2022年第3期目录
- Win7安装win10,无需全盘重新分区,原MBR格式转GPT格式,创建EFI和MSR分区,安装win10
- 白杨SEO:中小企业发广告去哪个平台?一般选择哪种推广方式方法比较好?