引数の無い使用方法
select LAST_INSERT_ID()
MySQL の LAST_INSERT_ID 関数は、select LAST_INSERT_ID() として同一接続内で、最後に更新された AUTO_INCREMENT オプションを持つ列に対する最後の更新結果の値を戻します。
返される値は、同一接続内でひとつなので、直前に更新された表が保持していた値に依存します。
但し、単一の INSERT 文を使用して複数の行をインサートする場合、LAST_INSERT_ID() は、最初の インサートされた行のみに対して生成された値を戻します。これは、他のサーバに対して同じ INSERT 文を簡単に再現できるようにするためです。
引数のある使用方法
update コントロールマスタ set 売上伝票 = LAST_INSERT_ID( 売上伝票+1 ) where キー = '1'
update 文で LAST_INSERT_ID( 列名+1 ) を使って、整数型の列をカウントアップします。これによって、現在の『整数型の列の値』を取得する事ができます。( select LAST_INSERT_ID() で取得します ) これらは、更新と取得が同時にシステム側で行われる事になるので、テーブルをロックして更新と取得とロック開放という通常の処理の代替として簡単に処理ができます。 関連する記事 MySQL における AUTO_INCREMENT 列の設定および詳細
|
【MySQLの最新記事】
- MySQL に PIPES_AS_CONCAT を設定して、CSV を出力する SQL
- MySQL : DB のデータを簡単に沢山作る方法は inner join
- MySQL で、Group by して合算された行内で最新データの明細を再び取り出す SQL
- MySQL のコマンドラインの操作
- Windows 環境の MySQL から日本語名のテーブルを コマンドプロンプトでエクスポート(mysqldump.exe)する
- MySQLの日本語オンラインマニュアル、5.6 とその中のいくつかの重要なリンク
- MySQL のコマンドプロンプトからの処理用バッチファイル
- MySQL で、主キーの作り変えのプロセス / serial では、自動的に インデックスが作成されます
- MySQL 5.6 (Generally Available (GA) Releases) インストール
- MySQL における AUTO_INCREMENT 列の設定および詳細
- MySQL のプログラムからの経過時間の表現方法( CAST, STR_TO_DATE, GET_FORMAT, DATE_FORMAT, TIMEDIFF )
- MySQL で出退勤の列を datetime 型で持った場合、列を使用して DATEDIFF と TIMEDIFF で直接計算
- MySQL を UTF-8 環境で作成して、mysqldump.exe でバックアップするバッチファイルのサンプル
- MySQL 5.6 : テストデータ自動作成スクリプト
- PHP + MySQL : Windows の COM を使った ODBC 経由での接続とデータの取得(SELECT)
- VBScript + MySQL : ADO( ODBC ) による接続とデータの取得(SELECT)
- PHP + MySQL : Windows における ODBC 経由での接続とデータの取得(SELECT)
- PHP + MySQL : PDO_MySQL での接続とデータの取得(SELECT)
- PHP + MySQL : MySQL 改良版拡張モジュール mysqli クラスでの接続とデータの取得(SELECT)
- PHP + MySQL : PHP 5.5.0 で非推奨の MySQL 関数での接続とデータの取得(SELECT)