テーブルNEXT_ROW_IDを表示

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

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

概要

ShowTableNextRowIDStmt
SHOWTABLESchemaName.TableNameNEXT_ROW_ID

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

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 です。ID の数はAUTO_ID_CACHEで制御されます。

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.