如何修复“ @ P1附近的语法不正确”。 Laravel中的错误

时间:2019-04-22 03:41:54

标签: php sql-server laravel stored-procedures

试图在Laravel中调用存储过程函数时,我不断收到此错误

  

SQLSTATE [42000]:[Microsoft] [SQL Server的ODBC驱动程序13] [SQL Server]“ @ P1”附近的语法不正确。 (SQL:exec TestProcedure(울산광역시,울산광역시,신정동))

请注意,在SSMS中,当我传递变量(城市,县和地址)时,此存储过程可以正常工作。

这是我在Laravel中的代码;

public function filterKoreanAddress(Request $request)
{
    $data = $request->all();
    $results = DB::select(
        'exec TestProcedure(?, ?, ?)',
        [
            $request->input('city'),
            $request->input('county'),
            $request->input('address'),
        ]
    );
    dd($results);
}

那么,我在代码中做错了什么吗?

1 个答案:

答案 0 :(得分:0)

像这样尝试

$results = DB::select(
    'exec TestProcedure(?, ?, ?)',
    array(
        $request->input('city'),
        $request->input('county'),
        $request->input('address'),
    )
);