编制ADO.NET参数调用介绍

开发 后端
对于ADO.NET参数的说明,命令的编辑行,对于ADO.NET参数的调用是没有必要的,但是对于一些特殊的数据源:例如:ADO.NET参数。

Command.Prepare方法能够提高数据源中重复的参数化命令的性能。Prepare指示数据源为多个调用优化特定的命令。为了加大工作上的效率,必须确定下什么是ADO.NET参数调用。

明确地指定大纲和元数据 

ADO.NET参数中当用户没有指定元数据信息时,有很多对象推导这些信息。例如: 

DataAdapter.Fill方法,如果不存在的话,它在记录集中建立表和列。  CommandBuilder,它为单个的SELECT语句生成数据适配器命令属性。  CommandBuilder.DeriveParameters,它组合Command对象的Parameters集合。 

但是每次使用这些特性时都会造成效率降低。我们推荐主要在设计时和ad-hoc应用程序中使用这些特性。在可能的情况下,ADO.NET参数明确地指定大纲和元数据,包括在数据集中定义表和列,定义数据适配器的Command属性,定义Command的Parameter信息。 

ExecuteScalar和ExecuteNonQuery 

如果你希望返回单个值,例如Count(*)、 Sum(Price)、或者Avg(Quantity),你可以使用Command.ExecuteScalar。ExecuteScalar返回第一行第一列的值,返回结果集是数量值。ExecuteScalar通过一步完成不仅简化了代码而且提高了性能,而这些工作在使用DataReader时将需要两个处理步骤。 

当使用不返回行的SQL语句时,类似修改数据(例如插入、更新或者删除)或者只返回输出参数或值,使用ExecuteNonQuery。ADO.NET参数通过建立一个空DataReader删除了任何必要的处理。  #t#

ADO.NET参数空值的检测 

如果数据库的某张表的一个列允许空值,你不能使用某个与空值相等的参数来测试它。作为代替,需要编写一个WHERE子句来检测是否列和参数都是空值。下面的SQL语句返回LastName列与赋予@LastName的值相同的行,或者LastName 列和ADO.NET参数都为空的行: 

  1. SELECT * FROM Customers   
  2. WHERE ((LastName = @LastName) OR (LastName IS NULL AND @LastName IS NULL))  
责任编辑:chenqingxiang 来源: 计世网
相关推荐

2009-12-22 09:36:29

ADO.NET代码

2009-12-22 14:05:33

ADO.NET代码

2009-11-12 13:26:56

使用ADO.NET参数

2009-09-09 10:23:59

ADO.NET连接

2009-11-11 10:27:22

ADO.NET入门

2009-12-22 15:20:25

ADO.NET功能

2009-12-22 11:17:58

ADO.NET产品

2009-12-25 14:23:35

ADO.NET设置

2009-12-30 16:05:20

ADO.NET实例

2009-12-31 10:13:24

ADO.NET参数

2009-12-24 09:34:47

调用ADO.NET

2010-01-04 10:48:30

ADO.NET特色

2009-12-30 10:32:04

扩展ADO.NET

2009-12-31 16:09:22

ADO与ADO.NET

2009-12-21 10:37:05

Ado.Net 实例

2009-12-21 15:58:19

ADO.NET集合

2009-12-21 11:29:13

Ado.Net代码

2009-12-23 16:43:34

ADO.NET模型

2009-12-23 11:10:38

ADO.NET状态

2009-12-28 17:09:34

ADO.NET实例
点赞
收藏

51CTO技术栈公众号