プロジェクトでは、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)