L’istruzione SHOW TABLES
elenca lo schema, il nome della tabella, il tipo di tabella, il proprietario e il numero stimato di righe per le tabelle o le viste in uno schema o database.
Mentre una tabella o una vista viene eliminata, SHOW TABLES
elencherà l’oggetto con un (dropped)
suffisso.
Sinossi
Privilegi richiesti
Il privilegio SELECT
su una tabella è necessario per elencarla con SHOW TABLES
.
Parametri
Parametro | Descrizione |
---|---|
database_name |
Il nome del database per cui mostrare le tabelle. |
schema_name |
Il nome dello schema per cui mostrare le tabelle. |
Quando un database_name
e schema_name
sono omessi, vengono elencate le tabelle dello schema corrente nel database corrente.
SHOW TABLES
tenterà di trovare prima uno schema con il nome specificato. Se questo fallisce, cercherà invece di trovare un database con quel nome, ed elencherà le tabelle del suo public
schema. Per maggiori dettagli, vedi Name Resolution.
Esempi
Impostazione
I seguenti esempi usano MovR, un’applicazione fittizia di condivisione di veicoli, per dimostrare le istruzioni SQL di CockroachDB. Per maggiori informazioni sull’applicazione di esempio MovR e sul set di dati, vedere MovR: A Global Vehicle-sharing App.
Per seguire, eseguire cockroach demo
per avviare un cluster temporaneo in-memory con il movr
dataset precaricato:
$ cockroach demo
Mostra le tabelle nel database corrente
SHOW TABLES
utilizza lo schema corrente public
impostato di default in search_path
:
> SHOW TABLES;
schema_name | table_name | type | estimated_row_count--------------+----------------------------+-------+---------------------- public | promo_codes | table | 1000 public | rides | table | 500 public | user_promo_codes | table | 0 public | users | table | 50 public | vehicle_location_histories | table | 1000 public | vehicles | table | 15(6 rows)
In alternativa, nella shell SQL integrata, è possibile utilizzare il comando \dt
shell:
> \dt
schema_name | table_name | type | estimated_row_count--------------+----------------------------+-------+---------------------- public | promo_codes | table | 1000 public | rides | table | 500 public | user_promo_codes | table | 0 public | users | table | 50 public | vehicle_location_histories | table | 1000 public | vehicles | table | 15(6 rows)
Mostra le tabelle in uno schema diverso
È possibile mostrare le tabelle in schemi diversi da quello corrente. Puoi anche mostrare lo schema per tabella:
> SHOW TABLES FROM movr.information_schema;
> SHOW TABLES FROM information_schema;
Perché movr
è il database corrente, queste dichiarazioni restituiscono lo stesso output:
schema_name | table_name | type | estimated_row_count---------------------+-----------------------------------+-------+---------------------- information_schema | administrable_role_authorizations | table | NULL information_schema | applicable_roles | table | NULL information_schema | check_constraints | table | NULL information_schema | column_privileges | table | NULL ...(23 rows)
Mostra le tabelle di un altro database
Puoi anche mostrare le tabelle di un altro database.
> SHOW TABLES FROM system.public;
> SHOW TABLES FROM system;
Perché public
è lo schema corrente, queste dichiarazioni restituiscono lo stesso risultato:
schema_name | table_name | type | estimated_row_count--------------+---------------------------------+-------+---------------------- public | comments | table | NULL public | descriptor | table | NULL public | eventlog | table | NULL public | jobs | table | NULL ...(29 rows)
Puoi usare COMMENT ON
per aggiungere commenti su una tabella.
> COMMENT ON TABLE users IS 'This table contains information about users.';
Per visualizzare i commenti di una tabella:
> SHOW TABLES FROM movr WITH COMMENT;
schema_name | table_name | type | estimated_row_count | comment--------------+----------------------------+-------+---------------------+----------------------------------------------- public | promo_codes | table | 1000 | public | rides | table | 500 | public | user_promo_codes | table | 0 | public | users | table | 50 | This table contains information about users. public | vehicle_location_histories | table | 1000 | public | vehicles | table | 15 |(6 rows)
Puoi anche visualizzare i commenti su una tabella con SHOW CREATE
:
> SHOW CREATE TABLE users;
table_name | create_statement-------------+--------------------------------------------------------------------------- users | CREATE TABLE users ( | id UUID NOT NULL, | city VARCHAR NOT NULL, | name VARCHAR NULL, | address VARCHAR NULL, | credit_card VARCHAR NULL, | CONSTRAINT "primary" PRIMARY KEY (city ASC, id ASC), | FAMILY "primary" (id, city, name, address, credit_card) | ); | COMMENT ON TABLE users IS 'This table contains information about users.'(1 row)
Per maggiori informazioni, vedere COMMENT ON
.
Le tabelle virtuali negli schemi pg_catalog
information_schema
, e crdb_internal
contengono utili commenti, spesso con collegamenti ad ulteriore documentazione.
Per visualizzare le tabelle virtuali con commenti e collegamenti alla documentazione, utilizzare SHOW TABLES FROM <virtual schema> WITH COMMENT
:
> SHOW TABLES FROM information_schema WITH COMMENT;