• 締切済み

lastInsertIDを使用方法

MySQLからSQL Serverでプログラムを動作させようとしています。(サーバーはWindowsServer) 同時にDBからMDB2に変更を行っています。 insertをnextIDで取得した値で登録を行い、 lastInsertIDでその値を取得しようとしているのですが、上手くいかないです。(NULL値が返ります)。 auto_incrementが有効かどうかなどで影響があるという記事を見つけたのですが、 他に対処法が見当たらないのでご存知の方がいましたら教えていただけないでしょうか? よろしくお願いします。

みんなの回答

回答No.2

こんばんは。 @@IDENTITY これを使うのはダメなんかな?

  • nora1962
  • ベストアンサー率60% (431/717)
回答No.1

> MySQLからSQL Serverでプログラムを動作させようとしています ここが意味不明。実際に使おうとしているRDBMSは何なのか。後、PHPのソースの要点ぐらい提示してもらわないと回答しようがない。

hiroki0825
質問者

お礼

MySQLを使用していたのですが、SQL Serverに変更しようとしています。ですので、SQL Serverを使います。 下記のようなテーブルがあり、 データを追加する際に、nextIDを使用して一意な値を取得してIDに登録します。 その後、登録した際のID(前回、インサート時に使用した値であり、インサート直後)をlastInsertID取得したいと考えています。 テーブル名 table1 カラム   ID 結果は、同じ値が取得できていません。実行のたびにそれぞれ1ずつ増えてはいるようです。 PHPのソースの流れは以下のような感じです。 nextIDで取得、 取得した値でインサート、 lastInsertIDでインサートした際の値を取得 よろしくお願いします。

関連するQ&A