我们要不断地进行数据库的读写,那么ExecuteNonQuery(),ExecuteReader()与ExecuteScalar()就是我们在对数据库进行操作时要用到的,下面我来依次认识一下:
    ExecuteNonQuery():这个东东可以让我们在更新数据库时不使用 DataSet 而使用 ExecuteNonQuery 更改数据库中的数据。通过执行 UPDATE、INSERT 或 DELETE SQL语句就可以达到更改数据库中的数据目的。即使 ExecuteNonQuery 不返回任何行,映射到参数的输出参数或返回值仍然使用数据填充。但对于 UPDATE、INSERT 和 DELETE SQL语句,返回的值就是受ExecuteNonQuery()命令影响的行数。对其它类型的语句以及回退来说,返回的值都是 -1。
   ExecuteReader():我们通常在asp中用Recordset对象来从数据库中读出数据,并且用循环语句来一个一个的读出数据,但在我们的ADO.NET中,我们就是用DataReader 对象的ExecuteReader()方法来进行数据的列出,并且我们用这个ExecuteReader()方法来显示数据是最快的一种方法,因为当我们在用ExecuteReader()方法中的DataReader 对象来进行数据的在网站建设中显示时,他只可以一条一条向前读,不能返回,也就是像ASP中的ADO方法中的Recordset 对象的Movenext一样,他没有move -1这样的返回方法。
    ExecuteScalar():这种CMD相当于我们在ADO中用SQL语句中使用一些计算函数的功能一样,在这里我们只是返回所有影响的行数的第一行第一列数据,这样也就是相当于专业为我们的如:select count(*) from database的功能一样,我们可以用

string sql="select * from  database" 
SqlCommand cmd=SqlCommand(sql,conn) 
int i=(int)cmd.ExecuteScalar() 

这样我们的局部变更i的值就是与上面我的功能一样.
    最后值得一说的是:这是出自我平时所用的时候的一些认识:那就是如果我们在进行数据操作时,如果没有数据可操作,那么我们只能使用ExecuteReader()这个CMD,而executeNoeQuery()与Executescalar()如果在没有数据的时候使用时,就会出错“对像没有实例化”的错误。所以我们在判断是否有数据时,只可以用ExecuteReader()中的REad()方法来检测。

ADO.NET中SqlCommand对数据库操作的更多相关文章

  1. EF5.0中的跨数据库操作

    以前在用MVC + EF 的项目中,都是一个数据库,一个DbContext,因此一直没有考虑过在MVC+EF的环境下对于多个数据库的操作问题.等到要使用时,才发现这个问题也不小(关键是有个坑).直接说 ...

  2. 使用ado.net打造通用的数据库操作类

    最近在项目中使用中碰到了这样一种情况,查询的数据是从Oracle中获取的,但是记录下来的数据是存在Sql Server中(企业Oracle数据库管理太严,没办法操作).而且我在之前的工作中也碰到过使用 ...

  3. 在安卓开发中使用SQLite数据库操作实例

    前段时间写了个安卓平台下SQLite数据库操作的实例 ,一直没得时间总结 ,今天把它弄出来了. 在Android 运行时环境包含了完整的 SQLite. 首先介绍一下SQLite这个数据库: SQLi ...

  4. 3、PHP中常用的数据库操作函数解析

    mysql_connect  连接数据库 mysql_select_db 选择需要操作的数据库 mysql_query 执行数据库操作语句 mysql_fetch_array 以数组的形式返回每行查询 ...

  5. SpringBoot中使用spring-data-jpa 数据库操作(上)

    Java客户端使用Spring-Data-Jpa这个组件. Spring-Data-Jpa就是Spring对Hibernate的一个整合. 选择create在运行的时候它会自动帮我们创建一个表. sp ...

  6. ADO.Net(三)——数据库操作类

    操作数据类 避免代码重用.造对象太多.不能分工开发 利用面向对象的方法,把数据访问的方式优化一下,利用封装类 一般封装成三个类: 1.数据连接类 提供数据连接对象 需要引用命名空间: using Sy ...

  7. python中的MySQL数据库操作 连接 插入 查询 更新 操作

    MySQL数据库 就数据库而言,连接之后就要对其操作.但是,目前那个名字叫做qiwsirtest的数据仅仅是空架子,没有什么可操作的,要操作它,就必须在里面建立“表”,什么是数据库的表呢?下面摘抄自维 ...

  8. python3中的mysql数据库操作

    软硬件环境 OS X EI Capitan Python 3.5.1 mysql 5.6 前言 在开发中经常涉及到数据库的使用,而python对于数据库也有多种解决方法.本文以python3中的mys ...

  9. 【ADO.NET】 使用通用数据库操作类Database (SQL Server)

    一.Web.config配置 <connectionStrings> <add name="constr_name" connectionString=" ...

随机推荐

  1. CPU工作方式、多核心、超线程技术详解[转贴]

    CPU是一台电脑的灵魂,决定电脑整体性能.现在的主流CPU都是多核的,有的运用了多线程技术(Hyper-threading,简称HT).多核可能还容易理解些,相信不少玩家都能说出个所以然.但超线程是个 ...

  2. 执行manage.py syncdb提示Unknown command: 'syncdb'

    1. 实验环境 ubuntu14.4 + django1.9.7 2. 问题描述 在配置完数据库mysite/settings.py后,通常需要运行 python manage.py syncdb 为 ...

  3. C# 使用NPOI 导出Excel

    NPOI可以在没有安装Office的情况下对Word或Excel文档进行读写操作 下面介绍下NPOI操作Excel的方法 首先我们需要下载NPOI的程序集 下载地址 http://npoi.codep ...

  4. HDU1068 二分匹配 独立集

    前边和后边性别不同!!!不然NP了 Girls and Boys Problem Description the second year of the university somebody star ...

  5. ServletListener对象学习笔记

    JavaWeb学习笔记--监听器详解 知识概要: 1.监听器下例子举例 2.Servlet规范中的监听器 3. 4. 1. 监听器下例子举例说明: /* Frame:事件源.发生事件的对象 Windo ...

  6. Jquery qTip2实现多种提示效果,支持ajax,以及多种样式

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. MSSQL 自定义函数详解

    自定义函数分为:标量值函数或表值函数 如果 RETURNS 子句指定一种标量数据类型,则函数为标量值函数.可以使用多条 Transact-SQL 语句定义标量值函数. 如果 RETURNS 子句指定 ...

  8. 吾八哥学Python(二):Python代码编辑器的选用

    Python开发环境配置好了,但发现自带的代码编辑器貌似用着有点不大习惯啊,所以咱们就找一个"好用的"代码编辑器吧,网上搜了一下资料,Python常用的编辑器有如下一些: 1. S ...

  9. Spring装配Bean之Java代码装配bean

    尽管通过组件扫描和自动装配实现Spring的自动化配置很方便也推荐,但是有时候自动配置的方式实现不了,就需要明确显示的配置Spring.比如说,想要将第三方库中的组件装配到自己的应用中,这样的情况下, ...

  10. Ubuntu安装Flash视频插件

    http://www.linuxidc.com/Linux/2014-05/101095.htm