executenonquery

更新时间:2023-03-01 19:27:37 阅读: 评论:0

ExecuteNonQuery()返回值的几种情况

ExecuteNonQuery()方法主要用户更新数据,通常它使用Update,Inrt,Delete语句来操作数据库,其方法返回值意义:对于 Update,Inrt,Delete语句执行成功是返回值为该命令所影响的行数,如果影响的行数为0时返回的值为0,如果数据操作回滚得话返回值为-1。

(回滚的意思:删除由一个或多个部分完成的事务执行的更新。为在应用程序、数据库或系统错误后还原数据库的完整性,需要使用回滚。回滚泛指程序更新失败, 返回上一次正确状态的行为)

对于这种更新操作 用我们平时所用的是否大于0的判断操作应该没有问题而且比较好,但是对于其他的操作如对数据库结构的操作,如果操作成功时返回的却是-1,这种情况跟我们平时的思维方式有点差距所以应该好好的注意了。

例如对数据库共添加一个数据表的Create操作,当创建数据表成功时返回-1,如果操作失败的话(如数据表已经存在)往往会发生异常,所以执行这种操作时最好用try--catch--语句来容错。

简单意思是用sql语句创建数据库,创建数据表等等一些对数据库结构的操作最好不要用大于0来判断是否操作成功。

扩展资料

c#数据执行方法:

1、使用ExecuteReader()操作数据库,执行查询操作的非常好的方法。

ExecuteReader比DataSet而言,DataReader具有较快的访问能力,并且能够使用较少的服务器资源。DataReader对象提供了游标形式的读取方式,当从结果行中读取了一行,则游标会继续读取到下一行。

通过read方法可以判断数据是否还有下一行,如果存在数据,则继续运行返回true,如果没有数据,则返回fal。DataReader可以提高执行效率,基于序号的查询可以使用DataReader。

使用ExecuteReader()操作数据库,通常情况下是使用ExecuteReader()进行数据查询操作,使用ExecuteReader()查询数据能够提升查询效率,而如果需要进行数据库事务处理的话,ExecuteReader()并不是一个理想的选择。

2、使用ExecuteNonQuery(),ExecuteScalar()操作数据库,执行增删改操作的利器

ExecuteNonQuery()通常情况下为数据库事务处理的首选,当需要执行插入,删除,修改等操作时,首选ExecuteNonQuery(),ExecuteNonQuery()执行成功返回的是一受影响的行数,对于"Create Table"和"Drop Table"语句,返回值是0。

而对于其他类型的语句,返回值是-1,ExecuteNonQuery()操作数据时,可以不使用DataSet直接更改数据库中的数据。

ExecuteScalar()方法也可以用来执行SQL语句,但是executescalar()执行SQL语句后返回值与ExecuteNonQuery()并不相同,executescalar()方法的返回值的数据类型是object。

如果执行的SQL语句是查询语句,则返回结果是查询后的第一行第一列,如果执行的SQL语句不是一个查询语句,则会返回一个未实例化的对象,必须通过类型装换来显示。

一般情况下,ExecuteNonQuery()操作后返回的是一个值,而executescalar()操作后则会返回一个对象,executescalar()经常使用当需要返回单一值时的情况。例如当插入一条数据信息时,需要马上知道刚才插入的值,则可以使用executescalar()方法。


ExecuteNonQuery()怎么用

报错是由于执行cmd.ExecuteNonQuery()这个错误的,在这里就有执行错误,系统就会将调试终止,提示你出错,后边的代码根本没有执行,怎么会实现你的报错呢,你这样不能够抓取系统报错,一般都是用try catch来抓取报错的

try
{
conn.Open();
if(cmd.ExecuteNonQuery()==1)
label2.Text="数据录入成功";
}
catch
{
lable2.Text="数据录入失败";
}
执行try中代码出现错误都会执行catch{}中的代码,你原本那样抓取系统报错不可取

“cmd.ExecuteNonQuery()”是什么意思?

这是关于Sql语句中的语句,cmd.ExecuteNonQuery会有一个返回值,将值赋值给整型count,返回受影响的行数值。

执行SQL句,返回受影响行数(判断执行SQL句是否成功)。


ExecuteNonQuery();与ExecuteNonQuery()>0;各有什么意思

ExecuteNonQuery执行一个SqlCommand,该命令返回受操作影响的行数,该命令主要用于确定操作是否成功,比如插入、删除和更新操作,如果受影响的行数为0,则证明不成功。大于0表示操作成功。

用于这种更新操作与我们通常的判断是大于0的操作应该没有问题,是更好的,但对于其他操作,如数据库的操作结构,如果返回-1操作成功时,这种情况与我们平常的思维方式有点差距所以应该注意了。

简单意味着使用SQL语句创建数据库、创建数据表等。数据库结构上的某些操作最好不要使用大于0的值来判断操作是否成功。

扩展资料:

c#数据执行方法:

1.使用ExecuteReader()操作数据库执行查询操作的好方法。

ExecuteReader具有比数据集更快的访问速度,并且可以使用更少的服务器资源。DataReader对象以读取方式提供游标,当从结果行读取一行时,游标将继续读取下一行。

read方法用于确定下一行数据是否存在。如果有数据,它将继续运行并返回true。如果没有数据,则返回fal。DataReader可以提高执行效率,并可用于基于序列号的查询。

使用ExecuteReader()操作数据库(通常用于数据查询操作)可以通过使用ExecuteReader()查询数据来提高查询效率,如果需要数据库事务,那么ExecuteReader()不是理想的选择。

2.使用ExecuteNonQuery()、ExecuteScalar()对数据库进行操作、添加、删除和更改操作

ExecuteNonQuery()通常是数据库事务的首选方法,在插入、删除和修改等操作时首选ExecuteNonQuery()。ExecuteNonQuery()在成功执行时返回受影响的行数,“创建表”和“删除表”语句的返回值为0。

对于其他类型的语句,返回值为-1,ExecuteNonQuery()可以操作数据,而不需要使用数据集直接更改数据库中的数据。

ExecuteScalar()方法也可以用来执行SQL语句,但是ExecuteScalar()不会返回与ExecuteNonQuery()相同的值,ExecuteScalar()方法返回值的数据类型为object。

如果执行的SQL语句是一个查询,则结果是查询后的第一行和第一列。如果执行的SQL语句不是查询,则返回未实例化的对象,并且必须通过类型加载来显示。

通常,ExecuteNonQuery()操作返回一个值,而executescalar()操作返回一个对象,当需要返回单个值时,executescalar()通常使用该对象。例如,当插入数据消息并且需要立即知道刚刚插入的值时,可以使用executescalar()方法。


本文发布于:2023-02-28 20:20:00,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/zhishi/a/167767005781457.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:executenonquery.doc

本文 PDF 下载地址:executenonquery.pdf

标签:executenonquery
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 实用文体写作网旗下知识大全大全栏目是一个全百科类宝库! 优秀范文|法律文书|专利查询|