2017-12-11 4 views
0

PHPでODBCを使用しようとしていますが、次のコードは機能しません。phpとodbcを使用してストアプロシージャを実行

手順(CALL AU_GPF_BILL_Procedure(@MUniqueIdentifier))は呼び出されていません。

$uniqueIdentifier = 'GPF_201712785'; 
$stmt = odbc_prepare($conn, 'CALL AU_GPF_BILL_Procedure(@MUniqueIdentifier)'); 
echo $stmt; 
$str = odbc_execute($stmt, $uniqueIdentifier); 
echo $str; 
+1

パラメータ '@ MUniqueIdentifier'を変更できますか?これはPHPと準備されたステートメントではより一般的です。 –

+0

まだ動作していない – Niki

答えて

0

これは、プロシージャがINパラメータのみを使用する場合にのみ機能します。 odbcを使用してOUTまたはINOUTパラメータを使用するストアド・プロシージャを呼び出すことはできません。

パラメータは配列で指定する必要があります。

$uniqueIdentifier = 'GPF_201712785'; 
$stmt = odbc_prepare($conn, 'CALL AU_GPF_BILL_Procedure(?)'); 
if(odbc_execute($stmt, array($uniqueIdentifier))) { 
    $row = odbc_fetch_array($stmt); 
    // Whatever 
} 
関連する問題