Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

4 maneiras de listar todas as visualizações no MySQL


Abaixo estão quatro maneiras de listar as visualizações em um banco de dados MySQL usando SQL ou a linha de comando.

O SHOW TABLES Comando


O SHOW TABLES O comando lista o não-TEMPORARY tabelas, sequências e visualizações em um determinado banco de dados MySQL. Podemos usar o WHERE cláusula para reduzi-lo a apenas visualizações.

Também podemos usar o FULL modificador para retornar uma segunda coluna que exibe o tipo:
SHOW FULL TABLES
WHERE Table_Type LIKE 'VIEW'; 

Resultado:
+-----------------+------------+| Tables_in_music | Table_type |+-----------------+------------+| valbumsartistas | VER || valbumsgêneros | VER || vallabums | VER || vallartistas | VER || valgêneros | VER |+-----------------+------------+

Omitindo o WHERE cláusula retorna todos os tipos:
SHOW FULL TABLES; 

Resultado:
+-----------------+------------+| Tables_in_music | Table_type |+-----------------+------------+| Álbuns | TABELA DE BASE || Artistas | TABELA DE BASE || Gêneros | TABELA DE BASE || valbumsartistas | VER || valbumsgêneros | VER || vallabums | VER || vallartistas | VER || valgêneros | VER |+-----------------+------------+

O SHOW TABLE STATUS Comando


No MySQL, o SHOW TABLE STATUS comando é semelhante ao SHOW TABLES mas fornece informações mais extensas sobre cada um (não-TEMPORARY ) tabela.

Exemplo:
SHOW TABLE STATUS; 

Resultado:
+-----+--------+---------+---------- --+------+----------------+-------------+--------- --------+--------------+-----------+------------- --+---------------------+---------------------+--- ---------+--------------------+----------+-------- --------+---------+| Nome | Motor | Versão | Formato_linha | Linhas | Avg_row_length | Data_length | Max_data_length | Comprimento_índice | Data_free | Auto_increment | Criar_hora | Update_time | Check_time | Agrupamento | Soma de verificação | Criar_opções | Comente |+----------------+--------+---------+----------- -+------+----------------+-------------+---------- -------+--------------+-----------+--------------- -+---------------------+---------------------+---- --------+--------------------+----------+--------- -------+---------+| Álbuns | InnoDB | 10 | Dinâmico | 20 | 819 | 16384 | 0 | 32768 | 0 | 21 | 13/11/2021 12:56:02 | 13/11/2021 12:56:13 | NULO | utf8mb4_0900_ai_ci | NULO | | || Artistas | InnoDB | 10 | Dinâmico | 16 | 1024 | 16384 | 0 | 0 | 0 | 17 | 13/11/2021 12:56:02 | 13/11/2021 12:56:13 | NULO | utf8mb4_0900_ai_ci | NULO | | || Gêneros | InnoDB | 10 | Dinâmico | 8 | 2048 | 16384 | 0 | 0 | 0 | 9 | 13/11/2021 12:56:02 | 13/11/2021 12:56:13 | NULO | utf8mb4_0900_ai_ci | NULO | | || valbumsartistas | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | 2021-11-15 06:02:24 | NULO | NULO | NULO | NULO | NULO | VER || valbumsgêneros | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | 2021-11-15 06:09:47 | NULO | NULO | NULO | NULO | NULO | VER || vallabums | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | 2021-11-15 06:12:51 | NULO | NULO | NULO | NULO | NULO | VER || vallartistas | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | 2021-11-15 06:13:02 | NULO | NULO | NULO | NULO | NULO | VER || valgêneros | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | NULO | 2021-11-15 06:12:36 | NULO | NULO | NULO | NULO | NULO | VER |+----------------+--------+---------+----------- -+------+----------------+-------------+---------- -------+--------------+-----------+--------------- -+---------------------+---------------------+---- --------+--------------------+----------+--------- -------+---------+

Ele também aceita um WHERE e LIKE cláusula caso você queira restringir os resultados.

O information_schema.TABLES Tabela


Também podemos consultar o information_schema.TABLES tabela:
SELECT 
    TABLE_SCHEMA, 
    TABLE_NAME,
    TABLE_TYPE
FROM 
    information_schema.TABLES 
WHERE 
    TABLE_SCHEMA LIKE 'music' AND TABLE_TYPE LIKE 'VIEW'; 

Resultado:
+--------------+----------------+------------+| TABLE_SCHEMA | TABLE_NAME | TABLE_TYPE |+--------------+----------------+------------+| Música | valbumsartistas | VER || Música | valbumsgêneros | VER || Música | valgêneros | VER || Música | vallabums | VER || Música | vallartistas | VER |+----------+----------------+------------+ 
Nesse caso, retornei todas as visualizações do banco de dados chamado music . Consultando isso sem filtrar os resultados por TABLE_SCHEMA retorna visualizações de todos os bancos de dados. Da mesma forma, consultando sem filtrar por TABLE_TYPE retorna todos os tipos de tabela.

O mysqlshow Cliente


Outra maneira de fazer isso é com o mysqlshow Utilitário.

Para usar esta opção, abra um prompt de linha de comando/janela de terminal e execute o seguinte:
mysqlshow --user root --password music; 

Certifique-se de substituir music com o banco de dados em que você está interessado e root com o usuário aplicável. A --password bit resulta na solicitação da senha ao usuário.

Resultado:
Digite a senha:Banco de dados:music+----------------+| Mesas |+----------------+| Álbuns || Artistas || Gêneros || valbumsartists || valbumsgêneros || vallalbums || vallartistas || vallgêneros |+----------------+

O mysqlshow cliente retorna visualizações e tabelas.

A saída exibe apenas os nomes dos bancos de dados, tabelas ou colunas para os quais o usuário tem alguns privilégios.

Se nenhum banco de dados for fornecido, todos os bancos de dados correspondentes serão mostrados. Se nenhuma tabela for fornecida, todas as tabelas correspondentes no banco de dados serão mostradas. Se nenhuma coluna for fornecida, todas as colunas e tipos de coluna correspondentes na tabela serão mostrados.