MySQL Visualizações: Como criar visualizações a partir de tabelas
⚡ Resumo Inteligente
MySQL As views são tabelas virtuais que não armazenam dados próprios e, em vez disso, apresentam o resultado de uma consulta SELECT armazenada. Este recurso explica como criar, consultar, unir e excluir views, com exemplos executáveis do banco de dados myflixdb.

O que são visualizações em MySQL?
VISTAS são tabelas virtuais que não armazenam nenhum dado próprio, mas exibem dados armazenados em outras tabelas. Em outras palavras, VIEWS nada mais são do que consultas SQL. Uma visualização pode conter todas ou algumas linhas de uma tabela. A MySQL view pode mostrar dados de uma tabela ou de várias tabelas.
MySQL Sintaxe de visualizações
Vejamos agora a sintaxe básica usada para criar uma visualização em MySQL.
CREATE VIEW `view_name` AS SELECT statement;
ONDE
- “CRIAR VISUALIZAÇÃO `view_name`” conta MySQL servidor para criar um objeto de visualização no banco de dados chamado `view_name`
- “Instrução AS SELECT” são as instruções SQL a serem compactadas no MySQL Visualizações. Pode ser uma instrução SELECT que pode conter dados de uma tabela ou de várias tabelas.
Por que usar visualizações?
Antes de construir uma casa com vista, é útil saber o que ela realmente proporciona.
Você pode querer usar visualizações principalmente pelos seguintes três motivos
- Em última análise, você usará o seu SQL É necessário conhecimento para criar aplicações que utilizem um banco de dados para atender às suas necessidades de dados. Recomenda-se o uso de VIEWS (views) da estrutura original das tabelas em sua aplicação, em vez de utilizar as próprias tabelas. Isso garante que, ao refatorar seu banco de dados, seu código legado ainda poderá visualizar o esquema original por meio da view, sem quebrar a aplicação.
- VIEWS aumentam a reutilização. Você não terá que criar consultas complexas envolvendo junções repetidamente. Toda a complexidade é convertida em uma única linha de consulta usando VIEWS. Esse código condensado será mais fácil de integrar em seu aplicativo. Isso eliminará chances de erros de digitação e seu código ficará mais legível.
- VIEWS ajudam na segurança dos dados. Você pode usar visualizações para mostrar apenas informações autorizadas aos usuários e ocultar dados confidenciais, como números de cartão de crédito.
Como criar visualizações em MySQL
Com a sintaxe e os benefícios estabelecidos, os passos abaixo criam uma visualização funcional de ponta a ponta.
A seguir está um processo passo a passo para criar uma visualização em MySQL:
Passo 1) Crie nossa primeira visualização usando o “myflixdb”
Vamos agora criar nossa primeira view utilizando o “myflixdb” vamos criar uma view simples que restringe as colunas vistas na tabela de membros.
Suponha que os requisitos de autorização especifiquem que o departamento de contabilidade só pode visualizar o número, o nome e o sexo do membro na tabela de membros. Para isso, você pode criar uma VIEW –
CREATE VIEW `accounts_v_members` AS SELECT `membership_number`,`full_names`,`gender` FROM `members`;
Passo 2) Expandindo o nó de visualizações
Executando o script acima em MySQL workbench contra o myflixdb e expandir o nó de visualizações no explorador de banco de dados nos dá os seguintes resultados.
Observe que o objeto accounts_v_members agora está visível nos objetos de visualizações do banco de dados.
Passo 3) Execute uma instrução SELECT
Vamos agora executar um Instrução SELECT que seleciona todos os campos da visualização conforme mostrado abaixo MySQL criar exemplo de visualização.
SELECT * FROM `accounts_v_members`;
Passo 4) Executar um script
Executando o script acima em MySQL workbench contra myflixdb nos dá os seguintes resultados mostrados abaixo.
| membership_number | full_names | gender |
|---|---|---|
| 1 | Janet Jones | Female |
| 2 | Janet Smith Jones | Female |
| 3 | Robert Phil | Male |
| 4 | Gloria Williams | Female |
| 5 | Leonard Hofstadter | Male |
| 6 | Sheldon Cooper | Male |
| 7 | Rajesh Koothrappali | Male |
| 8 | Leslie Winkle | Male |
| 9 | Howard Wolowitz | Male |
Apenas as colunas autorizadas para o departamento de contabilidade foram retornadas. Outros detalhes encontrados na tabela de membros foram ocultados.
Se quisermos ver as instruções SQL que constituem uma visualização específica, podemos usar o script mostrado abaixo para fazer isso.
SHOW CREATE VIEW `accounts_v_members`;
A execução do script acima fornece o nome da visualização e as instruções SQL SELECT usadas para criar a visualização.
Junções e visualizações em MySQL
Uma visualização de tabela única é o caso mais simples. As visualizações tornam-se muito mais valiosas quando englobam uma consulta de várias tabelas.
Vejamos agora um exemplo bastante complexo que envolve múltiplas tabelas e utiliza junta.
Iremos empacotar o JOIN criado que obtém informações de três (3) tabelas, nomeadamente membros, filmes e locações de filmes. Abaixo está o script que nos ajuda a conseguir isso.
CREATE VIEW `general_v_movie_rentals` AS SELECT mb.`membership_number`,mb.`full_names`,mo.`title`,mr.`transaction_date`,mr.`return_date` FROM `movierentals` AS mr INNER JOIN `members` AS mb ON mr.`membership_number` = mb.`membership_number` INNER JOIN `movies` AS mo ON mr.`movie_id` = mo.`movie_id`;
A execução dos scripts acima cria a visualização chamada general_v_movie_rentals em nosso myflixdb
Vamos agora selecionar todos os campos de uma tabela chamada general_v_movie_rentals.
SELECT * FROM `general_v_movie_rentals`;
Executando o script acima em MySQL bancada contra o myflixdb nos dá os seguintes resultados mostrados abaixo.
| membership_number | full_names | title | transaction_date | return_date |
|---|---|---|---|---|
| 1 | Janet Jones | Pirates of the Caribean 4 | 20-06-2012 | 28-06-2012 |
| 1 | Janet Jones | Forgetting Sarah Marshal | 22-06-2012 | 25-06-2012 |
| 3 | Robert Phil | Forgetting Sarah Marshal | 22-06-2012 | 25-06-2012 |
| 2 | Janet Smith Jones | Forgetting Sarah Marshal | 21-06-2012 | 24-06-2012 |
| 3 | Robert Phil | X-Men | 23-06-2012 | 28-06-2012 |
Observe que não precisamos escrever a complexa consulta JOIN para obter informações sobre membros, filmes e detalhes de aluguel de filmes. Simplesmente usamos a visão em uma instrução SELECT regular como qualquer outra tabela comum. A visualização pode ser chamada de qualquer lugar no sistema do aplicativo em execução no myflixdb.
Cairping Visualizações em MySQL
O comando DROP pode ser usado para excluir uma visualização do banco de dados isso não é mais necessário. A sintaxe básica para eliminar uma visualização é a seguinte.
DROP VIEW `general_v_movie_rentals`;
Cairping Uma view remove apenas a consulta armazenada; as tabelas subjacentes e seus dados permanecem intactos.

