C#中ExecuteNonQuery()返回值注意点分析

作者:shichen2014 时间:2023-04-05 03:40:14 

本文实例讲述了C#中ExecuteNonQuery()返回值注意点。对于C#数据库程序设计有一定的借鉴价值。分享给大家供大家参考之用。具体分析如下:

首先,在查询某个表中是否有数据的时候,我们通常用ExecuteNonQuery(),并通过判断值是否大于0来判断数据的存在与否。结果与我所设想的很不一致,调试时才发现,其执行后返回的结果是-1,对此我很是不理解,回头查了下资料,如下显示:

SqlCommand.ExecuteNonQuery 方法对连接执行 Transact-SQL 语句并返回受影响的行数。

备注:可以使用 ExecuteNonQuery 来执行目录操作(例如查询数据库的结构或创建诸如表等的数据库对象),或通过执行 UPDATE、INSERT 或 DELETE 语句,在不使用 DataSet 的情况下更改数据库中的数据。

虽然 ExecuteNonQuery 不返回任何行,但映射到参数的任何输出参数或返回值都会用数据进行填充。对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。对于所有其他类型的语句,返回值为 -1。如果发生回滚,返回值也为 -1

看完后才明白,原来select语句不适合ExecuteNonQuery()方法,原来是这样,方法用错了!现在特意把它记录下来,希望朋友不要犯类似的错误!


public int ExecuteNonQuery();

返回值

受影响的行数。

实现

IDbCommand.ExecuteNonQuery

备注:

你可以使用 ExecuteNonQuery 来执行目录操作(例如查询数据库的结构或创建诸如表等的数据库对象),或通过执行 UPDATE、INSERT 或 DELETE 语句,在不使用 DataSet 的情况下更改数据库中的数据。

虽然 ExecuteNonQuery 不返回任何行,但映射到参数的任何输出参数或返回值都会用数据进行填充。

对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。对于其他所有类型的语句,返回值为 -1。


public void CreateMySqlCommand(string myExecuteQuery, SqlConnection myConnection)
{
  SqlCommand myCommand = new SqlCommand(myExecuteQuery, myConnection);
  myCommand.Connection.Open();
  myCommand.ExecuteNonQuery();
  myConnection.Close();
}

相信本文所述对大家的C#程序设计有一定的借鉴价值。

标签:C#,ExecuteNonQuery
0
投稿

猜你喜欢

  • Java实现排球比赛计分系统

    2021-07-11 09:11:14
  • java语言注解基础概念详解

    2023-04-13 06:55:55
  • 新手入门Jvm--jvm概览

    2023-11-09 15:42:31
  • 浅谈Java中向上造型向下造型和接口回调中的问题

    2023-11-09 13:51:46
  • Android使用自定义View实现横行时间轴效果

    2022-12-25 11:24:42
  • Java进阶必备之多线程编程

    2023-12-17 04:24:51
  • 关于synchronized有趣的同步问题

    2021-11-03 05:46:55
  • java数据结构之希尔排序

    2023-11-08 18:16:18
  • C#实现简易计算器

    2021-12-10 03:33:26
  • 深入C#中get与set的详解

    2022-05-29 21:04:10
  • Android 实现签到足迹功能

    2023-06-21 15:16:24
  • 详解C语言内核字符串拷贝与比较

    2023-11-02 15:22:30
  • Mybatis中Collection集合标签的使用详解

    2023-07-10 05:09:35
  • Spring spel表达式使用方法示例

    2023-08-25 00:43:32
  • 自己实现Android View布局流程

    2022-07-10 22:20:26
  • springboot应用访问zookeeper的流程

    2021-11-28 00:34:56
  • Android实现基于滑动的SQLite数据分页加载技术(附demo源码下载)

    2022-04-21 03:42:02
  • C#实现Zip压缩目录中所有文件的方法

    2021-05-29 15:41:47
  • C# 语音功能的实现方法

    2023-03-15 13:40:51
  • Android定时器和倒计时实现淘宝秒杀功能

    2023-01-18 02:17:04
  • asp之家 软件编程 m.aspxhome.com