对于一个项目,我们使用的是 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)