DbCommand.ExecuteScaler在执行的时候,有三种可能的返回值:

1、返回一个object对象,表示有结果,返回的是第一个结果集的首航首列。
2、返回一个DBNull对象,表示有结果,但第一个结果集的首航首列是NULL。
3、返回null,表示没有任何结果。

明白了这一点,很多时候代码可以简单些,比如说我们判断某条记录是否存在一般要这样写:

1SqlCommand command = new SqlCommand( "SELECT COUNT(ID) FROM Data WHERE ID = @ID", connection );
2//...
3if ( (int) command.ExecuteScaler() == 0 )

其实可以这样:

1SqlCommand command = new SqlCommand( "SELECT ID FROM Data WHERE ID = @ID", connection );
2//
3if ( command.ExecuteScaler() == null )

转载于:https://www.cnblogs.com/tengguo/archive/2011/12/26/2301764.html

ExecuteScaler的三种返回值。相关推荐

  1. ExecuteScaler的三种返回值

    DbCommand.ExecuteScaler在执行的时候,有三种可能的返回值: 1.返回一个object对象,表示有结果,返回的是第一个结果集的首航首列. 2.返回一个DBNull对象,表示有结果, ...

  2. 【参数】REMOTE_LOGIN_PASSWORDFILE参数三种取值及其行为特性分析

    在某些情况下可以使用REMOTE_LOGIN_PASSWORDFILE参数增强系统的安全性,所谓提高安全性就是禁止以SYSDBA或SYSOPER特权用户从客户端登陆到数据库系统中.这是一种牺牲管理便捷 ...

  3. 老丁带你学USB-解疑2:USB协议中的ACK、NAK、STALL三种返回包含义

    三种返回确认信息 ACK .NAK .STALL [ACK 包] ACK(确认) 表示 主机和设备已经收到数据,没有出现错误.设备必须在Setup 事务的交换包中返回ACK,设备也必须在OUT事务的交 ...

  4. JSF中的h:commandLink如何传递参数 三种取值比较

    声明本人刚学jsf三天 如有不足请指教.... 本人总结了三种取得参数的方法 这是jsf中的代码 <h:commandLink  action="#{}">       ...

  5. c语言 函数参数传递 值传递,c语言中函数参数的三种传递方式——值传递、指针传递、引用传递...

    函数参数有三种传递方式值传递.指针传递.引用传递. 1.值传递 将已经初始化的变量值(或常量)传递到函数中. 例如: int func(int value) { int ret = value++; ...

  6. WebAPI Action的几种返回值类型

    void 返回204状态码 HttpResponseMessage Convert directly to an HTTP response message. IHttpActionResult Ca ...

  7. Spring MVC 中的 controller层的方法的返回值类型

    Controller方法的返回值可以有以下几种: 1.返回ModelAndView 返回ModelAndView时最常见的一种返回结果.需要在方法结束的时候定义一个ModelAndView对象,并对M ...

  8. 不显示参数名_第51p,万能参数与返回值,Python中函数的返回值

    大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第51篇文章,第三阶段的课程:Python进阶知识:详细讲解Python中的函数(四)====>函数的参数与返回值(下篇). ...

  9. (转)C#进阶系列——WebApi 接口返回值不困惑:返回值类型详解

    原文链接:https://www.cnblogs.com/landeanfen/p/5501487.html 阅读目录 一.void无返回值 二.IHttpActionResult 1.Json(T ...

最新文章

  1. MyBatis接口的简单实现原理
  2. 详解Dart中如何通过注解生成代码
  3. Hibernate创建hqll时报错
  4. unity 3d shaderlab 开发实战详解_vue实战开发011:使用router-view嵌套路由详解
  5. java ioutils 写入文件_文件输入输出流工具: IOUtils使用总结
  6. linux查看文件写进程,Linux下如何知道文件被那个进程写
  7. MYSQL-统计查询
  8. 利用子查询解决复杂sql问题
  9. FastDFS分布文件系统Java客户端使用
  10. 中国吸尘器产业发展前瞻与市场投资盈利分析报告2021年版
  11. CSS3 3D旋转魔方
  12. 财经大数据可视化Vdc平台_为何要使用大数据可视化平台
  13. html可以播放所有本地视频播放器,VR播放器有哪些 能播放本地视频的VR播放器推荐...
  14. jsencrypt加密,并解决Message too long for RSA
  15. 图像放缩之双立方插值
  16. U盘安装Win Server 2008
  17. 5. 有 2*n 的一个长方形方格,用一个1*2 的骨牌铺满方格
  18. 科技爱好者周刊(第 106 期):数字游民
  19. 数据分析实战一:教育课程案例线上平台数据分析
  20. python视频教程全集-Python视频教程全集带你入门

热门文章

  1. Spring Ioc源码分析 之 Bean的加载(7):初始化
  2. Yolov4 cfg参数解读
  3. Deep Learning-论文翻译以及笔记
  4. 怎么让热图显示基因名_R 生信数据可视化 01 | 聚类热图
  5. 如何通过Bit-Z的场外交易购买BZ?(新手图文攻略)
  6. SeqGAN——对抗思想与增强学习的碰撞
  7. TensorFlow for Hackers (Part VI) - Human Activity Recognition using LSTMs on Android
  8. AsyncHttpClient 源码分析
  9. Linux内存初始化(汇编部分)
  10. 【区块链基础知识系列】 第9课 一文诠释什么是DAG