executenonquery executenonquery 的用法


executenonquery executenonquery 的用法

文章插图
大家好,小豆豆来为大家解答以上的问题 。executenonquery 的用法 , executenonquery这个很多人还不知道,现在让我们一起来看看吧!
【executenonquery executenonquery 的用法】1、ExecuteNonQuery()方法主要用户更新数据,通常它使用Update,Insert,Delete语句来操作数据库,其方法返回值意义:对于 Update,Insert,Delete语句执行成功是返回值为该命令所影响的行数,如果影响的行数为0时返回的值为0,如果数据操作回滚得话返回值为-1 。
2、(回滚的意思:删除由一个或多个部分完成的事务执行的更新 。
3、为在应用程序、数据库或系统错误后还原数据库的完整性,需要使用回滚 。
4、回滚泛指程序更新失败, 返回上一次正确状态的行为)对于这种更新操作 用我们平时所用的是否大于0的判断操作应该没有问题而且比较好,但是对于其他的操作如对数据库结构的操作,如果操作成功时返回的却是-1,这种情况跟我们平时的思维方式有点差距所以应该好好的注意了 。
5、例如对数据库共添加一个数据表的Create操作 , 当创建数据表成功时返回-1,如果操作失败的话(如数据表已经存在)往往会发生异常 , 所以执行这种操作时最好用try--catch--语句来容错 。
6、简单意思是用sql语句创建数据库,创建数据表等等一些对数据库结构的操作最好不要用大于0来判断是否操作成功 。
7、扩展资料c#数据执行方法:使用ExecuteReader()操作数据库,执行查询操作的非常好的方法 。
8、ExecuteReader比DataSet而言,DataReader具有较快的访问能力,并且能够使用较少的服务器资源 。
9、DataReader对象提供了游标形式的读取方式,当从结果行中读取了一行 , 则游标会继续读取到下一行 。
10、通过read方法可以判断数据是否还有下一行 , 如果存在数据,则继续运行返回true,如果没有数据,则返回false 。
11、DataReader可以提高执行效率 , 基于序号的查询可以使用DataReader 。
12、使用ExecuteReader()操作数据库,通常情况下是使用ExecuteReader()进行数据查询操作,使用ExecuteReader()查询数据能够提升查询效率,而如果需要进行数据库事务处理的话,ExecuteReader()并不是一个理想的选择 。
13、2、使用ExecuteNonQuery(),ExecuteScalar()操作数据库,执行增删改操作的利器ExecuteNonQuery()通常情况下为数据库事务处理的首?。毙枰葱胁迦? ,删除,修改等操作时,首选ExecuteNonQuery(),ExecuteNonQuery()执行成功返回的是一受影响的行数 , 对于"Create Table"和"Drop Table"语句,返回值是0 。
14、而对于其他类型的语句,返回值是-1 , ExecuteNonQuery()操作数据时,可以不使用DataSet直接更改数据库中的数据 。
15、ExecuteScalar()方法也可以用来执行SQL语句 , 但是executescalar()执行SQL语句后返回值与ExecuteNonQuery()并不相同,executescalar()方法的返回值的数据类型是object 。
16、如果执行的SQL语句是查询语句,则返回结果是查询后的第一行第一列,如果执行的SQL语句不是一个查询语句 , 则会返回一个未实例化的对象,必须通过类型装换来显示 。
17、一般情况下,ExecuteNonQuery()操作后返回的是一个值,而executescalar()操作后则会返回一个对象,executescalar()经常使用当需要返回单一值时的情况 。
18、例如当插入一条数据信息时 , 需要马上知道刚才插入的值 , 则可以使用executescalar()方法 。
19、查到下面文章 。
20、关于ExecuteNonQuery() 方法以前对这个一直都没在意 , 基本上都没有用其返回值,查了一下MSDN,如下:teNonQuery 方法对连接执行 Transact-SQL 语句并返回受影响的行数 。
21、备注:可以使用ExecuteNonQuery 来执行目录操作(例如查询数据库的结构或创建诸如表等的数据库对象),或通过执行Update、Insert 或 Delete 语句,在不使用 DataSet 的情况下更改数据库中的数据 。
22、虽然ExecuteNonQuery 不返回任何行,但映射到参数的任何输出参数或返回值都会用数据进行填充 。
23、对于Update、Insert 和 Delete 语句 , 返回值为该命令所影响的行数 。
24、对于所有其他类型的语句,返回值为-1 。
25、如果发生回滚,返回值也为 -1执行Select子句,数据库并无变化,自然返回-1 。
26、同样适合ODBC、OLEDB等数据源,因为都实现teNonQuery方法 。
27、函数申明:[Visual Basic]Public Overridable Function ExecuteNonQuery() As IntegerImplements_teNonQuery实现:teNonQuery对于teNonQuery方法,针对 .NET Framework 数据提供程序的 Connection 对象执行 SQL语句 , 并返回受影响的行数 。
28、可以使用ExecuteNonQuery 来执行目录操作(例如查询数据库的结构或创建诸如表等的数据库对象) , 或通过执行Update、Insert 或 Delete 语句,在不使用 DataSet 的情况下更改数据库中的数据 。
29、虽然ExecuteNonQuery 不返回任何行,但映射到参数的任何输出参数或返回值都会用数据进行填充 。
30、对于其他所有类型的语句 , 返回值为 -1 。
本文到此分享完毕,希望对大家有所帮助 。