MySQL存储过程

MySQL存储过程,第1张

概述介绍《MySQL存储过程》开发教程,希望对您有用。

《MysqL存储过程》要点:
本文介绍了MysqL存储过程,希望对您有用。如果有疑问,可以联系我们。

存储过程的好处:

业务逻辑被“暗藏”在数据库里面,从而避免敏感的数据被透露

能简化应用法式代码

跨平台性

如果您必需一次执行几个语句,一个存储过程比客户端程序逐条地执行语句要快的多,因为不需要任何的来往返数据

CREATE

[defineR = {user | CURRENT_USER}]

PROCEDURE<name> (ParaMETER(S)...)

[characteristic(s)...] routine_body

The Syntax for creating a function is:

CREATE

[defineR = {user | CURRENT_USER }]

FUNCTION sp_name ([parameter])

RETURNS type

[characteristic(s)...] routine_body

CREATE 创立

defineR 定义者,表现存储过程或者函数的所有者,如果省略,讲使用默认所有者(当前用户)

RPOCEDURE<name> 表现创建一个名字为name的存储过程

FUNCTION<name> 表现创建一个名称为name的函数

【IN | OUT | INOUT】<parameter name> type

IN 指参数是一个输入变量,它仅向过程提供一个值

OUT 指参数是只是用来存储返回值

INOUT 指参数可用于输入变量和返回值

parameter name(参数名称)是Type的类型名

RETURNS 表现返回数据类型

DETERMINISTIC 确定性

NOT DETERMINISTIC 非确定性

实例一、

CREATE PROCEDURE user_avg(OUT average NUMERIC(5,2))

BEGIN

SELECT AVG(age) INTO average FROM users

END;

执行该存储过程:

CALL user_avg(@a);

SELECT @a;

实例二、

CREATE FUNCTION is_young(uuname VARCHAR(64))

RETURNS BOolEAN

DETERMINISTIC

BEGIN

DECLARE age_check DECIMAL(5,2);

DECLARE is_young BOolEAN;

SELECT age INTO age_check FROM users WHERE username =uuname;

IF (age_check<40) THEN

SET is_young =1;

ELSE

SET is_young =0;

END IF;

RETURN(is_young);

END

数据库存在的admin1的时候返回1

数据库不存在的admin11的时候返回0

每天三分钟,知识效率高.轻文章,更高效.

欢迎存眷同名微信公众账号DevOps24h.

《MysqL存储过程》是否对您有启发,欢迎查看更多与《MysqL存储过程》相关教程,学精学透。内存溢出PHP学院为您提供精彩教程。

总结

以上是内存溢出为你收集整理的MySQL存储过程全部内容,希望文章能够帮你解决MySQL存储过程所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1158117.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存