0
PDO PHP を使用してプロシージャ(テーブルにデータを挿入するように記述)を呼び出したいがプロシージャが呼び出されていない。何がわかっていないかわからない 以下は、誰も私にPDO PHPを使用してOracleプロシージャを呼び出すための最良の方法を提案することができます。PDOを使用してOracleストアドプロシージャを呼び出すPHP
<?php
require("connection.php");
date_default_timezone_set('Asia/Kolkata');
$PARTY_C = 36317;
$CONN_NO = 479;
$EST_C = 86;
$STATUS = 'F';
$FAULTY_STATUS = 'PM';
$BILL_DT = date('d/m/Y');
$CURR_READ = 1000;
$PENALTY = 35;
$ADJSTMNT = 245;
$MTR_CHNG_DT = date('d/m/Y');
$OLD_MTR_READ = 900;
$METER_RES_DT = date('d/m/Y');
$PREV_OS_A_M = 1;
$PREV_INT_A_M = 34;
$PREV_PI_A_M = 45745;
$PARTY_M = 'abc';
$stmt = $conn->prepare("CALL PH_STATUS(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
$stmt->bindParam(1, $PARTY_C, PDO::PARAM_INT);
$stmt->bindParam(2, $CONN_NO, PDO::PARAM_INT);
$stmt->bindParam(3, $EST_C, PDO::PARAM_INT);
$stmt->bindParam(4, $STATUS, PDO::PARAM_STR);
$stmt->bindParam(5, $FALTY_STATUS, PDO::PARAM_STR);
$stmt->bindParam(6, $BILL_DT, PDO::PARAM_STR);
$stmt->bindParam(7, $CURR_READ, PDO::PARAM_INT);
$stmt->bindParam(8, $PENALTY, PDO::PARAM_INT);
$stmt->bindParam(9, $ADJSTMNT, PDO::PARAM_INT);
$stmt->bindParam(10, $MTR_CHNG_DT, PDO::PARAM_STR);
$stmt->bindParam(11, $OLD_MTR_READ, PDO::PARAM_INT);
$stmt->bindParam(12, $METER_RES_DT, PDO::PARAM_STR);
$stmt->bindParam(13, $PREV_OS_A_M, PDO::PARAM_INT);
$stmt->bindParam(14, $PREV_INT_A_M, PDO::PARAM_INT);
$stmt->bindParam(15, $PREV_PI_A_M, PDO::PARAM_INT);
$stmt->bindParam(16, $PARTY_M, PDO::PARAM_STR);
$stmt->execute();
print "procedure returned $stmt\n";
?>
また、私はこれを試みたが、私のために働いていません。 – amar
あなたもその文書を読むべきです。これは、PDOでストアドプロシージャを使用する唯一の方法です。そうでない場合は、プロシージャに別の名前が付いているか、動作しません。 – Oliver