こんにちは。
現在、バッチで伝票を登録するプログラムを組んでいます。
実施したい内容は、伝票番号を採番し、伝票テーブルと伝票明細テーブルにデータを書き込むと言う物です。
具体的には、以下のテーブルです。
1.TRN_DENPYO
DENPYO_NO
DENPYO_HIDUKE
2.TRN_DENPYO_MEISAI
DENPYO_NO
DENPYO_MAISAI_NO
DENPYO_SYOHINCD
※TRN_DENPYOのDENPYO_NOはserialです。
そこで、TRN_DENPYO にレコードを追加した後、自動的にカウントアップされるTRN_DENPYOのDENPYO_NOを取得するために LASTVAL()を使用したいのですが、うまく行きません。
以下、実際に記述しているSQL文です。
$sql = 'INSERT INTO "TRN_DENPYO"("DENPYO_HIDUKE")VALUES(' . $denpyo_hiduke . ')';
$db->query($sql);
$sql = 'SELECT LASTVAL()';
$result =& $db->query($sql);
while($row = $result->fetchRow(DB_FETCHMODE_ASSOC)) {
$denpyo_no = $row['LASTVAL()'];
}
echo $denpyo_no;
この時点で、$denpyo_no の値が表示されると思っているのですが、表示されません。
どなたか教えて頂けませんでしょうか?
ちなみに環境は、PostgerSQL8.2 php5を使用しています。
No.1ベストアンサー
- 回答日時:
LASTVAL()は、マニュアルを見る限りPostgreSQL 8.3から登場しているようですが?
$sql = 'SELECT LASTVAL()';
$denpyo_no = $row['LASTVAL()'];
一般的には、
SELECT LASTVAL() AS LV
のように別名を付け、
$denpyo_no = $row['LV'];
のように別名で参照します。
この回答への補足
chukenkenkouさま
ご回答ありがとうございます。
別名をつけるのですね!
勉強になりました(というか、こんな質問をして恥ずかしいです)
マニュアルを見ると8.1.0に書かれていたので使えると、
実際に試してみても関数関係のエラーにならないので、
これは、私の使い方が悪いのだと思っていました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP コメント機能に返信欄を矢印で追加したい 1 2022/05/09 21:17
- PostgreSQL 画像とカテゴリーを出力したいのですが、取得の条件を付ける方法がわかりません。 2 2022/05/01 18:03
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- Oracle sqlで質問です。 idを元にidに紐付くデータで住所コードがjpのみのデータ以外のidを取得したい 4 2023/03/20 17:41
- PHP DBのハッシュ化したパスワードをpassword_verifyで戻し照合したのですが上手く行きません 2 2023/02/06 13:24
- PHP MySql PHP 2つのテーブルをJOINで結合 user_idで抽出 1 2023/01/03 14:04
- Oracle SQL update方法 2 2022/06/22 14:07
- その他(プログラミング・Web制作) pythonのグローバル変数 2 2022/11/25 18:02
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SELECT 文の NULL列は?
-
テーブルに存在しない列をselec...
-
SQLにて指定日付より前、かつ最...
-
Postgresqlのレポート機能について
-
2つのテーブルで引き算 postgres
-
SQLでUPSERTを一度に複数行やる...
-
PostgreSQLの断片化の状況を確...
-
PostgreSQL レコードからアイテ...
-
ExcelにPostgreSQLのデータを取...
-
単純なselectが遅くなるのです...
-
重複を許すキーの構文がわかり...
-
テーブルを作ろうとしたら。
-
バキューム処理の実行時間の目安
-
DBFluteについて質問です。 環...
-
reindex と update のデッドロック
-
SQLServerでの複数テーブルから...
-
【SQL 2つのコードが重複する...
-
データのマッチングです。お願...
-
PostgresSQLでテーブル定義の抽...
-
MS Access から PostgreSQL へ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SELECT 文の NULL列は?
-
SQLにて指定日付より前、かつ最...
-
テーブルに存在しない列をselec...
-
SQLでUPSERTを一度に複数行やる...
-
単純なselectが遅くなるのです...
-
PostgreSQLの断片化の状況を確...
-
javaでデータベース上のテーブ...
-
2つのテーブルで引き算 postgres
-
PostgreSQL レコードからアイテ...
-
Postgresのデータ領域の拡張に...
-
Postgresqlのレポート機能について
-
VIEWのCOPYってできないんですか?
-
POSTGRESQL 検索スピードが遅い
-
備品管理のデータベースについて
-
Pythonで2つのデータ(キー無し...
-
最新レコードを抽出し外部結合...
-
postgreSQL カラムの全ての値を...
-
データのマッチングです。お願...
-
重複を許すキーの構文がわかり...
-
テーブルにcsvファイルをインポ...
おすすめ情報