Halo Tech

Halo兼容MySQL存储过程——参数模式

一、

MySQL的存储过程支持IN、OUT和INOUT参数模式。
在MySQL中调用存储过程时,对于IN模式的参数,可以传递任意的表达式,对于OUT、INOUT模式的参数,只能传递用户变量、存储过程中的参数或本地变量。
Image
二、

在Halo未支持MySQL存储过程时,将MySQL的存储过程迁移到Halo上,只能祈祷有INOUT或OUT模式参数的存储过程被另外的存储过程调用,并传递调用者的参数或本地变量给被调用者的INOUT或OUT模式参数,因为Halo本来就支持这种形式的调用。

三、
Halo支持MySQL存储过程后,可以像MySQL一样,将用户变量传递给存储过程,Halo内核将帮你对其做出处理。
Image

四、

Halo完全支持MySQL存储过程的参数模式,首先需要支持MySQL的用户变量,其次才能在内核存储过程的处理逻辑中,对用户变量进行处理。