暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
HaloDB对MySQL存储过程的兼容及使用.pdf
105
11页
2次
2024-07-24
免费下载
HaloDB MySQL 存储过程的兼容及使用
Halo 数据库作为一款通用型数据库,特别注重兼容性,以适应不同的应用场景,
满足企业的数据存储处理等需求。
一、前置条件
Halo-mysql 模式使用存储过程需要创建 plmyssql 扩展。
create extension plmyssql;
二、存储过程的创建及调用
1. 存储过程语法
CREATE
[DEFINER = { user | CURRENT_USER }]
PROCEDURE sp_name ([proc_parameter[,...]])
[characteristic ...] routine_body
proc_parameter:
[ IN | OUT | INOUT ] param_name type
characteristic:
COMMENT 'string'
| LANGUAGE SQL
| [NOT] DETERMINISTIC
| { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
| SQL SECURITY { DEFINER | INVOKER }
routine_body:
Valid SQL routine statement
[begin_label:] BEGIN
[statement_list]
……
END [end_label]
通过 Mysql 协议对存储过程进行创建及管理
声明语句结束符,可以自定义:
DELIMITER $$
DELIMITER //
2. 存储过程参数
MySQL 存储过程的参数用在存储过程的定义,共有三种参数类型,IN,OUT,INOUT,
式如:
CREATE PROCEDURE 存储过程名([[IN |OUT |INOUT ] parameter data_type...])
IN 输入参数:表示调用者向过程传入值(传入值可以是字面量或变量)
OUT 输出参数:表示过程向调用者传出值(可以返回多个值)(传出值只能是
变量)
INOUT 输入输出参数:既表示调用者向过程传入值,又表示过程向调用者
传出值(值只能是变量)
delimiter //
create or replace procedure proc(in a int, in b int, out sum int)
begin
set sum = a + b;
end;
//
call proc(1, 2, @var1);//
select @var1;//
of 11
免费下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜