我的数据库中有一个自定义过程,它调用另外两个过程。当我在 MySQL 中执行该过程时,它按预期显示了两个过程的结果。然而,当我在 Laravel 中调用我的存储过程时,它只返回第一个过程的结果。
这就是我在 Laravel 中调用我的程序的方式:
DB::select("CALL my_procedure");
我什至尝试这样称呼它:
DB::select(DB::raw("CALL my_procedure");
my_procedure
包含以下查询:
BEGIN
CALL procedure_one();
CALL procedure_two();
END
procedure_one
和 procedure_two
是简单的选择语句。
任何帮助将非常感激:)
我将给您一个示例,您可以在其中调用带参数的过程:
$result = DB::statement('call fill_stats_temp(?,?,?)', [$academic_year,$reference_date,$academic_period]);
尝试使用上述语句调用
my_procedure
。所以代码是:
$result = DB::statement('call my_procedure');