sqlで挿入したばかりのデータのIDを解析します。
ラスト.INSERT_ID:LAST_INSERT_IDはテーブルに関係なくテーブルaにデータを挿入した後、テーブルbにデータを挿入すると、LAST_uINSERT_IDが変わります。多くのユーザがデータを交互に挿入する場合、max(id)は明らかに使えない。これはLAST_を使うべきですINSERT_IDが出ました。LAST_のためですINSERT_IDはConnectionに基づいており、各スレッドが独立したConnectionオブジェクトを使用する限り、LAST_INSERT_ID関数はこのConnection対AUTO_に戻ります。INCREMENT列最新のinsert or udate*が生成する最初のレコードのIDを作成します。この値は他のクライアントに影響されてはいけません。他のクライアントの活動を心配することなく、自分のIDを取り戻すことができます。ロックをかける必要がありません。単一INSERT文を使って複数のレコードを挿入します。 ラスト.INSERT_IDはリストを返します。SELECTラスターが使えます。insert_id()LAST_を調べますINSERT_IDの値.Important:If you insert multiple rows using a single INSERT statement,LAST_INSERT_ID()returns the value generated for the first inserted row only.単一INSERT文を使って複数のレコードを挿入し、 ラスト.INSERT_IDは、挿入された最初のレコードから生成された値のみを返します。 mysql>INSERT INTO VALL(NULL、'aaaaa'),(NULL,'bbb'),(NULL,'ccc') mysql>SELECT*FROM t; +----+------+ | id𞓜name124; +----+------+ | 1|Bob | | 2|aa 124; | 3|bb 124; | 4|ccc 124; +----+------+ mysql>SELECT LAST_INSERT_ID() +------------------+ | ラスト.INSERT_ID()124 +------------------+ | 2| +------------------+ ID 2は、1条目の記録aaaaを挿入する際に発生する.select@IDENTITY:String sql=「select@@IDENTITY」です。@identityは、identity属性(すなわち自己増加列)を持つテーブルに最近データを挿入した時に対応する自己増加列の値を表し、システム定義のグローバル変数です。一般的にシステムで定義されているグローバル変数は、@@で始まり、ユーザー定義変数は@で始まります。例えば、テーブルAがありますが、自増列はidです。Aテーブルに1行のデータを挿入した後、データを挿入した後、増列の値が自動的に101に増加すると、select@dentityによって得られた値は101です。@dentityを使う前提は、insert操作を行った後、select@@dentityを実行する時に接続がオフされていない場合、NULL値が得られます。