推广 热搜: csgo  vue  2023  angelababy  gps  信用卡  新车  htc  落地  控制 

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

   2023-08-20 网络整理佚名2580
核心提示:那么存储过程与一般的SQL语句有什么区别呢?存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。系统存储过程:以sp_开头,用来进行系统的各项设定.实例1:查询表Book的内容的存储过程

什么是存储过程

定义:

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

说到这里,有人可能会问:那么存储过程只是一堆SQL语句吗?

公司为什么要添加这项技术?

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

存储过程的优点:

1、存储过程只是在创建时才进行编译,以后每次执行存储过程时都不需要重新编译,但一般SQL语句每次执行时都会编译一次,所以使用存储过程可以提高数据库的执行速度。

2、当对数据库进行复杂的操作时(比如对多个表进行查询),可以将这种复杂的操作用存储过程封装起来,与数据库提供的事务处理结合使用。

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

4、安全性高,可以设置只有某个用户有权使用指定的存储过程

存储过程的类型:

1.系统存储过程:以sp_开头,用于设置系统的各种设置,获取信息,以及相关的管理工作,如获取指定对象的相关信息

2、扩展存储过程以XP_开头,用于调用操作系统提供的函数

执行..'ping 10.8.16.1'

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

通用格式

[@][]

[与]{|}

作为

解释:

: 表示该参数是可返回的

与 {|}

:表示存储过程每次执行都会重新编译

:创建的存储过程的内容将被加密

喜欢:

表书内容如下

编号 标题 价格

001 C 语言简介 $30

002 报告开发 $52

示例1:查询表Book内容的存储过程

过程

作为

* 摘自书本

执行

例2:在表book中添加一条记录,并查询该表中所有书籍的总金额

过程

@char(10)、@(20)、@money、@money

带有---------加密

作为

书(编号,标题,价格)(@,@,@)

@=书中的总和(价格)

执行示例:

@钱

exec '003','控制开发指南',$100,@

print '总金额为'+(,@)

存储过程的返回值有3个:

1. 返回一个整数

2、返回参数的格式

3.

返回值的区别:

可以被批处理程序中的变量接收,并传回执行批处理的客户端

示例3:有两个名为Order的表,表的内容如下:

产品编号 产品名称 客户订购数量

001 钢笔30

002刷子50

003铅笔100支

命令

产品编号 客户姓名 客户存款

001 南山区 $30

002 罗湖区 $50

003 宝安区 $4

请按编号实现连接条件,将两个表连接成一个临时表,临时表只包含编号、产品名称、客户名称、存款、总金额、

总金额=押金*订单数,存储过程中放置​​临时表

代码如下所示:

过程

作为

A。 产品编号,a. 产品名称,b. 客户名称,b. 客户存款,a. 客户订单号* b. 客户存款总额

into # from a inner join Order b on a. =b.

如果@@错误=0

打印“好”

别的

打印“失败”

 
反对 0举报 0 收藏 0 打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报
Powered By DESTOON