ADO.NET最佳实践(中)[7]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 spidertan 的 blog

            command.prepare方法优化你的参数化执行命令。prepare结构为多重调用最优化指定命令。要使用prepare,你首先得理解你的数据库是怎样相应prepare调用。sql server 2000中,command已经被隐式优化和prepare不是必须的;在sql server7.0或其它数据库中使用prepare是有效的。

        iv.明确地指定计划和元数据

            ado.net中的很多对象都要推断元数据信息,只要用户不指定它,举例如下:

            如果在dataset中不存在,dataadapter.fill方法就会创建表和列信息;

            commandbuilder为独立表的select命令生成dataadpater命令参数;

            commandbuilder.deriveparameters组装一个命令对象的参数信息;

        如果什么时候都使用上面讲的方法,可能会降低执行性能。推荐在设计阶段和广告段应用程序中使用。可能的情况下,一般都要指定计划和元数据。这些包括指定dataset的表和列、指定dataadapter的command属性和指定command的参数信息。

        v.executescalar和executenonquery

            如果你想只返回一个简单值,比如count(*)、sum(price)或者avg(quantity),你可以使用executescalar,它帮助你一步到位得到你想要的值,从而避免使用datareader的两步计算(executereader+getvalue);

            当你不想返回行信息,比如修改数据(insert、update、delete)或者仅需要输出参数或者返回值,使用executenonquery,它去掉不必要的处理创建一个空的datareader。

        vi.空值检查

            如果在你的表中某列允许空值,你可以使用where语句进行空值检查,下面举例说明:

本文关键:数据库设计
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top