mysql存储过程菜鸟教程_mysql存储过程实例详解

mysql存储过程菜鸟教程_mysql存储过程实例详解详细实例全⾯解析SQL存储过程存储过程(StoredProcedure),是⼀组为了完成特定功能的SQL语句,类似⼀门程序设计语⾔,也包括了数据类、流程控制、输⼊和输出和它⾃⼰的函数库。存储过程可以说是⼀个记录集,它是由⼀些T-SQL语句组成的代码块,这些T-SQL语句代码像⼀个⽅法⼀样实现⼀些功能(对单表或多表的增删改查),然后再给这个代码块取⼀个名字,在⽤到这个功能的时候调⽤他就⾏了。…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

详细实例全⾯解析SQL存储过程

存储过程(Stored Procedure),是⼀组为了完成特定功能的SQL 语句,类似⼀门程序设计

语⾔,也包括了数据类 、流程控制、输⼊和输出和它⾃⼰的函数库。存储过程可以

说是⼀个记录集,它是由⼀些T-SQL语句组成的代码块,这些T-SQL语句代码像⼀个

⽅法⼀样实现⼀些功能 (对单表或多表的增删改查),然后再给这个代码块取⼀个名

字,在⽤到这个功能的时候调⽤他就⾏了。不过SQL存储过程对于⼀些初学者来说还

是⽐较抽象难理解的,因此本⽂将由浅⾄深地剖析SQL存储过程,帮助你学习它。

存储过程的优点

1.存储过程只在创造时进⾏编译,以后每次执⾏存储过程都不需再重新编译,⽽⼀般

SQL语句每执⾏⼀次就编译⼀次,所以使⽤存储过程可提⾼数据库执⾏速度,效率要⽐

T-SQL语句⾼。

2.当对数据库进⾏复杂操作时,可将此复杂操作⽤存储过程封装起来与数据库提供的

事务处理结合⼀起使⽤。

3、⼀个存储过程在程序在⽹络中交互时可以替代⼤堆的T-SQL语句,所以也能降低⽹

络的通信量,提⾼通信速率。

4 .存储过程可以重复使⽤,可减少数据库开发⼈员的⼯作量。

5.安全性⾼,可设定只有某些⽤户才具有对指定存储过程的使⽤权

存储过程基本语法

创建存储过程

CREATE PROC [ EDURE ] procedure_name [ ; number ]

[ { @parameter data_type }

[ ARYING ] [ = default ] [ OUTPUT ]

] [ ,…n ]

[ WITH

{ RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ]

[ FOR REPLICATION ]

AS sql_statement [ …n ]

调⽤存储过程

EXECUTE Procedure_name ” –存储过程如果有参数,后⾯加参数格式为:@参数名

删除存储过程

drop procedure procedure_name –在存储过程中 调⽤另外⼀个存储过程,

创建存储过程的参数

1.procedure_name :存储过程的名称,在前⾯加#为局部临时存储过程,加##为全局

临时存储过程。

2.; number :是可选的整数,⽤来对同名的过程分组,以便⽤⼀条 DROP

PROCEDURE 语句即可将同组的过程⼀起除去。例如,名为 orders 的应⽤程序使⽤的

过程可以命名为 order roc;1、order roc;2 等。DROP PROCEDURE order roc 语句将除

去整个组。如果名称中包含定界标识符,则数字不应包含在标识符中,只应在

rocedure_name 前后使⽤适当的定界符。

3.@parameter :存储过程的参数。可以有⼀个或多个。⽤户必须在执⾏过程时提供每

个所声明参数的值 (除⾮定义了该参数的默认值)。存储过程最多可以有 2.100 个参

数。

使⽤ @ 符号作为第⼀个字符来指定参数名称。参数名称必须符合标识符的规则。每

个过程的参数仅⽤于该过程本⾝;相同的参数名称可以⽤在其它过程中。默认情况

下,参数只能代替常量,⽽不能⽤于代替表名、列名或其它数据库对象的名称。有关

更多信息,请参见 EXECUTE 。

4.data_type :参数的数据类 。所有数据类 (包括 text 、ntext 和 image )均可以⽤

作存储过程的参数。不过,cursor 数据类 只能⽤于 OUTPUT 参数。如果指定的数据

类 为 cursor ,也必须同时指定 VARYING 和 OUTPUT 关键字。有关 SQL Server 提

供的数据类 及其语法的更多信息,请参见数据类 。

说明 对于可以是 cursor 数据类 的输出参数,没有最⼤数⽬的限制。

5.VARYI G :指定作为输出参数⽀持的结果集 (由存储过程动态构造,内容可以变

化)。仅适⽤于游标参数。

6.default : 参数的默认值。如果定义了默认值,不必指定该参数的值即可执⾏过程。

默认值必须是常量或 NULL 。如果过程将对该参数使⽤ LIKE 关键字,那么默认值中

可以包含通配符 (%、_ 、[] 和 [^] )。

7.OUTPUT :表明参数是返回参数。该选项的值可以返回给 EXEC[UTE] 。使⽤

OUTPUT 参数可将信息返回给调⽤过程。Text

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/185534.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号