Professional Documents
Culture Documents
htm
http://inf.unisul.br/~osmarjr/unisul/bd2/index.htm
- Seleção (restrição)
- Projeto
- Produto
- Interseção
- Diferença
- União
- Ligação Natural
- Divisão
**Seleção (restrição)
**Projeto
**Produto
Cláusula Where
Select FNOME
FROM F
where CIDADE='Londres';
Explicação
Select *
FROM F
where CIDADE='Londres';
Explicação
Select *
From F
Where CIDADE Like 'P%'
Explicação
Cláusula Group by
Explicação
Select P#,Sum(QDE)
FROM FPJ
Group By P#
Having (sum(QDE)>=500);
Cláusula Order by
Select *
From F
where CIDADE='Londres'
Order by FNOME;
Explicação
Select *
From F
where CIDADE='Londres'
Order by FNOME DESC;
Você pode incluir campos adicionais na cláusula order by. Os registros são
classificados pelo primeiro campo listado depois do order by, e os
que tiverem valores iguais naquele campo, são classificados pelo valor
no segundo campo e assim por diante.
Funções Agregadas
Exemplos:
Select count(*)
from F
Obtém o número de tupla da relação F
Select Sum(QDE),"Sum"
From FPJ
Where F#='F1';
Produto
Select F#,P#
From F,P;
Interseção
Constroe uma relação consistindo em todas as tuplas que aparece em ambos
os pares de relações específicas.
Select *
From F
Where F.F# IN
(Select FPJ.F#
From FPJ);
Select *
From F
Where EXISTS
(Select FPJ.F#
From FPJ
Where FPJ.F#=F.F#);
Diferença
Select *
From F
Where F.F# NOT IN
(Select FPJ.F#
From FPJ);
Select *
From F
Where NOT EXISTS
(Select FPJ.F#
From FPJ
Where FPJ.F#=F.F#);
União
Constroe uma relação consistindo em todas as tuplas que aparecem em ambos os pares
de relações específicas.
Ligação Natural
Left Join:
Preserva as linhas sem correspondência da primeira relação (esquerda)
Juntando-as com uma linha nula na forma da segunda tabela (direita)
Right Join:
Preserva as linhas sem correspondência da segunda tabela (direita)
Juntando-as com uma linha nula na forma da primeira tabela (esquerda)
Divisão
Toma duas relações, uma binária e outra unária, e constroe uma relação
consistindo em todos os valores de um atributo da relação binária com equivalência
(no outro atributo) a todos valores da relação unária.
Select FNOME
From F
Where NOT EXISTS
(Select *
From P
Where NOT EXISTS
(Select *
From FPJ
Where FPJ.F#=F.F# AND
FPJ.P#=P.P#));
* Controle físicos.
Exe: A sala do servidor deve ser mantida trancada ou protegida
de alguma maneira?
* Questões políticas.
Exe: Como a empresa decide à quem deve permitir acesso a que?
* Problemas operacionais.
Exe: Na adoção de um esquema de senha. As próprias são mantidas em segredos?
* Controles de Hardware
Ex: A CPU proporciona dispositivos de segurança, como chaves de proteção
do armazenamento?
A unidade de dados para fins de segurança, isto é, o "objeto de dados" que talvez deva
ser protegida individualmente pode: referir-se a todo o conjunto de tabelas ou referir-se
a um valor de dados específico e determinada posição, linha e coluna dentro de uma tabela
específica.
Certamente diferentes usuários podem ter direitos diferentes sobre o mesmo projeto.
Ex: O usuário A pode ter a autorização SELECT (somente) em uma relação enquanto o
usuário B tem ao mesmo tempo as autoridades, SELECT e UPDATE, sobre uma mesma relação.
***Mecanismo de Visão***
Uma visão pode ser considerada como uma tabela virtual - isto é uma tabela que não existe
fisicamente, mas parece ao usuário como assim o fosse.
Os usuários que tiverem acesso a esta visão teram um "subconjunto horizontal", ou melhor,
um subconjunto de linhas das relação F contendo somente os fornecedores de Paris
Para criar uma visão da relação F, somente com os dados FNRO, FNOME, CIDADE dos fornecedores
mas, não a avaliação (status).
Os usuários que tiverem acesso a esta visão teram um subconjunto vertical ou melhor,
um subconjunto de colunas.