テーブルの NEXT_ROW_ID を表示

SHOW TABLE NEXT_ROW_IDは、次のようなテーブルのいくつかの特別な列の詳細を表示するために使用されます。

  • TiDB によって自動的に作成されるAUTO_INCREMENT列、つまり_tidb_rowid列。
  • ユーザーが作成したAUTO_INCREMENT列。
  • ユーザーが作成したAUTO_RANDOM列。
  • SEQUENCEユーザーによって作成されました。

あらすじ

ShowTableNextRowIDStmt:

ShowTableNextRowIDStmt

テーブル名:

TableName

新しく作成されたテーブルの場合、Row ID が割り当てられていないため、 NEXT_GLOBAL_ROW_ID1です。

create table t(a int); Query OK, 0 rows affected (0.06 sec)
show table t next_row_id; +---------+------------+-------------+--------------------+ | DB_NAME | TABLE_NAME | COLUMN_NAME | NEXT_GLOBAL_ROW_ID | +---------+------------+-------------+--------------------+ | test | t | _tidb_rowid | 1 | +---------+------------+-------------+--------------------+ 1 row in set (0.00 sec)

テーブルにデータが書き込まれました。データを挿入する TiDBサーバーは、一度に 30000 個の ID を割り当ててキャッシュします。したがって、NEXT_GLOBAL_ROW_ID は現在 30001 です。

insert into t values (), (), (); Query OK, 3 rows affected (0.02 sec) Records: 3 Duplicates: 0 Warnings: 0
show table t next_row_id; +---------+------------+-------------+--------------------+ | DB_NAME | TABLE_NAME | COLUMN_NAME | NEXT_GLOBAL_ROW_ID | +---------+------------+-------------+--------------------+ | test | t | _tidb_rowid | 30001 | +---------+------------+-------------+--------------------+ 1 row in set (0.00 sec)

MySQL の互換性

このステートメントは、MySQL 構文に対する TiDB 拡張です。

こちらもご覧ください

このページは役に立ちましたか?

Playground
登録なしで TiDB の機能をワンストップでインタラクティブに体験できます。
製品
TiDB Dedicated
TiDB Serverless
TiDB
価格
PoC お問い合わせ
エコシステム
TiKV
TiFlash
OSS Insight
© 2024 PingCAP. All Rights Reserved.
Privacy Policy.