MySQLでAUTO_INCREMENTにより直近に採番されたシーケンス番号を確認する方法
LAST_INSERT_ID()関数を使った最新の採番値の確認方法
MySQLでは、LAST_INSERT_ID()関数を使用することで、AUTO_INCREMENTによって直近に割り当てられたシーケンス番号(自動採番された値)を簡単に確認できます。
この関数は、現在の接続(セッション)内で最後にINSERT文によって生成されたAUTO_INCREMENTの値を返します。他のユーザーや他の接続が同時にデータを挿入していても影響を受けないため、マルチユーザー環境でも安全に利用できるのが特徴です。
使用例
ここでは、Employeeテーブルを作成し、2件のレコードを挿入した後、LAST_INSERT_ID()で最新の採番値を確認します。
mysql> Create table Employee(Id INT PRIMARY KEY NOT NULL AUTO_INCREMENT, Name Varchar(5));
Query OK, 0 rows affected (0.13 sec)
mysql> Insert into Employee(Name) Values('Harvinder');
Query OK, 1 row affected (0.06 sec)
mysql> Insert into Employee(Name) Values('Suresh');
Query OK, 1 row affected (0.07 sec)
mysql> Select* from Employee;
+----+-----------+
| Id | Name |
+----+-----------+
| 1 | Harvinder |
| 2 | Suresh |
+----+-----------+
2 rows in set (0.00 sec)
mysql> Select Last_insert_id();
+------------------+
| Last_insert_id() |
+------------------+
| 2 |
+------------------+
1 row in set (0.00 sec)実行結果のポイント
上記の例では、EmployeeテーブルのIdカラムにAUTO_INCREMENTが設定されているため、INSERTのたびに「1」「2」という連番が自動的に割り当てられています。その後、Select Last_insert_id();を実行すると、直近に挿入されたレコードのIdである「2」が返されます。
注意点
- LAST_INSERT_ID()が返す値はセッションごとに管理されるため、別のクライアントからのINSERTには影響されません。
- 一度もINSERTを行っていないセッションで呼び出した場合は、0が返されます。
- 1回のINSERT文で複数行を挿入した場合は、最初の行に採番された値が返されます。
-
誰があなたをGoogle検索しているのか知る方法はある?
私たちの多くは、「誰かが自分をGoogleで検索しているのを知ることができるのだろうか?」と一度は考えたことがあるのではないでしょうか。もしこの疑問が頭から離れないのであれば、答えをお伝えします。ただし、期待していたものとは少し違うかもしれません。 この記事では、自分を検索している人物を特定できるのかどうか、そしてそのために使える方法について詳しく見ていきます。 誰かがあなたをGoogle検索したことを知ることはできる? 残念な事実として、Googleには誰かがあなたの名前で検索した際に通知してくれる機能は存在しません。 かつてZiggsのようなウェブサービスは、あなたを検索した人物を正確に表
-
Windows 11で使用中のEdgeブラウザーのバージョンを確認する2つの方法
Microsoft EdgeはWindows 10、Mac、Androidなど幅広い環境で利用されており、常に最新の状態に保つことがセキュリティ面でも重要です。しかし、Windows 11で現在使用しているEdgeのバージョンがどれなのか、正確に把握していますか?最も基本的な確認方法は、ブラウザー右上にある「設定など」アイコン(3点リーダー)をクリックし、メニューから「Microsoft Edgeについて」を選択することです。そこでバージョン情報を確認できます。 実は、さらに手軽にバージョンを確認できる方法があります。しかも、Edgeの設定画面を開く必要すらありません。本記事では、その具体的な