【发布时间】:2013-10-03 21:47:40
【问题描述】:
对于一个项目,我们使用的是 MSSQL 数据库。我想使用 Laravel 4 访问数据库中的存储过程。我设法通过以下方式做到这一点:
$pdo = DB::connection()->getPdo();
$stmt = $pdo ->prepare('getArticles');
$stmt->execute();
但是如果存储过程需要参数,我不知道如何传递它们。对于常规选择,这是有效的:
$pdo = DB::connection()->getPdo();
$sql = "SELECT * FROM articles WHERE id = ?";
$stmt = $pdo ->prepare($sql);
$stmt->execute(array(213));
但是当我为存储过程尝试以下操作时,它给了我一个错误:
$pdo = DB::connection()->getPdo();
$stmt = $pdo ->prepare('getTurnover(?,?)');
$stmt->execute(array(1, 2013));
有谁知道是否可以将参数发送到存储过程?如果有,怎么做?
编辑: 我得到的错误是:
PDOStatement::execute() [pdostatement.execute]:消息:“1”附近的语法不正确。 (15 级)
【问题讨论】:
标签: php sql-server stored-procedures laravel laravel-4