IDENTITY句が指定されているテーブルに新規レコードをインサートした後で設定された値を取得したいときに@@IDENTITYで取得できます。
VBA(ADO使用)で、下記の通り記述します。
Set cmd = New ADODB.Command
With cmd
.ActiveConnection = コネクションオブジェクト
.CommandText = INSERT文・・・・①
.Execute
End With
Set rst = New ADODB.Recordset
rst.Open "SELECT @@IDENTITY ", コネクションオブジェクト, adOpenDynamic, adLockOptimistic・・・・②
②のSQLに①のINSERT文も一緒に書いていたら、データは挿入されるんだけどレコードが4件作成されてしまいました。INSERT文と@@IDENTITYを分けたらうまくいきました。原因を追及している暇がなかったのですが、一緒じゃダメなのかな。
↓クリックして頂けるとうれしいです(ワンクリック詐欺ではないです(笑))
人気blogランキングへ
日本ブログ村へ










最近のコメント