Visualização de exibição do MySQL

Resumo : neste tutorial, você aprenderá como mostrar todas as visualizações em um banco de dados MySQL usando a SHOW FULL TABLEinstrução ou consultando informações do dicionário de dados.

O SHOW FULL TABLESretorna uma lista de visualizações em um banco de dados especificado. Se você deseja exibir a instrução que cria a visualização, confira o tutorial da instrução SHOW CREATE VIEW .

MySQL Show View – Usando a instrução SHOW FULL TABLES

O MySQL trata as visualizações como tabelas com o tipo 'VIEW'. Portanto, você pode usar a SHOW FULL TABLESinstrução para exibir todas as visualizações no banco de dados atual da seguinte maneira:

SHOW FULL TABLES 
WHERE table_type = 'VIEW';Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Como a SHOW FULL TABLESinstrução retorna tabelas e visualizações, precisamos adicionar uma WHEREcláusula para obter apenas visualizações.

Se quiser mostrar todas as visualizações em um banco de dados específico, você pode usar a cláusula FROMou INna SHOW FULL TABLESinstrução:

SHOW FULL TABLES
[{FROM | IN } database_name]
WHERE table_type = 'VIEW';Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Nesta sintaxe, você especifica um nome de banco de dados do qual deseja obter as visualizações após a cláusula FROMou IN.

Por exemplo, a instrução a seguir mostra todas as visualizações do sysbanco de dados:

SHOW FULL TABLES IN sys 
WHERE table_type='VIEW';Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Se quiser encontrar visualizações que correspondam a um padrão, você pode usar a LIKEcláusula a seguir:

SHOW FULL TABLES
[{FROM | IN } database_name]
LIKE pattern;Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Por exemplo, a instrução a seguir usa a LIKEcláusula para localizar todas as visualizações do sysbanco de dados, cujos nomes começam com waits:

SHOW FULL TABLES 
FROM sys
LIKE 'waits%';Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Aqui está a saída:

visualização de exibição do mysql

Observe que a SHOW TABLESinstrução retorna apenas as visualizações que você tem privilégio de acessar.

MySQL Show View – Usando banco de dados INFORMATION_SCHEMA

O information_schemabanco de dados fornece acesso aos metadados do banco de dados MySQL, como bancos de dados, tabelas, tipos de dados de colunas ou privilégios. O esquema de informações também é conhecido como dicionário de banco de dados ou catálogo de sistema.

Para mostrar as visualizações de um banco de dados, você usa a tablestabela do information_schemabanco de dados:

SELECT * 
FROM information_schema.tables;Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Aqui está a saída parcial:

As colunas relevantes para as visualizações são:

  • A table_schemacoluna armazena o esquema ou banco de dados da visualização (ou tabela).
  • A table_namecoluna armazena o nome da visualização (ou tabela).
  • A table_typecoluna armazena o tipo de tabelas: BASE TABLEpara uma tabela, VIEWpara uma visualização ou SYSTEM VIEWpara uma INFORMATION_SCHEMAtabela.

Por exemplo, esta consulta retorna todas as visualizações do classicmodelsbanco de dados:

SELECT 
    table_name view_name
FROM 
    information_schema.tables 
WHERE 
    table_type   = 'VIEW' AND 
    table_schema = 'classicmodels';Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Para encontrar as visualizações que correspondem a um padrão, você usa a table_namecoluna. Por exemplo, esta consulta encontra todas as visualizações cujos nomes começam com customer:

SELECT 
    table_name view_name
FROM 
    information_schema.tables 
WHERE 
    table_type   = 'VIEW' AND 
    table_schema = 'classicmodels' AND
    table_name   LIKE 'customer%';Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Resumo

  • Use the SHOW FULL TABLEcom the type_type VIEWpara retornar todas as visualizações do banco de dados atual.
  • Use a instrução SHOW FULL TABLE FROM(ou IN) para obter todas as visualizações em um banco de dados especificado.
  • Adicione a LIKEcláusula à SHOW FULL TABLEinstrução para obter as visualizações que correspondem a um padrão.
  • Consulte os dados da tabela information_schema.tablespara obter as visualizações em um banco de dados.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *