Command.Prepare方法能够提高数据源中重复的参数化命令的性能。Prepare指示数据源为多个调用优化特定的命令。为了加大工作上的效率,必须确定下什么是ADO.NET参数调用。
明山网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联建站2013年开创至今到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站。
明确地指定大纲和元数据
在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参数都为空的行:
- SELECT * FROM Customers
- WHERE ((LastName = @LastName) OR (LastName IS NULL AND @LastName IS NULL))
文章标题:编制ADO.NET参数调用介绍
分享路径:http://www.shufengxianlan.com/qtweb/news21/90621.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联