Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Banco de Dados I Aula 04 – Abordagem Relacional Prof. Joélcio Rigue jprigue@yahoo.com.br 1 2 Introdução Apresentaremos agora uma introdução sucinta ao modelo de dados usados nos SGBDs do tipo relacional. Um banco de dados relacional é composto de tabelas ou relações (daí a terminologia “relacional”). 3 Tabelas Uma tabela é um conjunto não ordenado de linhas (tuplas). Cada linha é composta por uma série de campos (valor de atributo). Todo campo é identificado por um nome (nome do atributo). Chaves Conceito básico para identificar tuplas e estabelecer relações entre tuplas de tabelas. Iremos considerar três tipos de chaves: chave primária chave alternativa chave estrangeira. 4 Chave Primária É uma coluna ou combinação de colunas cujos valores distinguem uma tupla das demais em uma relação. A chave primária em uma relação nem sempre é composta por somente uma coluna, neste caso somente uma coluna não é suficiente para diferenciar as tuplas de uma relação. 5 Chave Primária A chave primária deve ser mínima, isto é, quando todas as colunas forem efetivamente necessárias para garantir a unicidade (restrição de integridade). 6 EMPREGADO CodigoEmp Nome DataNasc E1 Adão 22/02/1961 E2 Joana 09/08/1955 E3 Pedro 23/01/1965 E4 Jose 12/11/1945 E6 Carlos 11/11/1985 Chave Primária A chave primária deve ser mínima, isto é, quando todas as colunas forem efetivamente necessárias para garantir a unicidade (restrição de integridade). 7 DEPENDENTE CodigoEmp NroDepend Nome Tipo DataNasc E1 01 João Filho 12/12/1991 E1 02 Maria Esposa 02/01/1975 E2 01 Ana Esposa 13/06/1980 E6 01 Paula Esposa 02/01/1975 E6 02 Maria Filha 15/11/2000 Chave Estrangeira É uma coluna ou uma combinação de colunas, cujos valores aparecem necessariamente na chave primária de uma tabela (podendo ser inclusive da própria tabela – auto relacionamentos). É o mecanismo que permite a implementação dos relacionamentos. 8 Chave Estrangeira CURSO Codigo Nome C1 Secretariado C2 Informática C3 Agricultura 9 ALUNO Matricula Nome CPF CodCurso 123 Alex 111.111.111-11 C1 234 Alarico 222.222.222-22 C3 345 Zacarias 333.333.333-33 C3 122 Alex 111.111.111-11 C2 chave estrangeira 9 Chave Estrangeira A existência de chaves estrangeiras impõe algumas restrições que devem ser observadas ao executar operação de “atualização” do banco de dados: Quando inclusão de uma linha na tabela que contém a chave estrangeira Preciso garantir que o valor da chave estrangeira apareça na coluna da chave primária referenciada. 10 Chave Estrangeira Quando da alteração do valor da chave estrangeira Devo garantir que o novo valor apareça na coluna da chave primária referenciada. Quando da exclusão de uma linha da tabela que contém a chave primária referenciada pela chave estrangeira Deve ser garantido que na coluna da chave estrangeira não apareça o valor que está sendo excluído. 11 Chave Estrangeira Quando da alteração do valor da chave primária referenciada pela chave estrangeira Deve-se garantir que na coluna chave estrangeira não apareça o antigo valor da chave primária que está sendo alterada. 12 Chave Estrangeira 13 EMPREGADO Codigo Nome SalarioHora CodEmpGerente E5 Alex 35.50 – E3 Alarico 21.75 E5 E2 Zacarias 21.75 E5 E1 Paulo 30 E3 A palavra “estrangeira” usada neste tipo de chave pode ser enganosa. Uma chave primária pode referenciar uma chave primária da própria tabela – auto relacionamento. chave estrangeira referencia PK na própria tabela Chave Alternativa É o caso onde mais de uma coluna pode ser considerada como chave primária, neste caso uma delas é escolhida como chave primária e a(s) outra(s) serão denominadas chaves alternativas. 14 ALUNO Matricula Nome CPF CodCurso 123 Alex 111.111.111-11 C1 234 Alarico 222.222.222-22 C3 345 Zacarias 333.333.333-33 C3 122 Alex 111.111.111-11 C2 chave alternativa Domínios e Valores Vazios Quando uma tabela é definida, para cada coluna desta tabela deve ser especificado um conjunto de valores (inteiro, real, caractere...). Esse conjunto de valores é chamado de domínio da coluna. 15 Domínios e Valores Vazios Além disso, podemos especificar também se os campos da tabela podem estar vazios (null) ou não. As colunas nas quais não são admitidos valores vazios são chamadas de colunas obrigatórias, as que permitem valores vazios são chamadas de opcionais. A coluna de uma chave primária não deve permitir a inclusão de valores nulos (deve ser obrigatória). 16 Restrições de Integridade Servem para garantir a integridade dos dados. Para tal os SGBD oferecem um conjunto de regras as quais podem ser classificadas em: Integridade de domínio: o valor de um campo fica restrito ao domínio defino para ele (inteiro, real, caractere) Integridade de vazio: especifica se os campos de uma coluna podem ou não ser vazios (obrigatórios ou não). 17 Restrições de Integridade Integridade de chave: valores da chave primária e alternativa devem ser únicos. Integridade referencial: define que os valores dos campos que aparecem em uma chave estrangeira devem aparecer na chave primária da tabela referenciada. 18 Especificação de BD Relacional A especificação de um BD relacional, também chamada de esquema do BD deve conter no mínimo o seguinte: Tabelas que formam o banco de dados Colunas que as tabelas possuem Restrições de integridade 19 Especificação de BD Relacional Exemplo de Esquema: Medico(CRM, Nome, Consultorio) Paciente(Codigo, Nome, Endereco) Consulta(CRM, Codigo, Data, Hora, Diagnostico) CRM referencia Medico Codigo referencia Consulta 20
Compartilhar