Usamos SQL ou linguagem de consulta estruturada para nos comunicar com um banco de dados relacional e criar exibições SQL.
Agora, o que são visualizações SQL? Eles são tabelas virtuais que combinam e armazenam dados de tabelas de banco de dados reais que você cria. Por sua vez, você obtém acesso seguro e simplificado ao seu conjunto de dados enquanto oculta as estruturas e implementações subjacentes da tabela.
Então, como isso funciona? Você já sabe que as consultas SQL são usadas para criar exibições SQL. Quando a visualização SQL é criada, a consulta SQL subjacente é armazenada. Quando você usa uma consulta SQL para pesquisar dados de várias tabelas, a consulta é executada e ajuda a buscar dados das tabelas de banco de dados correspondentes. Da mesma forma, quando você consulta uma exibição SQL criada, a consulta armazenada é primeiro buscada e depois executada.
últimas postagens
Como a criação de exibições SQL é útil?
Como as exibições SQL são apoiadas por consultas SQL armazenadas, elas ajudam a tornar seu banco de dados seguro. Eles também simplificam consultas complexas e aumentam o desempenho de suas consultas, entre outros benefícios. Vamos ver como a criação de visualizações SQL pode ser benéfica para seu banco de dados e seus aplicativos:
#1. Fornece segurança de banco de dados
As exibições SQL atuam como tabelas virtuais e ocultam as estruturas das tabelas reais do banco de dados. Portanto, apenas olhando para uma view, não é possível saber quantas tabelas existem e quais são as diferentes colunas da tabela. Além disso, você pode adicionar restrições de controle de acesso ao seu banco de dados para que um usuário possa consultar apenas a exibição e não as tabelas reais.
#2. Simplifica consultas complexas
Muitas vezes, suas consultas SQL se estendem por várias tabelas com condições de junção complexas. Se estiver usando essas consultas complexas com frequência, você pode aproveitar o poder de criar exibições SQL. Você pode armazenar sua consulta complexa em sua visualização SQL. Com isso, você pode simplesmente consultar a exibição em vez de executar toda a consulta complexa.
#3. Mitiga Contra a Mudança de Esquema
Se suas estruturas de tabela subjacentes forem alteradas, como a adição ou remoção de colunas, suas exibições permanecerão inalteradas. Se você está contando com suas visualizações SQL para todas as suas consultas, não precisa se preocupar com a alteração do esquema. Sendo tabelas virtuais, sua visualização SQL criada continuará a funcionar perfeitamente.
#4. Melhora o desempenho da consulta
Ao criar exibições SQL, o mecanismo de banco de dados otimiza a consulta subjacente antes de armazená-los. Uma consulta armazenada é executada mais rapidamente do que executar a mesma consulta diretamente. Assim, usar exibições SQL para consultar seus dados oferece melhor desempenho e resultados mais rápidos.
Como criar visualizações SQL?
Para criar exibições SQL, você pode usar o comando CREATE VIEW. Uma exibição contém uma instrução SELECT. Isso fornece a consulta que será armazenada na exibição. A sintaxe é a seguinte:
CREATE VIEW view_name AS SELECT column_1, column_2, column_3... FROM table_name_1, table_name_2 WHERE condition_clause
Vamos entender isso usando um exemplo. Considere que você criou duas tabelas departamento e funcionário. O departamento contém o nome do departamento e seu ID. Assim, a tabela de funcionários contém o nome e o ID do funcionário, juntamente com o ID do departamento ao qual ele pertence. Você usará essas duas tabelas para criar sua visualização SQL.
Crie suas tabelas de banco de dados
departamento_iddepartment_name1Finanças2Tecnologia3NegóciosTabela 1: departamento
Se você estiver usando MySQLvocê pode criar essa tabela usando a seguinte consulta:
CREATE TABLE `department` ( `department_id` int, `department_name` varchar(255), PRIMARY KEY (`department_id`) );
Insira os dados na tabela que você criou usando o SQL abaixo:
INSERT INTO department VALUES (1, 'Finance'); INSERT INTO department VALUES (2, 'Technology'); INSERT INTO department VALUES (3, 'Business');
employee_idemployee_namedepartment_id100John3101Mary1102Natalya3103Bruce2Tabela 2: funcionário
Com a tabela de departamentos pronta e preenchida com dados, crie a tabela de funcionários usando a consulta MySQL abaixo:
CREATE TABLE `employee` ( `employee_id` INT, `employee_name` VARCHAR(255), `department_id` INT, FOREIGN KEY (`department_id`) REFERENCES department(department_id) );
Em seguida, insira os registros dos funcionários em sua tabela. Lembre-se de que, como a coluna Department_id possui uma referência de chave estrangeira com a tabela Department, você não pode inserir um Department_id que não esteja presente na outra tabela.
INSERT INTO employee VALUES (100, 'John', 3); INSERT INTO employee VALUES (101, 'Mary', 1); INSERT INTO employee VALUES (102, 'Natalya', 3); INSERT INTO employee VALUES (103, 'Bruce', 1);
Consultar suas tabelas de banco de dados
Vamos usar as tabelas em uma consulta de banco de dados. Considere o caso em que você precisa consultar o Employees_id, Employees_name e Department_name para todos os funcionários. Nesse caso, você precisa usar as duas tabelas e juntá-las usando a coluna comum, que é o departamento_id. Sua consulta torna-se assim:
SELECT employee_id, employee_name, department_name FROM employee, department WHERE employee.department_id = department.department_id;
Crie sua visualização SQL
Agora, pode acontecer que você esteja frequentemente procurando ou fazendo referência a esses dados. Além disso, com o tempo, com mais registros em suas tabelas, seu tempo de consulta começaria a aumentar. Nesse cenário, você pode criar a exibição SQL correspondente a essa consulta.
Use a consulta a seguir para criar uma exibição chamada employee_info:
CREATE VIEW employee_info AS SELECT employee_id, employee_name, department_name FROM employee, department WHERE employee.department_id = department.department_id;
Com essa visualização em vigor, você pode consultar diretamente o mesmo. Sua consulta é, portanto, simplificada para:
SELECT * FROM employee_info;
Consultar a exibição SQL fornece a mesma saída que executar sua consulta original. No entanto, sua consulta agora é fácil de manter. A exibição oculta as complexidades de sua consulta sem comprometer o resultado ou o desempenho.
Como substituir exibições SQL?
Se você tem uma visão com um nome específico e deseja modificá-la ou substituí-la, use o comando CREATE OR REPLACE VIEW. Usando isso, você pode modificar a instrução SELECT que foi usada para criar a exibição. Portanto, sua saída de visualização é substituída, mantendo o nome da visualização intacto. Além disso, você cria uma nova exibição SQL se ela não existir.
Você pode substituir exibições SQL usando a seguinte sintaxe:
CREATE OR REPLACE VIEW view_name AS SELECT new_column_1, new_column_2, new_column_3 ... FROM new_table_name_1, new_table_name_2 ... WHERE new_condition_clause
Você pode entender isso melhor com um exemplo. Considere o departamento e as tabelas de funcionários. Uma exibição SQL de Employees_info é criada a partir deles, que contém as colunas Employees_id, Employees_name e Department_name.
Considerando questões de segurança, talvez você queira remover o employee_id dessa exibição. Além disso, você também deseja alterar os nomes das colunas para ocultar as colunas reais do banco de dados. Você pode fazer essas alterações na exibição existente usando a seguinte consulta SQL:
CREATE OR REPLACE VIEW employee_info AS SELECT employee_name as name, department_name as department FROM employee, department WHERE employee.department_id = department.department_id;
Depois que a exibição for substituída, você obterá resultados diferentes ao usar a mesma consulta que estava usando antes. Por exemplo, no resultado da consulta, você descobrirá que uma das colunas foi eliminada. Além disso, os nomes das colunas foram modificados de Employees_name e Department_name para Name e Department, respectivamente.
Aproveite o poder de criar exibições SQL
A criação de exibições de SQL não apenas oferece consultas simplificadas e pesquisa de dados mais rápida, mas também segurança e proteção contra alterações de esquema. A criação de exibições SQL é bastante direta. Você pode pegar qualquer consulta existente e transformá-la em uma visualização SQL.
Use o guia passo a passo acima para criar exibições SQL e utilizar suas vantagens. Com visualizações SQL, você pode tornar seus aplicativos de banco de dados simples e seguros enquanto aumenta seu desempenho.
Se você deseja gerenciar seu próprio servidor SQL, consulte o SQL Server Management Studio (SSMS).