Buscar

unidade_04_ebook_16

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Grupo SER Educacional | Tecnologias e Linguagens de Banco de Dados 1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Diretor Executivo 
DAVID LIRA STEPHEN BARROS 
 
Direção Editorial 
ANDRÉA CÉSAR PEDROSA 
 
Projeto Gráfico 
MANUELA CÉSAR DE ARRUDA 
 
Autor 
JOÃO DANILO NOGUEIRA 
 
 
Desenvolvedor 
CAIO BENTO GOMES DOS SANTOS 
 
 
 
 
 
 
 
O Autor 
 
 
João Danilo Nogueira 
 
Olá. Meu nome é João Danilo. Sou graduado em Ciência da 
Computação pela Faculdade Grande Fortaleza (FGF) e amo 
programar. Atualmente, o foco de minha expertise é na área de 
gerenciamento de projetos, teoria dos números, RSA e criptografia. 
Vai ser um prazer enorme ajudar VOCÊ a se tornar um excelente 
desenvolvedor de software ou administrador de banco de dados. 
Conte comigo para lhe ajudar nessa trajetória rumo ao seu 
desenvolvimento profissional! Muito sucesso para você. 
 
 
 
JOÃO DANILO NOGUEIRA 
 
“ 
 
 
Iconográficos 
Olá. Meu nome é Manuela César de Arruda. Sou o responsável pelo 
projeto gráfico de seu material. Esses ícones irão aparecer em sua 
trilha de aprendizagem toda vez que: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
INTRODUÇÃO 
para o início do 
desenvolvimento 
de uma nova 
competência; 
DEFINIÇÃO 
houver necessidade 
de se apresentar um 
novo conceito; 
NOTA 
quando forem 
necessários 
observações ou 
complementações 
para o seu 
conhecimento; 
IMPORTANTE 
as observações 
escritas tiveram 
que ser 
priorizadas para 
você; 
EXPLICANDO 
MELHOR 
algo precisa ser 
melhor explicado 
ou detalhado; 
VOCÊ SABIA? 
curiosidades e 
indagações lúdicas 
sobre o tema em 
estudo, se forem 
necessárias; 
SAIBA MAIS 
textos, referências 
bibliográficas e 
links para 
aprofundamento do 
seu conhecimento; 
REFLITA 
se houver a 
necessidade de chamar 
a atenção sobre algo a 
ser refletido ou 
discutido sobre; 
ACESSE 
se for preciso 
acessar um ou mais 
sites para fazer 
download, assistir 
vídeos, ler textos, 
ouvir podcast; 
 
RESUMINDO 
quando for preciso 
se fazer um resumo 
acumulativo das 
últimas abordagens; 
ATIVIDADES 
quando alguma 
atividade de 
autoaprendizagem 
for aplicada; 
TESTANDO 
quando o 
desenvolvimento de 
uma competência for 
concluído e questões 
forem explicadas; 
 
 
Sumário 
1 VIEWS .............................................................................................................. 6 
1.1 Entendendo o conceito ..................................................................................... 7 
1.1.1 Vantagens do uso de views .................................................................... 8 
1.1.2 Desvantagens ....................................................................................... 8 
1.2 Views em MySQL .............................................................................................. 9 
Considerações Finais ............................................................................................ 15 
Atividades de Autoaprendizagem .......................................................................... 15 
Questionário Avaliativo ........................................................................................ 15 
Bibliografia.......................................................................................................... 16 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 6 
 
 
1 Views 
INTRODUÇÃO: 
Chamamos de View, ou Visão, em português, um objeto, 
pertencente a um banco de dados, que é definido por um conjunto 
de comandos SQL. Mas, qual a diferença entre uma View e um 
comando SQL? Simples. Ao ser executado um comando SELECT, seu 
resultado é volátil, ou seja, quando o programa ou procedimento é 
encerrado, o conjunto de linhas proveniente da consulta se desfaz. 
Já no caso de uma View, esse resultado pode ser gravado no banco 
de dados, como se fosse uma tabela normal. A diferença desse 
objeto chamado View, é que ele se comporta como uma tabela 
virtual, ou “Virtual Table”, em inglês. Imagine uma tabela que, na 
realidade, mostra o conteúdo de uma ou mais tabelas do banco de 
dados, podendo ser manipulada como se fosse uma tabela 
independente! É exatamente assim que se comporta uma View 
dentro do banco de dados. 
 
 
 
 
 
 
 
 
 
OBJETIVO: 
Ao término desta aula você será capaz de manipular dados por meio 
de visões (views) envolvendo uma ou mais tabelas. 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 7 
 
 
1.1 Entendendo o conceito 
 
A figura a seguir ilustra bem o que acabamos de falar em nossa 
breve introdução. Perceba que, para o usuário, o fato de a tabela ser 
real ou virtual é irrelevante. O próprio SGBD se encarrega de 
garantir a integridade dos dados, caso o usuário tente modifi car 
dados que violem às relações existentes entre a tabela virtual e as 
tabelas-base, ou “Based Tables”. 
 
 
Figura 1 - Representação didática sobre a estrutura de uma View. 
 
Em alguns casos, as Views podem ser atualizadas por meio dos 
comandos INSERT, UPDATE e DELETE, que, na realidade, alteram os 
dados de suas tabelas-base. 
 
 
 
 
 
Views (ou visões, em português) são estruturas de 
dados virtuais que representam o resultado de uma 
query (consulta) SQL, podendo ser utilizadas como 
filtros para atualização dos dados de suas tabelas-
bases. 
DEFINIÇÃO 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 8 
 
 
 
 
 
 
 
 
 
 
 
1.1.1 Vantagens do uso de views 
 
Sem dúvida, o maior benefício do uso das views é para o próprio 
programador, que só tem o trabalho de montar a consulta SELECT 
uma vez. 
Podemos utilizar uma view para: 
• retornar um valor baseado em um identificador de linha de uma 
tabela; 
• restringir dados para elevar o nível de segurança e definir as 
políticas de acesso das tabelas de um banco de dados; 
• mostrar colunas distintas para diferentes usuários de um mesmo 
banco de dados; 
• ser utilizada com um conjunto de tabelas unidas a outros conjuntos 
através dos comandos JOIN ou UNION. 
 
1.1.2 Desvantagens 
 
Praticamente não se observa qualquer desvantagem no uso de uma 
view. Há quem diga que o tempo de carregamento do arquivo que a 
contém pode representar alguma perda de performance, mas 
sabemos que este tempo é desprezível quando comparado com o 
tempo de acesso aos dados produzido pela própria consulta ou 
atualização SQL. 
Para entendermos melhor, podemos encarar uma 
View como um filtro das informações provenientes de 
uma ou mais tabelas primárias, a partir do qual se 
consegue consultar e atualizar os dados daquelas 
tabelas que deram origem à visão. Diferentemente 
das consultas SELECT convencionais, as views ficam 
armazenadas e podem ser executadas diretamente, 
sempre que necessário. 
EXPLICANDO MELHOR 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 9 
 
 
 
1.2 Views em MySQL 
 
Em um banco de dados MySQL, a sintaxe genérica do comando de 
criação de uma view é a seguinte: 
CREATE [OR REPLACE] 
 [ALGORITHM = tipo de algoritmo] 
 VIEW (nome da view) 
 [(lista de colunas)] 
 AS (sentença Select) 
 [WITH [CASCADED | LOCAL] CHECK OPTION] 
 
Onde: 
• OR REPLACE: substitui a View em vez de cria-la. 
• ALGORITHM: seleciona o tipo de algoritmo interno a ser usado para 
processar a View quando esta for executada. Os tipos aceitos são: 
UNDEFINED (cláusula em branco), MERGE ou TEMPTABLE. 
• Nome da view: é o nome atribuído ao objeto, que no caso, é uma 
View. 
• Lista de colunas: nomes das colunas virtuais, que devem 
sobrescrever os nomes das colunas das tabelas-base recuperadas 
pelo comando SELECT. 
• Sentença Select: declaração SELECT indicando a maneira com a 
qual os dados resultantes da consulta devem ser apresentados naview, podendo incluir as funções JOIN e UNION para envolver outras 
tabelas. 
• WITH check option: quando declarada a opção “check option”, todos 
os comandos escritos para alterar os dados da iew serão 
previamente criticados quanto às regras da condição WHERE 
definidas na declaração SELECT da View. 
A criação de uma view em MySQL gera um arquivo de extensão 
“.frm”, com o mesmo nome da tabela corrente. Este arquivo fica 
gravado no diretório do banco de dados. Para testarmos a criação 
de uma view em MySQL, vamos, mais vez, recorrer ao nosso banco 
de dados exemplo, no PhpMyAdmin. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 10 
 
 
 
Figura 2 - Opção de criação de view na tabela "funcionarios". 
Como podemos observar na figura acima, ao abrirmos a tabela 
“funcionarios” do nosso banco de dados exemplo, percebemos um 
botão intitulado “Create view” (criar visão). 
 
 
 
 
 
 
Após clicar no botão “Create view”, você visualizará a seguinte 
página: 
Apesar de este botão estar associado à tabela 
“funcionarios”, isto não significa dizer que a visão será 
restrita às colunas desta tabela. 
NOTA 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 11 
 
 
 
Figura 3 - Formulário de construção do comando "Create view". 
 
Então, vamos criar uma visão que envolva as duas tabelas de nosso 
banco de dados: “funcionarios” e “departamentos”. Esta visão 
deverá abranger todos os funcionários pertencentes ao 
departamento de marketing (2-MKT) que ganham mais de R$ 
5.000,00. 
Assim, na opção “AS”, vamos escrever a seguinte instrução SQL: 
SELECT departamentos.nomedepto, matric, nome, salario 
FROM `funcionarios` INNER JOIN `departamentos` WHERE 
salario > 5000 AND funcionarios.depto = 
departamentos.numdepto AND funcionarios.depto = 2 
 
No mais, vamos deixar os demais campos assumirem seus valores 
padrão (default), exceto o campo “View name” (nome da view), que 
é de preenchimento obrigatório. Vamos atribuir um nome bastante 
sugestivo a esta view? Que tal: 
Funcionariosdomarketingcommaisde4000reais 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 12 
 
 
 
Confirma como deve ser preenchido o formulário, conforme figura 
seguinte: 
 
Figura 4 - Preenchimento mínimo da view. 
Após o preenchimento do formulário, clique em “Go” (ir) e perceba a 
exibição da seguinte página de retorno: 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 13 
 
 
 
Figura 5 - Página de retorno da criação da view. 
 
Note que a view recém-criada foi adicionada ao menu lateral do 
PhpMyAdmin, na sessão “Views”. O comando SQL correspondente à 
criação da view é exibido logo no topo da página. 
 
 
 
 
 
 
Para executar a view recém-criada, basta clicar por sobre o nome da 
view, disponível na sessão “Views” do menu lateral esquerdo do 
PhpMyAdmin, como mostra a figura a seguir. 
A criação de uma view não provoca a execução da 
instrução SQL a ela incorporada. Isto só será realizado 
ao executá-la. 
NOTA 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 14 
 
 
 
Figura 6 - Executando a View recém-criada. 
 
Note que, ao clicar na view armazenada, o seu comando de 
execução é exibido logo no topo da página. Perceba que, para 
executar uma visão, basta declará-la em uma instrução SELECT, 
como a seguir descrito: 
SELECT * FROM <nome da view> 
 
Note ainda que o resultado do comando SELECT é exibido tão logo 
cliquemos no nome da view, no menu esquerdo do PhpMyAdmin. 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 15 
 
 
 
Considerações Finais 
SAIBA MAIS: 
 Quer se aprofundar nos estudos das views? Então acesse e leia 
este link de aprofundamento: 
Artigo: “MYSQL - Trabalhando com Views”, acessível pelo link: 
https://www.devmedia.com.br/mysql-trabalhando-com-
views/8724 (Acesso em 21/12/2017). 
 
 
Atividades de Autoaprendizagem 
ATIVIDADES: 
Pronto para consolidar seus conhecimentos? Leia atentamente o 
enunciado de sua atividade de autoaprendizagem proposta 
para esta aula. Se você está fazendo o seu curso 
presencialmente, é só abrir o seu caderno de atividades. Se você 
estiver cursando na modalidade de EAD (Educação a Distância), 
acesse a sua trilha de aprendizagem no seu ambiente virtual e 
realize a atividade de modo online. Você pode desenvolver esta 
atividade sozinho ou em parceria com seus colegas de turma. 
Dificuldades? Poste suas dúvidas no fórum de discussões em seu 
ambiente virtual de aprendizagem. Concluiu a sua atividade? 
Submeta o resultado em uma postagem diretamente em seu 
ambiente virtual de aprendizagem e boa sorte! 
 
 
Questionário Avaliativo 
TESTANDO: 
Chegou a hora de você provar que aprendeu tudo o que foi 
abordado ao longo desta aula. Para isto, leia e resolva 
atentamente as questões do seu caderno de atividades. Se você 
estiver fazendo este curso a distância, acesse o QUIZ (Banco de 
Questões) em seu ambiente virtual de aprendizagem. 
https://www.devmedia.com.br/mysql-trabalhando-com-views/8724
https://www.devmedia.com.br/mysql-trabalhando-com-views/8724
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 16 
 
 
Bibliografia 
 
 
BIANCHI, W. (21 de Dez de 2017). MYSQL – Trabalhando com Views. 
DevMedia. Acesso em 21 de Dez de 2017, disponível em 
https://www.devmedia.com.br/mysql-trabalhando-com-views/8724 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 17

Continue navegando