ExecuteNonQuery()>0

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

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

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

扩展资料:

c#数据执行方法:

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

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

read方法用于确定下一行数据是否存在。如果有数据,它将继续运行并返回true。如果没有数据,则返回false。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()方法。

原文地址:https://www.cnblogs.com/wfy680/p/15183323.html