簡體   English   中英

在php中使用PDO執行帶有參數的SQL Server存儲過程

[英]Executing a SQL Server Stored Procedure with parameters using PDO in php

我似乎在執行包含參數的ms sql服務器存儲過程時遇到很大的困難,我能夠執行簡單的select語句或不帶參數的存儲過程,但是一旦我嘗試綁定參數,我就會收到消息:

"An error occured: SQLSTATE[HY000]: General error: 102 General SQL Server error: Check messages from the SQL Server [102] (severity 15) [(null)]"

來自php的代碼是:

    $pdo = new PDO($dsn, $user, $password);

    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    try {
    $sql = $pdo->prepare("EXEC [contractor].[sync_licence] (?)");
    $params = 5;
    $sql->bindParam(1, $params, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 4000);
    $sql->execute();
    $results = $sql->fetchAll();
    var_dump($results);
    } catch (PDOException $e) {
    echo 'An error occured: ' . $e->getMessage();
    }

有人可以幫我解決問題嗎?

對於任何有興趣的人,我都發現了以上陳述的問題。 返回的錯誤消息基本上指向t-sql語句的語法問題,在這種情況下,問題是()周圍的(),因此通過刪除()該過程現在可以正常工作,希望這可以幫助遇到相同問題的任何人

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM