TEST_SEQというシーケンスを一回実行すると1を返す、
2回目は2を返す…というように、
実行回数をカウントするシーケンスを作りましたが、
PHPでTEST_SEQを1回実行すると2を返し、2回実行すると4を返してしまいます。
どうも、以下のPHPのソースが問題あるようなのですが、
どの部分が悪いのでしょうか?
try{ // データベースへの接続を表すPDOインスタンスを生成 $pdo = new PDO($dsn,$setsuzokuuser,$password); $input_str = file_get_contents("php://input"); $input_json = json_decode($input_str,true); $sql = "select TEST_SEQ.nextval as nextval from dual"; // データを取得 $stmt = $pdo->query($sql); $stmt -> execute(); // 1行ずつ取得 while($rec = $stmt->fetch(PDO::FETCH_ASSOC)){ $output[] = $rec; } echo json_encode($output, JSON_UNESCAPED_UNICODE); }catch (PDOException $e) { // UTF8に文字エンコーディングを変換します echo mb_convert_encoding($e->getMessage(),'UTF-8','SJIS-win'); } // 接続を閉じる $pdo = null;
ブラウザで1回実行した時に出力される結果。
[{"NEXTVAL":"2"}]
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。