首页
|
网址导航
|
星座运势
|
天气预报
|
便民查询
|
万年历
|
手机查询
|
电子地图
|
交流论坛
影视预告
音乐咖啡
生活百科
CSS编程
JS编程
PHP编程
MYSQL编程
Linux服务器架设
Linux编程开发
热门搜索:
有限公司
感人故事
上海电视节
警匪
有情人
更多>>
热烈祝贺台州朗动科技的站长论坛隆重上线!(2012-05-28)
热烈庆祝伟大的祖国60周年生日 点击进来我们一起为她祝福吧(2009-09-26)
站长论坛禁止发布广告,一经发现立即删除。谢谢各位合作!.
(2009-08-08)
热烈祝贺台州网址导航全面升级,全新版本上线!希望各位一如既往地支持台州网址导航的发展.
(2009-03-28)
台州站长论坛恭祝各位新年快乐,牛年行大运!(2009-01-24)
台州Link正式更名为台州网址导航,专业做以台州网址为主的网址导航!(2008-05-23)
热烈祝贺台州Link资讯改名为中国站长资讯!希望在以后日子里得到大家的大力支持和帮助!(2008-04-10)
热烈祝贺台州Link论坛改名为台州站长论坛!希望大家继续支持和鼓励!(2008-04-10)
台州站长论坛原[社会琐碎]版块更名为[生活百科]版块!(2007-09-05)
特此通知:新台州站长论坛的数据信息全部升级成功!">
特此通知:新台州站长论坛的数据信息全部升级成功!
(2007-09-01)
台州站长论坛对未通过验证的会员进行合理的清除,请您谅解(2007-08-30)
台州网址导航|上网导航诚邀世界各地的网站友情链接和友谊联盟,共同引领网站导航、前进!(2007-08-30)
禁止发广告之类的帖,已发现立即删除!(2007-08-30)
希望各位上传与下载有用资源和最新信息(2007-08-30)
热烈祝贺台州站长论坛全面升级成功,全新上线!(2007-08-30)
网址推荐:
继续教育网
齐鲁医药学院
impk战网论坛
正则表达式检测
鱼珠木材网
雄狮旅游网
黑龙江政府机构
您当前的位置:
首页
»
ASP/ASP.NET编程
»
在ADO.NET中用参数化查询缩短开发时间
在ADO.NET中用参数化查询缩短开发时间
论坛链接
在ADO.NET中用参数化查询缩短开发时间
发布时间:2007-09-21 13:28:40 浏览数:6600 发布者:abcdef133 设置字体【
大
中
小
】
一段时间以来,存储过程一直是企业应用程序开发数据访问的首选方法。存储过程的安全性更高、封装能力更强,并能执行复杂的逻辑,且不会打乱应用程序代码。但是,它也存在一些缺点:
• 开发者倾向于在存储过程中加入商业逻辑。
• 更改过程时必须改变开发环境。
• 查找过程所需的参数比较费时。
• 许多时候,存储过程提供的功能超出所需。
嵌入到应用程序代码中的内联SQL代码是数据访问的另一个常见方法。虽然企业在开发过程中很少用到这种方法,但许多小型项目应用这种类型的数据访问方法。应用内联SQL可以实现快速开发,但它并不具有存储过程的安全与封装优势。
参数化查询介于存储过程与内联SQL之间。它为数据访问程序开发提供一种安全、封装性的方法,并允许你利用内联SQL的快速开发优势。
如何应用参数化查询
应用参数化查询并不那么容易。例如,下面的代码(图A)说明如何编写参数化查询:
图A 参数化查询
在这个例子中,我们选择所有具有指定CustomerID的用户。注意,这个过程与在一个存储过程中编写Select语句十分相似。其不同在于你将它直接嵌入你的应用程序代码或源文件中。(我们稍后再讨论源文件。)
为使ADO.NET能够移植@CustomerID参数,你只需简单建立一个正常的SqlParameter并将它加入到当前命令的SqlCommand.Parameters集中。然后你就可在希望的连接上执行命令,ADO.NET则建立在SQL服务器上执行的命令。下面的代码片断(图B)是一个说明如何建立并执行整个命令的例子:
图B 整个命令
如你所见,建立并执行参数化查询是一个非常简单的过程。在数据访问库――如微软的数据应用程序块――的辅助下,这个过程可以进一步简化。
参数化查询的缺点
说到编程,每种方法都有其优缺点,决定应用参数化查询也不例外。它的一个主要的缺点在于:由于查询被嵌入到应用程序代码中,可能在几个地方都以同样的查询结束。我可以建立一个存储查询的中心位置来消除这种重复。这个位置可以是一个XML文件、在应用程序中的一个带公共静态字符串成员的类、一个自定义的.NET属性、或者是一个空文件。应用这些技巧,你就可以在执行前查找到所需的查询。
应用参数化查询的另一个潜在问题是许多公司并不允许在其应用程序(以及数据层)中使用内联SQL。我认为这是因为人们在谈论将SQL插入应用程序代码时,他们指的是特别(内联)代码,而不是参数化查询。这样的规则也使DBA对在SQL服务器上执行代码有了更大的控制权,这对大型数据库十分有利。
何时应使用参数化查询?
在任何需要在SQL服务器上执行操作的情况下,你都可以应用参数化查询。但是,参数化查询主要应用于需要执行的创建、阅读、更新与删除(CRUD)操作。如果你在执行需要较长时间或由不同SQL语句构成的复杂操作,最好将此操作保留在SQL服务器中。
虽然参数化查询在许多情况下应用起来十分方便,但由于它可能会打乱你的应用程序代码,所以我并不推荐你在复杂的数据操作逻辑中应用它。当你的应用程序代码被打乱时,你必然会遇到严重的代码维护问题。
在编写数据访问程序的许多情况下,与特别查询与存储过程相比,参数化进程不失为一个较好的选择。参数化查询介于其他两种选择之间,如果应用得当,能够显著提高开发效率。
上一篇:
Vista安装.NET 2.0开发环境注意事
下一篇:
ASP.NET2.0轻松搞定统计图表
娱乐休闲专区
A 影视预告
B 音乐咖啡
C 英语阶梯
D 生活百科
网页编程专区
E AMPZ
F HTML
G CSS
H JS
I ASP
J PHP
K JSP
L MySQL
M AJAX
Linux技术区
N 系统管理
O 服务器架设
P 网络/硬件
Q 编程序开发
R 内核/嵌入
管理中心专区
S 发布网址
T 版主议事
U 事务处理