文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 国产软件 | 国外软件 | 汉化补丁 | 设为首页 | 加入收藏
业界资讯 | 图形图像 | 操作系统 | 网络冲浪 | 工具软件 | 办公软件 | 媒体动画 | 精文荟萃 | 认证考试 | 网站建设 | 技术开发 | 专栏
当前位置:abcdown网络学院网络编程数据库通过实例讲解由浅入深学会存储过程
精品广告
推荐TOP10
·SQL中通配符、转义符与
·SQL数据库完全使用手册
·进阶:精妙SQL语句介绍
·sql删除记录
·学习SQL语句之SQL语句大全
·数据备份失败的五个原因及解决办法
·解决SQL Server常见的七个经典问题
·SQL存储过程的概念,创建,调用,管理,删除,优点
·带你轻松接触13个数据库术语
·如何恢复系统数据库如何恢复系统数据库?
阅读TOP10
·图片保存到数据库和从数据库读取图片并显示(c#)
·如何在GridView中一次性批量更新多行数据
·SQL中通配符、转义符与
·正确实现 IDisposable 接口
·101个微软提供的Visual Studio 2005示例
·Webservice中使用Session、Application
·从Internet时间服务器获取标准格林尼治时间
·如何定义数据库表之间的关系
·输出到html页面的字符串的格式化
·如何用sql语句修改数据表中字段,实现identity(100,1)的递增

通过实例讲解由浅入深学会存储过程

日期:2007年8月23日 作者: 查看:[大字体 中字体 小字体]


什么是存储过程呢?

定义:


将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的名称存储起来, 那么以后要叫数据库提供与已定义好的存储过程的功能相同的服务时,只需调用execute,即可自动完成命令。

讲到这里,可能有人要问:这么说存储过程就是一堆SQL语句而已啊?

Microsoft公司为什么还要添加这个技术呢?

那么存储过程与一般的SQL语句有什么区别呢?

存储过程的优点:

1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。

2.当对数据库进行复杂操作时(如对多个表进行Update,Insert,Query,Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。

3.存储过程可以重复使用,可减少数据库开发人员的工作量

4.安全性高,可设定只有某此用户才具有对指定存储过程的使用权

存储过程的种类:

1.系统存储过程:以sp_开头,用来进行系统的各项设定.取得信息.相关管理工作,如 sp_help就是取得指定对象的相关信息

2.扩展存储过程 以XP_开头,用来调用操作系统提供的功能
exec master..xp_cmdshell 'ping 10.8.16.1'

3.用户自定义的存储过程,这是我们所指的存储过程

常用格式
Create procedure procedue_name
[@parameter data_type][output]
[with]{recompileencryption}
as
ql_statement
解释:
output:表示此参数是可传回的
with {recompileencryption}
recompile:表示每次执行此存储过程时都重新编译一次
encryption:所创建的存储过程的内容会被加密

如:
表book的内容如下
编号 书名 价格
001 C语言入门 $30
002 PowerBuilder报表开发 $52

实例1:查询表Book的内容的存储过程
create proc query_book
as
select * from book
go

exec query_book

实例2:加入一笔记录到表book,并查询此表中所有书籍的总金额
Create proc insert_book
@param1 char(10),@param2 varchar(20),@param3 money,@param4 money output
with encryption ---------加密
as
insert book(编号,书名,价格) Values(@param1,@param2,@param3)
select @param4=sum(价格) from book
go

执行例子:
declare @total_price money
exec insert_book '003','Delphi 控件开发指南',$100,@total_price
print '总金额为'+convert(varchar,@total_price)
go

存储过程的3种传回值:

1.以Return传回整数
2.以output格式传回参数
3.Recordset

传回值的区别:

output和return都可在批次程式中用变量接收,而recordset则传回到执行批次的客户端中

实例3:设有两个表为Product,Order,其表内容如下:
Product
产品编号 产品名称 客户订数
001 钢笔 30
002 毛笔 50
003 铅笔 100

Order
产品编号 客户名 客户订金
001 南山区 $30
002 罗湖区 $50
003 宝安区 $4

[1] [2] 下一页 

上一篇:数学课件:用Flash AS推导三角形面积

下一篇:网页中用CSS样式表隐藏文字的挺新颖方法


相关软件: 相关文章:
·星际争霸及母巢之战v1.12b升级档通用破解免CD补丁及所有战网连接补丁
·《Photoshop CS从入门到精通》(英文版)
·暗黑破坏神 2 1.10超级修改器暗黑通v1.01繁体版
·摄影一月通
·英语四级 星火英语-15篇文章贯通四级词汇 MP3
·余世维-有效沟通(MP3版本)
·《拳胜少女》华丽卡通格斗
·《黑暗史诗(FATE)》游戏攻略心得之打造Legend下轻松通关魔战士
·打造一个通用ASP.NET数据分页控件
·Photoshop把普通图片打造为杂志封面效果
·【超级自动注册申请王】【可自动申请QQ/UC/E话通/PP点点通/浩方/邮箱】
·通过代理上《梦幻西游》方法说明
·Google邮局申请即开通的秘诀
·SQL中通配符、转义符与

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.abcdown.net
首页 | 本站声明 | 下载帮助 | 发布软件 |
中文版权所有:ABC学院 浙ICP备05000717号