From 219b6e0003a6a9ef26ae77e0ab42cf70df766c0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dani=C3=ABl=20van=20Eeden?= Date: Tue, 9 Apr 2024 22:07:23 +0200 Subject: [PATCH] ebnf show table next rowid --- .../sql-statement-show-table-next-rowid.md | 25 ++++++++----------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/sql-statements/sql-statement-show-table-next-rowid.md b/sql-statements/sql-statement-show-table-next-rowid.md index 98171492513f7..1159e0c54ef70 100644 --- a/sql-statements/sql-statement-show-table-next-rowid.md +++ b/sql-statements/sql-statement-show-table-next-rowid.md @@ -8,34 +8,29 @@ aliases: ['/docs/dev/sql-statements/sql-statement-show-table-next-rowid/'] `SHOW TABLE NEXT_ROW_ID` is used to show the details of some special columns of a table, including: -* `AUTO_INCREMENT` column automatically created by TiDB, namely, `_tidb_rowid` column. +* [`AUTO_INCREMENT`](/auto-increment.md) column automatically created by TiDB, namely, `_tidb_rowid` column. * `AUTO_INCREMENT` column created by users. * [`AUTO_RANDOM`](/auto-random.md) column created by users. * [`SEQUENCE`](/sql-statements/sql-statement-create-sequence.md) created by users. ## Synopsis -**ShowTableNextRowIDStmt:** - -![ShowTableNextRowIDStmt](/media/sqlgram/ShowTableNextRowIDStmt.png) - -**TableName:** - -![TableName](/media/sqlgram/TableName.png) +```ebnf+diagram +ShowTableNextRowIDStmt ::= + "SHOW" "TABLE" (SchemaName ".")? TableName "NEXT_ROW_ID" +``` ## Examples For newly created tables, `NEXT_GLOBAL_ROW_ID` is `1` because no Row ID is allocated. -{{< copyable "sql" >}} - ```sql -create table t(a int); +CREATE TABLE t(a int); Query OK, 0 rows affected (0.06 sec) ``` ```sql -show table t next_row_id; +SHOW TABLE t NEXT_ROW_ID; +---------+------------+-------------+--------------------+ | DB_NAME | TABLE_NAME | COLUMN_NAME | NEXT_GLOBAL_ROW_ID | +---------+------------+-------------+--------------------+ @@ -44,16 +39,16 @@ show table t next_row_id; 1 row in set (0.00 sec) ``` -Data have been written to the table. The TiDB server that inserts the data allocates and caches 30000 IDs at once. Thus, NEXT_GLOBAL_ROW_ID is 30001 now. +Data have been written to the table. The TiDB server that inserts the data allocates and caches 30000 IDs at once. Thus, NEXT_GLOBAL_ROW_ID is 30001 now. The number of IDs is controled by the [`AUTO_ID_CACHE`](/auto-increment.md#auto_id_cache). ```sql -insert into t values (), (), (); +INSERT INTO t VALUES (), (), (); Query OK, 3 rows affected (0.02 sec) Records: 3 Duplicates: 0 Warnings: 0 ``` ```sql -show table t next_row_id; +SHOW TABLE t NEXT_ROW_ID; +---------+------------+-------------+--------------------+ | DB_NAME | TABLE_NAME | COLUMN_NAME | NEXT_GLOBAL_ROW_ID | +---------+------------+-------------+--------------------+