【发布时间】:2019-09-11 07:40:14
【问题描述】:
尝试在 Laravel 中调用存储过程函数时,我不断收到此错误
SQLSTATE[42000]:[Microsoft][ODBC Driver 13 for SQL Server][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);
}
那么,我在代码中做错了吗?
【问题讨论】:
-
尝试去掉括号 --
EXEC testprocedure ?, ?, ? -
试过了,但现在我得到了这个:/
SQLSTATE[IMSSP]: Tried to bind parameter number 65536. SQL Server supports a maximum of 2100 parameters. (SQL: exec TestProcedure 울산광역시, 남구, 신정동)
标签: php sql-server laravel stored-procedures