【发布时间】:2020-10-02 14:13:41
【问题描述】:
您好,在 Laravel 7 上使用 sqldrv 驱动程序。 我有一个很大的查询,我使用了很多绑定,在查询中有些相同的倍数,比如 ids 和 stamps。
示例:
$query=... var = :id ... INSERT INTO ... foo = :i ... WHERE toni = :i ... "; $bindings =["id" => 123];
当我尝试运行查询 DB::statement($query, $bindings); 时,我收到此错误:Illuminate\Database\QueryException: SQLSTATE[07002]: [Microsoft][ODBC Driver 17 for SQL Server]COUNT field incorrect or syntax error (SQL:
我读到我可以在 config\database.php 'options' => [ PDO::ATTR_EMULATE_PREPARES => true, ] 中添加,但它不起作用,可能是因为它是 sqlsrv 驱动程序。
我也可以在 SQL 查询的标头中声明和设置变量,但我认为这是不必要的。
有没有办法重用绑定
【问题讨论】: