【发布时间】:2018-03-22 09:09:30
【问题描述】:
我正在使用 Laravel 5.2 和 SQL Server。我有一个搜索客户的存储程序。当我使用 Null 值运行时,它返回 0 行。它应该返回所有数据。 下面是我在控制器中运行存储过程的代码:
$name = $request['name'];
$email = $request['email'];
$lower_age = $request['lower_age'];
$upper_age = $request['upper_age'];
$gender = $request['gender'];
$maritalstatus = $request['maritalstatus'];
$search = DB::select("EXEC dbo.search '".$name."',
'".$email."',
'".$lower_age."',
'".$upper_age."',
'".$gender."',
'".$maritalstatus."'"
);
这是我 print_r 我的存储过程的时候:
EXEC dbo.search '', '', '', '', '', ''
我需要将'' 变成NULL,如下所示:
EXEC dbo.search NULL,NULL,NULL,NULL,NULL,NULL
你知道吗?
【问题讨论】:
-
请考虑使用参数来构建您的查询,这可能对 sql-injection 开放
标签: sql-server laravel stored-procedures laravel-5.2