Buscar

bd2

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 76 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 76 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 76 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

Banco de Dados II 
Prof. Marcos Miguel 
marcos.a.miguel@gmail.com 
http://marcosmiguel.com 
 
 
2 
Prof. Marcos Miguel - MBI 
BDII(Banco de Dados II) 
2 
¨  OBJETIVO 
¤  Mostrar e definir os conceitos relativos à criação e 
organização de Sistemas de Bancos de Dados. 
Fazer com que o aluno desenvolva habilidades 
necessárias para a utilização da linguagem de 
consulta SQL. Possibilitar ao aluno o 
entendimento da manipulação, criação e 
gerenciamento de um banco de dados. 
 
3 
Prof. Marcos Miguel - MBI 
BDII(Banco de Dados II) 
3 
¨  HABILIDADES 
¤  Desenvolver a habilidade para a implementação de 
banco de dados, manipulação de dados através da 
linguagem SQL e gerenciamento de um Banco de 
Dados 
¨  COMPETÊNCIAS 
¤  Compreender o funcionamento de Sistemas 
Gerenciador de Banco de Dados, desenvolver a 
capacidade de implementar, manipular e gerenciar 
um Banco de Dados 
¨  
 
4 
Prof. Marcos Miguel - MBI 
CONTEÚDO PROGRAMÁTICO 
4 
¨  Unidade 1- LINGUAGEM SQL (Structured 
Query Language) 
¤  1.1. Histórico 
¤  1.2. Conceitos 
¤  1.3. Linguagem 
¤  1.4. Modelo de Exemplo (MER, DTR e SQL) 
¤  1.5. DDL (Data Definition Language) 
¤  1.6. DML (Data Manipulation Language) 
¤  1.7. DCL (Data Control Language) 
¤  1.8. Stored Procedures 
¤  1.9. Triggers 
¤  1.10. Seqüências 
5 
Prof. Marcos Miguel - MBI 
CONTEÚDO PROGRAMÁTICO 
5 
¨  Unidade 2. PROJETO FÍSICO 
¤  2.1. Estrutura geral do SGBD 
¤  2.2. Regras de integridade 
¤  2.3. Gerência de Transação e controle de 
concorrência 
¤  2.4. Implementação e criação do script do banco 
de dados (MySQL e PostgresSQL) 
¤  2.5. Indexação 
6 
Prof. Marcos Miguel - MBI 
CONTEÚDO PROGRAMÁTICO 
6 
¨  Unidade 3. AMBIENTE DE BANCO DE 
DADOS 
¤  3.1. Modelo de Transação 
¤  3.2. Log do Banco de Dados 
¤  3.3. Controle de Concorrência 
¤  3.4. Recuperação de Paradas e Falhas 
¤  3.5. Segurança e Integridade 
¨  Unidade 4. TÓPICOS ESPECIAIS 
¤  4.1 Tendências das novas tecnologias em Banco de Dados 
¤  4.2 Tipos de Banco de Dados (Híbrido, Orientado a Objeto, 
Distribuídos) 
7 
Prof. Marcos Miguel - MBI 
Bibliografia 
7 
¨  ELMASRI, Ramez e NAVATHE, Shamkant 
B. Fundamentals of Database System. 
Third Edition. Ed. Addison-Wesley, 2000. 
¨  KORTH, H. F. e SILBERSCHATZ, A. 
Sistemas de Banco de Dados. Terceira 
edição, São Paulo, Ed. McGraw Hill, 1999. 
¨  HEUSER, Carlos Alberto. Projeto de Banco 
de Dados. Porto Alegre. Ed. Sagra Luzzato, 
1998. 
8 
Prof. Marcos Miguel - MBI 
Bibliografia auxiliar 
8 
¨  DATE, C. J. Introdução a sistemas de bancos de dados. 
8.ed. Rio de Janeiro: Campus, 2004. 
 
¨  STEZER, Valdemar W.. Banco de Dados, São Paulo, Ed. 
Edgar Blucher, 1986. 
 
¨  PERIÓDICOS: Revista SQL Magazine, DevMedia. 
9 
Prof. Marcos Miguel - MBI 
Avaliações 
9 
¨  V1 – 25/09/2013 
¨  V2 – 27/11/2013 
¨  VT – 20/11/2013 * Apresentação do Trabalho 
¨  2ā chamada (V1 e V2) - 04/12/2013 
¨  VS - 11/12/2013 
10 
Prof. Marcos Miguel 
10 
Conceitos 
Introdutórios 
11 
Prof. Marcos Miguel - MBI 
ÁLGEBRA RELACIONAL 
11 
¨  Matematicamente falando, uma tabela (relação) é um 
conjunto - um conjunto de linhas. 
¨  No modelo relacional temos o BD representado como uma 
coleção de tabelas. Quando queremos manipular 
(recuperar) dados, em geral o resultado nos é apresentado 
como uma tabela, derivada de alguma forma de outras 
tabelas. 
¨  A álgebra relacional é um conjunto de operações sobre as 
relações. 
12 
Prof. Marcos Miguel - MBI 
ÁLGEBRA RELACIONAL 
12 
¨  OPERAÇÕES TRADICIONAIS 
¤  UNION (UNIÃO) 
 
R S: Retorna uma tabela que inclui todas as tuplas que estão ou 
em R ou em S, ou em ambas. Tuplas duplicadas são eliminadas. 
13 
Prof. Marcos Miguel - MBI 
ÁLGEBRA RELACIONAL 
13 
¨  OPERAÇÕES TRADICIONAIS 
¤  INTERSECTION (INTERSEÇÃO) 
14 
Prof. Marcos Miguel - MBI 
ÁLGEBRA RELACIONAL 
14 
¨  OPERAÇÕES TRADICIONAIS 
¤  SET DIFFERENCE (DIFERENÇA) 
15 
Prof. Marcos Miguel - MBI 
ÁLGEBRA RELACIONAL 
15 
¨  OPERAÇÕES TRADICIONAIS 
¤  CARTESIAN PRODUCT (PRODUTO CARTESIANO) 
 
16 
Prof. Marcos Miguel - MBI 
ÁLGEBRA RELACIONAL 
16 
¨  OPERAÇÕES ESPECIAIS 
¤  PROJECT (PROJEÇÃO) 
 
17 
Prof. Marcos Miguel - MBI 
ÁLGEBRA RELACIONAL 
17 
¨  OPERAÇÕES ESPECIAIS 
¤  SELECT (SELEÇÃO) 
 
18 
Prof. Marcos Miguel - MBI 
ÁLGEBRA RELACIONAL 
18 
¨  OPERAÇÕES ESPECIAIS 
¤  DIVISION (DIVISÃO) 
¨  R1 ÷ R2: A operação de divisão tem tabelas como 
operandos. Os nomes das colunas (e os respectivos 
domínios) da tabela R2 (C2) devem estar contidos 
dentro dos nomes das colunas (e respectivos 
domínios) da tabela R1 (C1). A tabela resultante tem 
como nomes de colunas e domínios aqueles que 
aparecem duas em R1 mas não aparecem em R2 
(C1 - C2). Para que uma linha apareça no resultado é 
necessário que sua concatenação com cada linha da 
tabela R2 apareça também na tabela R1. 
 
Exemplo: Todos os fornecedores das peças 'P2' e 'P4' 
R3 = Fornecimento ÷ Temp 
Divide Fornecimento by Temp over CodPeça giving R 
 
19 
Prof. Marcos Miguel - MBI 
ÁLGEBRA RELACIONAL 
19 
¨  OPERAÇÕES ESPECIAIS 
¤  JOIN 
20 
Prof. Marcos Miguel - MBI 
ÁLGEBRA RELACIONAL 
20 
¨  OPERAÇÕES ESPECIAIS 
¤  JOIN cont… 
¨  Estamos trabalhando com join baseado em igualdade de valores de diferentes tabelas 
(EQUIJOIN). Mas poderíamos ter join com qualquer expressão booleana ("maior que", "menor 
que", "não igual", etc). Esta operação genérica de junção é chamada THETAJOIN. 
¨  Uma operaçao de EQUIJOIN também é representada com a seguinte sintaxe: 
 
¨  Onde listaR e listaS indicam os nomes das colunas das tabelas R e S cujos valores serão 
comparados um a um para fazer a junção. A segunda coluna é eliminada em cada um dos pares 
que são comparados, ja ́ que os valores são idênticos. 
 R = R1 * (A),(A) R2 
¨  Um EQUIJOIN em que com os nomes das colunas sejam iguais é chamado NATURAL JOIN. 
Neste caso, o nome das colunas não precisam ser especificados. 
 R = R1 * R2 
21 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
21 
¨  Structured Query Language, ou Linguagem de Consulta Estruturada ou 
SQL, é a linguagem de pesquisa declarativa padrão para banco de dados 
relacional (base de dados relacional). Muitas das características originais do 
SQL foram inspiradas na álgebra relacional. 
¨  Histórico 
¤  SEQUEL (Structured English Query Language) - Centro de Pesquisa 
San Jose da IBM (Projeto System R) 
n  Rapidamente surgiram vários "dialectos" desenvolvidos por outros produtores. 
Essa expansão levou à necessidade de ser criado e adaptado um padrão para a 
linguagem. Esta tarefa foi realizada pela American National Standards Institute 
(ANSI) em 1986 e ISO em 1987. 
¤  SQL 1 (SQL-86): Padrão ISO/ANSI. Não havia cláusula para especificar 
chave; modificado em 1989 
¤  SQL 2 (SQL-92): Implementa conexão cliente/servidor 
¤  SQL 3: Em fase de aprovação; implementa o Modelo Orientado a 
Objeto 
22 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
22 
¨  Conceitos 
¤  Tabela (table) 
n  Equivale à relação, no Modelo Relacional 
¤  Linha (row) - registros 
n  Equivale à tupla, no Modelo Relacional 
 
¤  Coluna (column) 
n  Equivale aos atributos da relação, no Modelo relacional 
23 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
23 
¨  Tipos de dados (data type) 
¤  Caracter 
n  CHAR(n) ou CHARACTER(n) 
n  VARCHAR(n) ou CHARACTER VARYING(n) ou CHAR VARYING(n) 
¤  Numérico 
n  SMALLINT, INTEGER 
n  FLOAT, DOUBLE PRECISION 
n  NUMERIC(precision, scale), DECIMAL(precision,scale) 
¤  Datas 
n  DATE 
n  TIME 
n  TIMESTAMP 
¤  BLOB (Binary Large Objects) 
24 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
24 
¨  Domínios (domain) 
¤  Determina os valores possíveispara colunas. Domínios 
normalmente são definidos antes da criação das tabelas, 
para que possam ser usadas por estas 
¨  Restrições (constraint) 
¤  Condições necessária para manter a integridade dos 
dados 
¨  Visões (view) 
¤  Uma tabela cujo conteúdo é derivado de outras tabelas 
25 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
25 
¨  Banco de dados (database) 
¤  Conjunto de tabelas, domínios, restrições, visões, etc 
¨  Esquema (schema) 
¤  O conceito de uma esquema SQL foi definido com o SQL2 para agrupar 
tabelas e outros elementos que pertençam a mesma aplicação. Um 
esquema é identificado por um nome, um identificador do usuário ou 
conta que possui o esquema e descritores de cada elemento do 
esquema. 
¨  Catálogo (catalog) – Dicionário de dados 
¤  Em SQL2 um catálogo é uma coleção nomeada de esquemas em um 
ambiente SQL. Pode ser entendido com um BD do sistema, que pode 
ser consultado, contendo: informações sobre as tabelas, visões, direitos 
de acesso, identificações dos usuários, etc. Sua forma exata é uma 
característica de cada sistema e não da SQL 
26 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
26 
¨  Linguagem 
¤  Mais que uma linguagem de consulta, a SQL oferece funções para DEFINIÇÃO, 
MANIPULAÇÃO e CONTROLE dos dados de um Banco de dados. 
¤  DDL (Data Definition Language) 
n  CREATE: criação de novas estruturas 
n  ALTER: alteração de estruturas existentes § DROP: remoção de estruturas 
¤  DML (Data Manipulation Language) 
n  INSERT: Inserção de registros 
n  DELETE: remoção de registros 
n  UPDATE: atualização de registros 
n  SELECT: Seleção (consulta) de registros 
¤  DCL (Data Control Language) 
n  GRANT: concessão de direitos de acesso a tabelas e visões 
n  REVOKE: revogação de direitos de acesso a tabelas e visões 
27 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
27 
¨  Exemplo 
28 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
28 
¨  Exemplo 
29 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
29 
¨  DDL (Data Definition Language) 
30 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
30 
¨  DDL (Data Definition Language) 
31 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
31 
32 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
32 
33 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
33 
34 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
34 
35 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
35 
36 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
36 
37 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
37 
38 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
38 
39 
Prof. Marcos Miguel - MBI 
SQL-STRUCTURED QUERY LANGUAGE 
39 
Caso de uso 
40 
Caso de uso 
41 
Caso de uso 
42 
DDL – Banco de Dados Matricula 
43 
DDL – Banco de Dados Matricula 
44 
DDL – Banco de Dados Matricula 
45 
DDL - Foreign Key 
¨  Criar 
¨  Deletar 
46 
46 
DML – SQL 
¨  Insert único registro 
¨  Insert múltiplos registros 
47 
47 
DML – SQL 
¨  Delete - único registro 
¨  Delete - múltiplos registros 
48 
Cuidado! 
Esta ação 
apaga todos 
os registros 
da tabela	
48 
DML – SQL 
¨  Update – único registro 
¨  Update – múltiplos registros 
49 
49 
DML – SQL 
¨  Select - único registro 
¨  Select - múltiplos registros 
50 
50 
¨  Select 
¤  Inner join 
¤  Left join 
DML – SQL 
51 
51 
DML – SQL 
¨  Select – Funções 
¤  Count - Conta o total de registros 
¤  Min – Calcula o menor valor de uma campo 
52 
52 
DML – SQL 
¨  Select – Funções 
¤  Max – Calcula o maior valor de uma campo 
¤  AVG – Calcula a média dos valores de um campo 
53 
	
	
	
	
	
	
	
	
	
	
53 
DML – SQL 
¨  Select – Funções 
¤  SUM – Soma os valores de um campo 
54 
	
	
	
	
	
54 
DML – SQL 
¤  Select – Funções 
n  Like – manipulação de Strings 
n  “%” - Busca zero ou mais caracteres 
n  “%miguel” -> todos os caracteres terminados com “miguel” 
n  “miguel%” -> todos os caracteres começados com “miguel” 
55 
	
	
	
	
	
55 
DML – SQL 
¤  Select – Funções 
n  Like 
n  “_” - desconsidera o caracter 
n  “_x” -> todos os caracteres desconsiderando o 
primeiro 
 
 
 
56 
Linha Inicial	

 Máximo de linhas 	
56 
DML – SQL 
¨  Select – Funções 
¤  Left – retorna os primeiros caracteres à esquerda 
de uma string 
¤  Rigth – retorna os últimos caracteres à direita de 
uma string 
57 
	
	
	
	
	

	
	
	
	
	
57 
Cláusula GROUP BY 
¨  Na grande maioria dos casos, as funções de 
agregação são usadas em cálculos baseados 
em grupos de linhas da tabela. A cláusula 
GROUP BY é usada para dividir as linhas de 
uma tabela em subgrupos menores. 
¨  O SQL recupera cada grupo de linhas de 
acordo com os valores da(s) expressão(ões) 
especificada(s) na cláusula GROUP BY. 
58 
58 
Cláusula GROUP BY 
¨  A cláusula GROUP BY devera ́ vir sempre após 
a cláusula WHERE (ou após a cláusula FROM 
quando não existir WHERE). 
¨  Quando a cláusula GROUP BY é utilizada, é 
possível combinar resultados individuais com 
funções de grupo na cláusula SELECT, desde 
que aqueles resultados individuais sejam 
usados no GROUP BY. 
59 
59 
Cláusula GROUP BY 
¨  Exemplo: 
¤  Conta o total de pessoas utilizando a primeira 
letra do alfabeto 
 
 
 
 
 
¨  Obs: 
¤  Quando usar GROUP BY todas as colunas que são usadas no SELECT mas não são usadas 
na função de grupo devem ser incluídas na clausula GROUP BY. 
¤  Usando a cláusula WHERE pode-se selecionar as linhas antes de agrupá-las. 
 
60 
	
	
	
	
	
60 
Cláusula GROUP BY com Having 
¨  A cláusula WHERE não pode ser usada para 
restringir funções de grupo. Assim, o exemplo 
seguinte não é válido: 
¨  Os grupos definidos pela cláusula GROUP BY 
podem ser filtrados pela cláusula HAVING. 
61 
61 
Cláusula GROUP BY com Having 
¨  Exemplo: 
¤  Total de pessoas agrupados por nome e filtrado 
com having para as pessoas iniciadas com a letra 
“m”. 
62 
	
	
	
	
	
62 
Processamento SQL 
¨  O processamento da instrução SQL pode ser 
visto da seguinte forma: 
n  É feito o produto cartesiano das tabelas envolvidas; 
n  São selecionadas as linhas da tabela que obedecem 
ao critério da cláusula WHERE; 
n  São criados grupos de linhas que contenham valores 
idênticos nas colunas do GROUP BY; 
n  São selecionados os grupos que atendem ao critério 
da cláusula HAVING; 
n  É feita a classificação do resultado pelos valores das 
colunas da cláusula ORDER BY; 
n  É feita a projeção sobre as colunas especificadas no 
SELECT. 
63 
63 
Subqueries 
¨  Subqueries são comandos SELECT utilizados 
em condições de cláusulas WHERE ou 
HAVING, para prover resultados que são 
utilizados para completar a consulta principal. 
¨  Uma subquery que retorna apenas uma linha 
como resultado é chamada "single-row 
subquery". Caso mais de uma linha seja 
retornada, a subquery é chamada "multiple-
row subquery". 
64 
64 
Subqueries 
¨  Os operadores = , > , >= , < , <= e <> podem 
ser usados em comparações com "single-row 
subqueries". Os operadores IN, ANY e ALL 
são usados em "multiple-row subqueries". 
¨  Exemplo: 
¤  Listar o Aluno 
com o maior ID 
65 
65 
Subqueries 
¨  Operadores ANY e ALL 
¤  Quando a subquery retornar mais de um valor, os 
operadores ANY e ALL podem ser utilizados para 
compatibilizar o resultado da subquery com o tipo 
do operador de comparação. 
¨  Essa condição será verdadeira quando 
<campo> for maior que qualquer um dos 
resultados da subquery. 
66 
66 
Subqueries 
¨  Operadores ANY e ALL 
¤  Essa condição será verdadeira quando <campo> 
for menor que qualquer um dos resultados da 
subquery 
¤Essa condição será verdadeira quando <campo> 
for maior que todos os resultados da subquery. 
¤  Essa condição será verdadeira quando <campo> 
for menor que todos os resultados da subquery. 
67 
67 
Subqueries 
¨  Operadores ANY e ALL 
¤  Exemplo: Busca todas as pessoas em que o id 
seja maior que qualquer resultado no subselect 
68 
Tabela Aluno	
	
	
	
	
	
68 
Subqueries 
¨  Operadores IN e NOT IN 
¤  Verifica se o dado faz parte ou não da lista 
fornecida. A lista pode ser formada por valores 
retornados por uma subquery. 
¤  Exemplo: 
n  Busca todas as pessoas que estejam na tabela de 
professor 
69 
	
	
	
	
	
69 
Operadores de Conjuntos 
¨  Como o resultado de um query é um conjunto de 
linhas você pode realizar operações de conjuntos 
entre queries. 
n  UNION : União entre os resultados das queries; 
n  INTERSECT : Interseção entre os resultados das 
queries; 
n  MINUS : Subtração entre os resultados das queries. 
¨  A operação de união permite reunir os resultados de 
duas consultas distintas em um só resultado. 
Equivale à operação de União da Álgebra 
Relacional. A operação de união elimina as linhas 
duplicadas. 
70 70 
Operadores de Conjuntos 
¨  Exemplo: 
¤  Unificar os resultados da seleção das tabelas de 
professor e aluno. 
71 
	
	
	
	
	
71 
Operadores EXISTS e NOT EXISTS 
 
¨  EXIST: retorna “verdadeiro” se uma 
determinada subquery retornar ao menos uma 
linha e “falso” caso contrário. 
¨  NOT EXIST: retorna o resultado contrário do 
operador EXIST. 
¤  Exemplo: Selecionar todas as pessoas que sejam 
alunos. 
72 
	
	
	
	
	
72 
Visões (views) 
¨  Uma visão na terminologia SQL é uma tabela que é derivada 
de outras tabelas. Uma visão não precisa existir fisicamente. 
Por isso, pode ser considerada como uma tabela virtual, isto 
é, uma tabela que realmente não existe como tal, mas sim 
como derivação de uma ou mais tabelas básicas. 
¨  A definição da visão fica armazenada no dicionário de dados; 
esta definição mostra como ela é derivada das tabelas 
básicas. 
¨  O objetivo básico no uso de visões é restringir o acesso a 
certas porções dos dados por questões de segurança, além 
de pré-definir certas consultas através de tabelas virtuais que 
poderão ser utilizadas por outras consultas. 
73 
73 
Visões (views) 
¨  Exemplo: 
¤  Visão que retornar os professores cadastrados no banco de dados 
74 
	
	
	
	
	
74 
Visões (views) 
¨  DROP VIEW 
75 
75 
Links úteis Prof. Marcos Miguel	
76

Continue navegando