Stored procedures 存储过程在laravel中显示[加载资源失败:服务器响应状态为500(内部服务器错误)]

Stored procedures 存储过程在laravel中显示[加载资源失败:服务器响应状态为500(内部服务器错误)],stored-procedures,Stored Procedures,我想使用存储过程 但这段代码显示了一个错误 public function post(Request $request) { $post = new Post; $form = $request->all(); unset($form['_token']); $file_name = $request ->file('path')

我想使用存储过程

但这段代码显示了一个错误

    public function post(Request $request) 
    {    
       $post = new Post;
       $form = $request->all();
       unset($form['_token']);
       
       $file_name = $request
                    ->file('path')
                    ->getClientOriginalName();

       $request->file('path')->storeAs('public', $file_name);
               
       DB::select('exec insert_post(?,?,?)', array($request->name, $request->message, $file_name));

       return view('welcome');
而不是这个。同样的错误

    public function post(Request $request) 
    {    
       $post = new Post;
       $form = $request->all();
       unset($form['_token']);
       
       $file_name = $request
                    ->file('path')
                    ->getClientOriginalName();

       $request->file('path')->storeAs('public', $file_name);
               
       DB::select('exec insert_post(?,?,?)', array($request->name, $request->message, $file_name));

       return view('welcome');
      DB::statement(
            'call insert_post(?,?,?)',
            [$request->name, $request->message, $file_name]
        );
而不是这个。工作

        $post->name    = $request->name;
        $post->message = $request->message;
        $post->path    = $file_name; 
        $post->save();
存储过程

MariaDB [laravel2]> create procedure insert_post(IN x varchar(20), IN y text, IN z text)
    -> begin
    -> insert into posts (name, message, path) values(x, y, z);
    -> end
    -> //
Query OK, 0 rows affected (0.011 sec)