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

ExecuteNonQuery()方法主要用户更新数据,通常它使用Update,Insert,Delete语句来操作数据库

一、ExecuteNonQuery方法返回值

1、对于 Update,Insert,Delete  语句 执行成功是返回值为该命令所影响的行数,如果影响的行数为0时返回的值为0。

2、对于所有其他类型的语句,返回值为 -1。

3、如果发生回滚,返回值也为 -1 。

4、我们平时对于更新操作通过判断返回值是否大于0没有问题而且比较好,但是对于其他的操作如对数据库结构的操作,如果操作成功时返回的却是-1,这种情况跟我们平时的思维方式有点差距所以应该好好的注意了,例如对数据库共添加一个数据表的Create操作,当创建数据表成功时返回-1,如果操作失败的话(如数据表已经存在)往往会发生异常,所以执行这种操作时最好用try--catch--语句来容错。

二、ASP.NET中ExecuteNonQuery的使用示例

C# 代码    复制
public void CreateMySqlCommand(string myExecuteQuery, SqlConnection myConnection)
{  SqlCommand myCommand = new SqlCommand(myExecuteQuery, myConnection);  myCommand.Connection.Open();  myCommand.ExecuteNonQuery();  myConnection.Close();  }

三、用ExecuteNonQuery()方法执行create操作

C# 代码    复制
 SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=PSDB;Integrated Security=SSPI");
string str = "CREATE TABLE aaa ( " +
"[ID] [int] IDENTITY (1, 1) NOT NULL , " +
"[BasicID] [int] NULL ," +
"[AdoptedName] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ," +
"[AdoptedSex] [char] (2) COLLATE Chinese_PRC_CI_AS NULL ," +
"[AdoptBirthday] [smalldatetime] NULL ," +
"[AdoptedType] [varchar] (100) COLLATE Chinese_PRC_CI_AS NULL ," +
"[ApprTime] [smalldatetime] NULL ," +
"[Remark] [varchar] (500) COLLATE Chinese_PRC_CI_AS NULL " +
") ON [PRIMARY]   ";     SqlCommand comm = new SqlCommand(str, conn);
int i = 10;
try
{conn.Open();i = comm.ExecuteNonQuery();conn.Close();}
catch (Exception ex)
{Response.Write(ex.Message);}Response.Write(i.ToString());

如果执行成功的话 返回的值为-1,如果数据表已经存在的话返回异常:数据库中已存在名为 'aaa' 的对象。

ExecuteNonQuery()返回值相关推荐

  1. ExecuteNonQuery() 返回值

    ADO.NET 数据命令使您能够直接对数据库或其他数据源执行命令,而不需要数据集或数据适配器.有关更多信息,请参见 Visual Studio 中的 DataCommand 对象介绍. 1. 可针对数 ...

  2. 注意 ExecuteNonQuery() 返回值

    注意 ExecuteNonQuery() 返回值 ExecuteNonQuery()方法主要用户更新数据,通常它使用Update,Insert,Delete语句来操作数据库,其方法返回值意义:对于 U ...

  3. c# mysql executenonquery_C#中ExecuteNonQuery()返回值注意点分析

    本文实例讲述了C#中ExecuteNonQuery()返回值注意点.对于C#数据库程序设计有一定的借鉴价值.分享给大家供大家参考之用.具体分析如下: 首先,在查询某个表中是否有数据的时候,我们通常用E ...

  4. ExecuteNonQuery()返回值注意点

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

  5. ExecuteNonQuery返回值问题

    大家都知道执行ExecuteNonQuery插入记录的时候会返回受影响的行数. 在一次操作通过该返回值判断Insert是否成功的时候发现返回值是-1,查看数据库记录已经插入. 再查看程序发现是通过存储 ...

  6. 注意 ExecuteNonQuery() 返回值 问题

    前些日子作一些数据项目的时候 在ADO.NET 中处理 ExecuteNonQuery()方法时,总是通过判断其返回值是否大于0来判断操作时候成功 .但是实际上并不是这样的,好在处理的数据操作多时 修 ...

  7. ExecuteNonQuery()返回值问题

    1.使用update,insert,delete等对数据库中表行进行操作的时候,返回值为所操作的行数(若该条语句未作用在任何一行,则返回0) 2.使用alter添加表空间数据文件,create创建表, ...

  8. SqlCommand.ExecuteNonQuery()的返回值问题

    用法: sqlcommand.ExecuteNonQuery() 执行select之后,总是返回-1的 sqlcommand.ExecuteNonQuery()返回的是受影响的行数,只对update, ...

  9. 关于ExecuteNonQuery执行存储过程的返回值 、、实例讲解存储过程的返回值与传出参数、、、C#获取存储过程的 Return返回值和Output输出参数值...

    关于ExecuteNonQuery执行存储过程的返回值 用到过ExecuteNonQuery()函数的朋友们在开发的时候肯定这么用过. if(cmd.ExecuteNonQuery("xxx ...

最新文章

  1. 精简的shell计算器
  2. 使用cocoapods
  3. 1058 A+B in Hogwarts (20 分)_7行代码AC
  4. ping命令整个过程详解
  5. note05-计算机网络
  6. [css] 如何使用CSS绘制一个汉堡式菜单
  7. c语言函数简单注释模板,C语言中的Doxygen注释模板
  8. promise封装读取文件
  9. 计算机二级真题期刊论文模板,最新一般期刊论文格式
  10. dbfs和dbm的换算_「清晰易懂」dBFS、dBm、dBV、dBW、0dB、-3dB概念解析
  11. 2018 Google 开发者大会.md
  12. 用python做动画的代码_Python应用 | 三行代码实现GIF动画
  13. 从零开始学USB(二十四、USB接口HID类设备(六)_物理描述符)
  14. Vue.js笔记(一)
  15. Android 2.3应用开发实战
  16. python类和封装之面向对象反恐精英实战
  17. 常见状态码(200、403、404、500)
  18. Saliency as Evidence: Event Detection with Trigger Saliency Attribution 论文解读
  19. win10系统无法正常自动启动服务
  20. scrapy实现链家二手房的数据获取并进行持久化存储

热门文章

  1. Python request如何做接口测试
  2. 预测问题-机器学习思考
  3. 绿色木霉的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  4. 煤气炉的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  5. QTP破解方法,插件延长使用时间方法,及mgn-mqt82.exe下载
  6. deepsort : 牧游 网友提供的思路,用mgn替换reid 的特征检测部分
  7. Altium Designer导出Gerber文件的一般步骤
  8. python学习之recognition的多人人脸识别
  9. Linux 设置开机自启动程序
  10. 阿里云域名实名认证操作图文详情 新人必看