不幸的是,由于我不能分享我公司的代码,所以我会有点含糊,所以我提前道歉。
我发现存储过程(调用其他存储过程)在我们的 MS SQL Server 数据库中存储员工的方式存在差异。当直接在数据库上运行(使用我的 PHPStorm 控制台)时,当尝试添加任意数量的员工时,它会正确地添加他们。然而,当通过 PHP 运行时,实际上只插入了一个随机数。我的 PHP 设置类似于:
$con = sqlsrv_connect($host . ',' . $port, [
"Database" => $database,
"UID" => $user,
"PWD" => $password,
"ReturnDatesAsStrings" => true,
"CharacterSet" => "UTF-8"
]);
$sql = "EXEC EmployeeAdd '[{ json data here }]'"
$stmt = sqlsrv_query($con, $sql);
我也尝试了 PDO 库并看到了相同的结果。
sqlsrv有没有人在使用 PHP或PDO库运行嵌套存储过程时遇到问题?如果是这样,你做了什么来解决这个问题?提前致谢。
子衿沉夜