Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Fundação de Apoio à Escola Técnica / CETEP – PARACAMBI 
Disciplina: Modelagem de Dados I Aula: 11/10 
 
 
CHAVES 
O conceito básico para estabelecer relações entre linhas de tabelas de um banco de dados 
relacional é o da chave. Em um banco de dados relacional, há ao menos três tipos de chaves a considerar: 
a chave primária, a chave alternativa, e a chave estrangeira. 
 
Chave Primária 
Uma chave primária é uma coluna ou uma combinação de colunas cujos valores distinguem uma 
linha das demais dentro de uma tabela. Na tabela Emp, a chave primária é a coluna CódigoEmp. A tabela 
(Dependente) que possui uma chave primária composta (colunas CódigoEmp e NoDepen). Neste caso, 
apenas um dos valores dos campos que compõem a chave não é suficiente para distinguir uma linha das 
demais, já que tanto um código de empregado (CódigoEmp) pode aparecer em diferentes linhas, quanto 
um número de dependente (NoDepen) pode aparecer em diferentes linhas. É necessário considerar ambos 
valores (CódigoEmp e NoDepen) para identificar uma linha na tabela, ou seja para identificar um 
dependente. 
 
 
Chave Estrangeira 
Uma chave estrangeira é uma coluna ou uma combinação de colunas, cujos valores aparecem 
necessariamente na chave primária de uma tabela. A chave estrangeira é o mecanismo que permite a 
implementação de relacionamentos em um banco de dados relacional. No banco de dados abaixo, a 
coluna CodigoDepto da tabela Emp é uma chave estrangeira em relação a chave primária da tabela Dept. 
Isso significa que, na tabela Emp, não podem aparecer linhas que contenham um valor do campo 
CodigoDepto que não exista na coluna de mesmo nome da tabela Emp. A interpretação desta restrição é 
que todo empregado deve estar associado a um departamento. 
 
 
 
Domínio e Valores Nulos 
Quando uma tabela do banco de dados é definida, para cada coluna da tabela, deve ser 
especificado um conjunto de valores (alfanumérico, numérico,…) que os campos da respectiva coluna 
podem assumir. Este conjunto de valores é chamado de domínio da coluna ou domínio do campo. 
Além disso, deve ser especificado se os campos da coluna podem estar vazios (“null” em inglês) 
ou não. Estar vazio indica que o campo não recebeu nenhum valor de seu domínio. 
Na segunda figura, o campo CategFuncional da linha correspondente ao empregado de código E1 
está vazio. Isso indica que o empregado E1 não possui categoria funcional ou que esta ainda não foi 
informada. 
Na tabela abaixo, aparece outro exemplo de um campo vazio. No caso, o campo 
CodigoEmpGerente vazio indica que o empregado não possui superior hierárquico. As colunas nas quais 
não são admitidos valores vazios são chamadas de colunas obrigatórias. As colunas nas quais podem 
aparecer campos vazios são chamadas de colunas opcionais. 
Normalmente, os SGBD relacional exigem que todas as colunas que compõem a chave primária 
sejam obrigatórias. A mesma exigência não é feita para as demais chaves (ver exemplo de chave 
estrangeira vazia). 
 
 
 
 
RESTRIÇÕES DE INTEGRIDADE 
Um dos objetivos primordiais de um SGBD é a integridade de dados. Dizer que os dados de um banco 
de dados estão íntegros significa dizer que eles refletem corretamente a realidade representada pelo banco 
de dados e que são consistentes entre si. Para tentar garantir a integridade de um banco de dados os 
SGBD oferecem o mecanismo de restrições de integridade. Uma restrição de integridade é uma regra de 
consistência de dados que é garantida pelo próprio SGBD. No caso da abordagem relacional, costuma-se 
classificar as restrições de integridade nas seguintes categorias: 
 
 Integridade de domínio 
Restrições deste tipo especificam que o valor de um campo deve obedecer a definição de valores 
admitidos para a coluna (o domínio da coluna). Nos SGBD relacionais comerciais, é possível usar apenas 
domínios pré-definidos (número inteiro, número real, alfanumérico de tamanho definido, data, …). O 
usuário do SGBD não pode definir domínios próprios de sua aplicação (por exemplo, o domínio dos dias 
da semana ou das unidades da federação). 
 
 Integridade de vazio 
Através deste tipo de restrição de integridade é especificado se os campos de uma coluna podem ou 
não ser vazios (se a coluna é obrigatória ou opcional). Como já foi mencionado, campos que compõem a 
chave primária sempre devem ser diferentes de vazio. 
 
 Integridade de chave 
Trata-se da restrição que define que os valores da chave primária e alternativa devem ser únicos. 
 
 Integridade referencial 
É a restrição que define que os valores dos campos que aparecem em uma chave estrangeira devem 
aparecer na chave primária da tabela referenciada. 
 
As restrições dos tipos acima especificados devem ser garantidas automaticamente por um SGBD 
relacional, isto é, não deve ser exigido que o programador escreva procedimentos para garanti-las 
explicitamente. Há muitas outras restrições de integridade que não se encaixam em nenhuma das 
categorias acima e que normalmente não são garantidas pelo SGBD. Essas restrições são chamadas de 
restrições semânticas. Alguns exemplos de restrições deste tipo poderiam ser: 
 Um empregado do departamento denominado “Finanças” não pode ter a categoria funcional 
“Engenheiro”. 
 Um empregado não pode ter um salário maior que seu superior imediato.

Mais conteúdos dessa disciplina