Gab*_*ich 3 php pdo sqlbindparameter
我在使用 ODBC 的 PDO 语句时遇到问题。
我在 Windows Server 2003 和 PHP 5.4.x 中使用 SQL SERVER 7
例如:
我有查询:
(这不是实际的查询,但它适用于示例)
$query = SELECT * FROM table WHERE number = :number OR number = :number
Run Code Online (Sandbox Code Playgroud)
在我的 php 中,我有:
$conn = new PDO($connectionString);
$conn->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$statement = $conn->prepare($query);
$statement->bindParam(':number', $someNumber);
$statement->execute();
Run Code Online (Sandbox Code Playgroud)
这会引发错误
COUNT field incorrect or syntax error
Run Code Online (Sandbox Code Playgroud)
问题是, bindParam 只绑定 :number 的第一次出现......并且尝试再次绑定它也不起作用。
有没有办法绑定多个具有相同名称的命名参数?
我试图不使用位置参数使用 ? 反而
从理论上讲,您可以打开对准备好的语句的模拟。
当您调用 PDOStatement::execute() 时,您必须为您希望传递给语句的每个值包含一个唯一的参数标记。您不能在准备好的语句中多次使用同名的命名参数标记,除非启用了仿真模式。
http://www.php.net/manual/en/pdo.prepare.php
| 归档时间: |
|
| 查看次数: |
4042 次 |
| 最近记录: |