Programação  
 
Rede de conhecimento computador >> Programação >> Programação PHP /MySQL >> Content
O que é a visão em MySQL?
Em mysql, uma view é uma tabela virtual com base no conjunto de resultados de uma instrução SQL. Não armazena dados diretamente. Em vez disso, ele armazena a consulta * que define como recuperar os dados. Quando você consulta uma visão, o MySQL executa a consulta subjacente e retorna o resultado como se fosse uma tabela real.

Pense nisso como uma consulta armazenada.

Aqui está um colapso dos aspectos -chave:

Principais recursos e características das visualizações MySQL:

* Tabela virtual: Uma visão não é uma tabela física. Não ocupa espaço de armazenamento para armazenar dados. É apenas uma definição de uma consulta.
* Baseado em uma consulta: Uma visualização é criada usando uma instrução `Create View`, que inclui uma instrução` select`. Esta instrução `select` especifica como a visualização deve recuperar e apresentar os dados.
* Derivação de dados: As visualizações derivam seus dados de uma ou mais tabelas base subjacentes (ou outras visualizações).
* dados dinâmicos: Os dados exibidos através de uma visualização estão sempre atualizados. Quando você consulta uma visão, o MySQL reexeca a consulta subjacente. Isso garante que você veja os dados mais recentes das tabelas base.
* Visualizações de consulta: Você pode consultar uma visualização, assim como você consultaria uma tabela regular usando as instruções `select`.
* atualizável vs. não atualizado: Algumas visualizações são atualizáveis, o que significa que você pode usar as instruções `insert`,` update` e `delete` para modificar os dados subjacentes através da visualização. No entanto, muitas visualizações não são atualizáveis, especialmente aquelas que envolvem agregações, junções ou colunas calculadas.
* Privilégios : Você pode conceder e revogar privilégios em visualizações, semelhante à maneira como gerencia privilégios nas tabelas.

Benefícios do uso de visualizações:

* Abstração de dados: As vistas oculam a complexidade das tabelas e consultas subjacentes. Você pode criar visualizações que apresentam apenas as colunas relevantes a usuários ou aplicativos específicos.
* Segurança: As visualizações podem restringir o acesso a determinadas colunas ou linhas de uma tabela. Você pode conceder aos usuários acesso a uma visualização que mostra apenas um subconjunto dos dados, sem fornecer acesso direto à tabela subjacente.
* Simplificação de consultas complexas: As vistas permitem que você divida consultas complexas em peças menores e mais gerenciáveis. Você pode criar uma visualização para cada etapa do processo e, em seguida, combinar essas visualizações para obter o resultado final.
* Consistência de dados: Se você precisar usar a mesma consulta em vários lugares, poderá defini -la como uma visualização. Isso garante que a consulta seja consistente em todos os usos. Se você precisar alterar a consulta, só precisará modificar a definição de visualização.
* REUSIBILIDADE DE CÓDIGO: As visualizações encapsulam consultas, permitindo que você as reutilize em diferentes aplicativos ou relatórios.
* Renomear colunas: As visualizações permitem renomear colunas das tabelas subjacentes, fornecendo nomes mais descritivos ou amigáveis.

Exemplo:

Digamos que você tenha uma tabela chamada 'funcionários' com as seguintes colunas:

* `funcionário_id`
* `First_Name`
* `last_name`
* `departamento`
* `Salário`

Você pode criar uma visualização chamada `gerentes ', que mostra apenas os funcionários que são gerentes e seu nome completo:

`` `SQL
Criar gerentes de visão como
Selecione
funcionário_id,
Concat (primeiro_name, '', last_name) como full_name,
departamento,
salário
DE
funcionários
ONDE
departamento ='gestão';
`` `

Agora, você pode consultar a visualização de `gerentes` assim:

`` `SQL
Selecione * dos gerentes;
`` `

Isso retornará apenas os funcionários que trabalham no departamento de 'gerenciamento', juntamente com seu ID, nome completo (calculado do primeiro e do sobrenome), departamento e salário. Você não precisa repetir a função `concat` ou a cláusula` where 'toda vez que deseja ver essas informações.

Criando uma visualização:

`` `SQL
Crie View View_name como
Selecione Column1, Column2, ...
De table_name
Onde condição;
`` `

descartando uma visualização:

`` `SQL
Soltar view view_name;
`` `

Considerações importantes:

* desempenho: Embora as visões ofereçam muitas vantagens, às vezes podem afetar o desempenho se a consulta subjacente for complexa. O MySQL precisa executar a consulta toda vez que a visualização é acessada. Considere o uso de visualizações materializadas (se suportadas pela sua versão ou configuração do MySQL) ou otimizando cuidadosamente a consulta se o desempenho se tornar um problema.
* Restrições de atualização: Nem todas as visualizações são atualizáveis. Visualizações com junções, agregações (por exemplo, `sum`,` avg`), `distinct`,` grupo por `ou certas subconsências normalmente não são atualizáveis. O MySQL geralmente lhe dará um erro se você tentar modificar uma visualização não atualizável.
* Dependências: As visões dependem das tabelas subjacentes. Se você soltar ou modificar uma tabela usada por uma visualização, a visualização poderá se tornar inválida.

Em resumo, as visualizações são uma ferramenta poderosa no MySQL para simplificar consultas, melhorar a abstração de dados e aumentar a segurança. Eles fornecem uma maneira de criar tabelas virtuais que apresentam dados de maneira personalizada e reutilizável. Lembre -se de considerar as implicações de atualização e desempenho ao projetar e usar as visualizações.

Anterior :

Próximo :
  Os artigos relacionados
·Como você instala o Apache 2 e o PHP? 
·Como Batch Enviar e-mail em PHP 
·Como saber MySQL Query manter espaço em branco 
·Como usar um cliente de serviços Web 
·O Joomla usar uma grande quantidade de memória RAM 
·MySQL PHP Apache Tutorial 
·Como parar uma consulta no MySQL 
·Como converter uma String para PHP Data 
·Páginas dinâmicas em PHP 
·Como alterar o nome do campo em uma tabela MySQL 
  Artigos em destaque
·Como carregar Certificados do Windows keystore com Visu…
·Tipos incompatíveis Usando CAST método da classe em J…
·Quando um usuário executa um programa em qual área da…
·Como vincular um banco de dados para uma caixa de combi…
·Compare e contraste a prototipagem descartável de prog…
·Como faço para criar um botão barra de ferramentas us…
·Como obter o valor de um código em XML em um Android 
·Como converter DataTables para Cordas 
·Como descobrir se uma fonte é monoespaçada em Java 
·Por que o JavaScript não é programação lateral do s…
Cop e direita © Rede de conhecimento computador https://ptcomputador.com Todos os Direitos Reservados