ExecuteNonQuery()返回值

ExecuteNonQuery()返回值

本文导读:虽然 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());

ExecuteNonQuery()返回值

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114048.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 周末、ConcurrentHashMap、一个Bug

    做一个积极的人编码、改bug、提升自己我有一个乐园,面向编程,春暖花开!真正的努力,从来都不是埋头苦干,还要时不时的偷偷懒周末周末了,有一段时间没用周末加班了。今天下午在家了加了会班,写了一会代码,因为下周要请一天假,而我手头的工作还有一些没有搞定,只能抽点时间赶赶进度。我所在的城市今天下着小雨,天气变得冷了起来。坐在电脑前,开着暖风机,不至于让敲代码的冻着(…

    2022年2月28日
    46
  • [Python图像处理] 一.图像处理基础知识及OpenCV入门函数[通俗易懂]

    [Python图像处理] 一.图像处理基础知识及OpenCV入门函数[通俗易懂]该系列文章是讲解PythonOpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割等,后期结合深度学习研究图像识别、图像分类应用。希望文章对您有所帮助,如果有不足之处,还请海涵~同时推荐作者的C++图像系列知识:[数字图像处理]一.MFC详解显示BMP格式图片[数字图像处理]二.MFC单文档分割窗…

    2022年10月15日
    2
  • 服务器重启项目引发的nginx 502 Bad Gateway解决

    服务器重启项目引发的nginx 502 Bad Gateway解决一、问题起因:ssh登录远程服务器重启项目(第一次),未等tomcat启动完成,直接访问项目的对应后台管理系统网站,导致网页一直加载不出来,心急又去重复启动项目(第二次),再次访问网页报错:502BadGatewaynginx。二、解决思路:…这里饶了很多弯路。前面几步是没有解决的错误思路,想要看最终解决,直接跳过,去查看最后的总结…1.首先想到去查看nginx日志,…

    2022年6月24日
    96
  • Hystrix:服务熔断

    Hystrix:服务熔断文章目录服务雪崩服务雪崩​多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其他的微服务,这就是所谓的“扇出”,如果扇出的链路上某个微服务的调用响应时间过长,或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,所谓的“雪崩效应”。​对于高流量的应用来说,单一的后端依赖可能会导致所有服务器上的所有资源都在几十秒内饱和。比失败更糟糕的是,这些应用程序还可能导致服务之间的延迟增加,备份队列,线程和其他系统资源紧张,导致整个系统发生更多的级联故障,

    2022年10月21日
    2
  • 电源设计LDO和DCDC[通俗易懂]

    电源设计LDO和DCDC[通俗易懂]欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗Ctrl+B斜体Ctrl+I引用Ctrl

    2022年5月29日
    38
  • 谷歌提示密码外泄_你不要把手机丢了泄露

    谷歌提示密码外泄_你不要把手机丢了泄露前不久,Google正式对外推出了基于Gmail的Google Buzz,以此重新进入了微博客和社交网络服务。Google Buzz可以认为是一个类似微博客的状态更新工具,用户可以在里面分享消息、图片

    2022年10月15日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号