- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第12章存储过程与函数
第1页
第1页
12.1基本概念
存储过程
通过编译存储在数据库中一段SQL语句集合
减少数据库和服务器之间数据传播
提升数据处理效率
存储过程和函数区别
函数有返回值,存储过程没有
存储过程参数IN、OUT、INOUT类型
函数参数只有IN类型
第2页
第2页
12.2存储过程和函数操作
用户权限
createroutine
alterroutine
executeroutine
第3页
第3页
12.1.1创建修改
createproceduresp_name([proc_parameter[,...]])
[characteristic...]routine_body
createfunctionsp_name([func_parameter[,...]])
returnstype
[characteristic...]routine_body
proc_parameter:
[IN|OUT|INOUT]para_nametype
func_parameter:
[IN]para_nametype
第4页
第4页
type
AnyvalidMySQLdatatype
characteristic:
LANGUAGESQL
|[NOT]DETERMINISTIC
|{CONTAINSSQL|NOSQL|READSSQLDATA|MODIFIESSQLDATA}
|SQLSECURITY{DEFINER|INVOKER}
|COMMENTstring
CALLsp_name([proc_parameter[,...]])
第5页
第5页
mysqldelimiter$$
mysql
mysqlcreateprocedurefilm_in_stock(in,out,inout);
--
--
--
--end$$
mysqldelimter$$
第6页
第6页
mysqlselectinventory_id
--frominventory
--wherefilm_id=2
--andstore_id=2
--andinventory_in_stock(inventory_id)
mysqlcallfilm_in_stock(2,2,@)
mysqlselect@a
第7页
第7页
文档评论(0)