论坛登陆 注册 文章专区 笑话频道 影视频道 投稿文章 旧版浏览
首页 | 页界资讯 | 网络应用 | 软件应用 | 组网技术 | 网络原理 | 聊天通讯 | 网管知识 | 帮助
笑话 | 操作系统 | 注 册 表 | 编程开发 | 数 据 库 | 媒体动画 | 网页设计 | 图形图象 | 地图
论坛 | 网络安全 | 安全防范 | 服 务 器 | 硬件学堂 | 路由技术 | 搜索研究 | 站长经验 | 投稿
影院 | 教育频道 | 特色专题 | 精文荟萃 | 注 册 码 | 论坛社区 | 网站地图 | 广告服务 | 旧版
设为首页 加入收藏
当前位置:首页>>文章>>编程开发>>net专区>>正文

在ASP.NET中调用存储过程方法新解

www.xker.com 作者:朱江艳 来源:计算机与信息技术 加入日期:2005-11-14 9:34:07

【问题提问、论坛交流】 摘要 存储过程的调用在B/S系统中用的很多传统的调用方法不仅速度慢,而且代码会随着存储过程的增多不断膨胀,难以维护新的方法在一定程度上解决了这些问题

  关键词 ASP.NET;存储过程
 
  在使用.NET的过程中,数据库访问是一个很重要的部分,特别是在B/S系统的构建过程中,数据库操作几乎成为了一个必不可少的操作调用存储过程实现数据库操作使很多程序员使用的方法,而且大多数的程序员都是能使用存储过程就使用存储过程,很少直接使用SQL语句,所以存储过程是很有用而且很重要的

  存储过程简介

  简单的说,存储过程是由一些SQL语句和控制语句组成的被封装起来的过程,它驻留在数据库中,可以被客户应用程序调用,也可以从另一个过程或触发器调用它的参数可以被传递和返回与应用程序中的函数过程类似,存储过程可以通过名字来调用,而且它们同样有输入参数和输出参数

  根据返回值类型的不同,我们可以将存储过程分为三类:返回记录集的存储过程, 返回数值的存储过程(也可以称为标量存储过程),以及行为存储过程顾名思义,返回记录集的存储过程的执行结果是一个记录集,典型的例子是从数据库中检索出符合某一个或几个条件的记录;返回数值的存储过程执行完以后返回一个值,例如在数据库中执行一个有返回值的函数或命令;最后,行为存储过程仅仅是用来实现数据库的某个功能,而没有返回值,例如在数据库中的更新和删除操作

  使用存储过程的好处

  相对于直接使用SQL语句,在应用程序中直接调用存储过程有以下好处:

  (1)减少网络通信量调用一个行数不多的存储过程与直接调用SQL语句的网络通信量可能不会有很大的差别,可是如果存储过程包含上百行SQL语句,那么其性能绝对比一条一条的调用SQL语句要高得多

  (2)执行速度更快有两个原因:首先,在存储过程创建的时候,数据库已经对其进行了一次解析和优化其次,存储过程一旦执行,在内存中就会保留一份这个存储过程,这样下次再执行同样的存储过程时,可以从内存中直接调用

  (3)更强的适应性:由于存储过程对数据库的访问是通过存储过程来进行的,因此数据库开发人员可以在不改动存储过程接口的情况下对数据库进行任何改动,而这些改动不会对应用程序造成影响

  (4) 布式工作:应用程序和数据库的编码工作可以分别独立进行,而不会相互压制

  由以上的分析可以看到,在应用程序中使用存储过程是很有必要的

  两种不同的存储过程调用方法

  为了突出新方法的优点,首先介绍一下在.NET中调用存储过程的“官方”方法另外,本文的所有示例程序均工作于SqlServer数据库上,其它情况类似,以后不再一一说明本文所有例子均采用C#语言

  要在应用程序中访问数据库,一般性的步骤是:首先声明一个数据库连接SqlConnection,然后声明一个数据库命令SqlCommand,用来执行SQL语句和存储过程有了这两个对象后,就可以根据自己的需要采用不同的执行方式达到目的需要补充的是,不要忘记在页面上添加如下的引用语句:using System.Data.SqlClient

  就执行存储过程来说,如果执行的是第一类存储过程,那么就要用一个DataAdapter将结果填充到一个DataSet中,然后就可以使用数据网格控件将结果呈现在页面上了;如果执行的是第二和第三种存储过程,则不需要此过程,只需要根据特定的返回判定操作是否成功完成即可

  (1)执行一个没有参数的存储过程的代码如下:

SqlConnection conn=new SqlConnection(“connectionString”);
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = new SqlCommand();
da.SelectCommand.Connection = conn;
da.SelectCommand.CommandText = "NameOfProcedure";
da.SelectCommand.CommandType = CommandType.StoredProcedure;

  然后只要选择适当的方式执行此处过程,用于不同的目的即可

本新闻共2页,当前在第1页  1  2  

编辑:xker.com

上一篇:用ASP.NET写你自己的代码生成器
下一篇:ASP.NET编写发送ICQ程序
关闭窗口】【浏览次数:】【发送给好友】【收藏此页
相关文章
·ASP.NET入门随想之多态、接口与委托·AJAX+ASP.NET解决网页打开等待问题·关于ASP,ASP.NET,VB.NET里的MD5加密函
·ASP.NET2.0应用中定制安全凭证之理论·ASP.NET入门随想六之大航海家·ASP.NET Web Matrix开发工具简介
·剖析ASP.NET2.0站点导航功能之建立导·ASP.NET入门随想之金庸群“粒”传·ASP.NET应用程序设计的10大技巧 
·ASP.NET编写发送ICQ程序 ·创建存储过程·管理存储过程
·系统存储过程·为ASP.NET 2.0菜单控件增加target属性
推荐文章 最新文章 热门文章
·VB.net制作下雪的特技景象
·组建高速又安全的文件服务器
·菜鸟+Sa+注入工具组合=肉鸡成群
·VC++实现Windows系统回收站的文件存取
·用JavaHelp系统开发和交付更好的文档
·Linux系统下的多线程编程入门
·武林绝技之笔记本操作系统优化
·Fireworks绘制新春贺卡:娃娃放鞭炮(
·制作一条龙 教你如何将下载的电影刻成
·一分钟攻破ADSL 盗遍宽带密码
·Oracle数据库游标使用大全
·Oracle9i中监视索引的使用
·使用Oracle实现实时通信
·制作MP3播放器TXT图书之三剑客
·什么是IPTV
·什么形式的网站是更有生命力的?
·李宇春 冬天快乐
·06年互联网七大趋势观察 Web2.0将受挫
·P2P终结者 助你Easy网管
·腾讯将于今日发布QQ2006贺岁版
·百度偏重元素的比例和详解
·3DMAX打造首饰美图
·让程序智能一些 系统音量控制的另类办
·免除聊天的打扰 让自定义表情离我远点
·禁止别人用我QQ四法
·看代码破解加密网页文字有高招
·让系统“临时文件夹”更合理
·学习Windows网络命令之net use命令小
·VB.net制作下雪的特技景象
·Win XP系统下磁盘格式转换高招
·个人简历表格
·免费代理IP(每日更新)
·QQ密码丢失后能做的事情:快速找回密码
·Norton AntiVirus 2006 注册码(激活
·WinRAR 3.51 注册码
·找回QQ密码的注意事项 
·系统优化 专题
·史上最强QQ个人档案资料欣赏
·最经典的黑客入门教材
·求职简历封皮
·怎样查找对方的IP地址
·豪杰超级解霸V9.1正版注册码
·FlashFXP 3.3.1 build 1089注册码
·2005最新最全注册码集中营(11月更新)
·ACDSee v8.0注册码
评论 本站声明
会员名称:
密码:匿名 ·注册·忘记密码?
评论内容:
(最多300个字符)
  查看评论
【注】 发表评论必需遵守以下条例:
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
  • 本站大部分为网络转载,如有版权问题,请通知我们,我们立即更正!

设为首页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyright © 2003-2006 xker.com All rights reserved. 网站合作、广告联系QQ:12231446
小新技术网 冀ICP备05002857号