·

Análise e Desenvolvimento de Sistemas ·

Bases de Dados

Envie sua pergunta para a IA e receba a resposta na hora

Fazer Pergunta

Texto de pré-visualização

1 Abordagem Relacional - Resumo • proposto em 1970 • disponível comercialmente em 1980 • Características: – a base de dados é visualizada como um conjunto de tabelas, cada uma representando uma relação; – relacionamentos representados pelos valores de dados; – simetria nas consultas; – Linguagens definidas: * álgebra e cálculo relacionais; * transformados em SQL com ampla aceitação; * SQL - linguagem padrão para BD Relacionais. – Desvantagens do BD Relacionais: * representação não natural de objetos complexos; * não apresenta tipos de relacionamentos; * não apresenta restrições semânticas, apenas integridade de entidade (baseada na chave primária) e integridade referencial (baseada na chave estrangeira) 2 Composição de um BD Relacional Um BD relacional é composto por um único tipo de construção: • Tabela: composta por linhas (tuplas) e colunas (atributos); • As ligações entre as linhas de diferentes tabelas são feitas através do uso de valores de atributos; • Terminologias usuais: – Relação x Tabela * composta de linhas (tuplas) * não há ordenação de tuplas * a mesma tupla não aparece múltiplas vezes – Tupla x Linha * composta por uma série de campos (atributos) – Atributo x Coluna * o conjunto de todos os campos formam uma coluna * os valores dos campos são atômicos e monovalorados – Domínio * conjunto de valores atômicos 2.1 Chaves Chave Primária • Coluna ou colunas cujos valores diferenciam uma linha das demais para todos os possíveis valores de uma tabela. – normalmente exige-se que a chave seja mínima: retirando uma coluna da chave, ela deixa de ser uma chave primária; – não está ligado ao conceito de caminho de acesso: as linhas de uma tabela podem ser acessadas por qualquer critério; – restrição de integridade: unicidade de valores na coluna que compõe a chave – outras chaves com a mesma propriedade são chamadas chaves candidatas ou chaves alternativas (exem- plo: CIC em uma tabela com dados de empregados que são identificados por um código). Chave Estrangeira • Coluna ou colunas de uma tabela, cujos valores devem obrigatoriamente aparecer na chave primária de uma tabela (da mesma tabela ou de outra tabela); • a chave estrangeira é o mecanismo que permite a implementação dos relacionamentos em um BD relacional; • a chave estrangeira pode referenciar um valor de chave estrangeira na mesma tabela e não somente em outra; • Restrições de Integridade para chave estrangeira: – Quanto à inclusão de uma linha na tabela que contém a chave estrangeira: o valor da chave estrangeira deve aparecer na coluna da chave primária referenciada; – Quando da alteração do valor da chave estrangeira: o novo valor da chave estrangeira deve aparecer 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: na coluna da chave estrangeira não pode aparecer o valor da chave primária que está sendo excluída; – Quando da alteração do valor da chave primária referenciada pela chave estrangeira: na coluna da chave estrangeira não pode aparecer o valor antigo da chave primária que está sendo alterada. Chave Candidata: quando uma relação apresenta mais de uma chave, cada uma delas é chamada de chave candidata. Chave Alternativa: chave candidata que não é primária. 2.2 Domínios e Valores Vazios • Domínio da coluna: conjunto de valores que uma coluna pode assumir; • Campos vazios ou nulos; • Campos obrigatórios ou opcionais. 2.3 Restrições de Integridade Uma regra que deve ser obedecida em todos os estados válidos da base de dados (pode envolver uma ou mais linhas de uma ou mais tabelas). As restrições de integridade garantem que os dados refletem corretamente a realidade modelada. Um restrição de integridade é uma regra é um mecanismo que deve ser oferecido pelo SGBD. Integridade de Entidade • o valor da chave primária não pode ser vazio; • a chave primária serve como representante na base de dados de uma entidade - se a chave primária for vazia, a linha não corresponde a nenhuma entidade. Integridade de Chave Primária: os valores das chaves primária e alternativa devem ser únicos. Integridade Referencial: os campos que aparecem na chave estrangeira devem aparecer na chave primária da tabela referenciada. Integridade de Domínio: os valores de uma coluna devem obedecer a definição de tipos definida; Integridade de Vazio: define se os campos de uma coluna podem ser vazios ou não; Restrições de Integridade Semântica: todas as demais regras que devem ser obedecidas por todos os estados válidos da base de dados. 2.4 Restrições de Atualização As operações de atualização são as seguintes: inserção, exclusão e modificação. Todas as operações de atualização devem garantir as restrições de integridade definidas. Operação de Inserção • insere tupla (ou tuplas) em uma relação. – a operação de inserção pode violar as 4 restrições de integridade: * Integridade de Domínio pode ser violada se for inserido um atributo cujo valor não corresponde ao domínio específico; * Integridade de Chave pode ser violada se o valor da chave na nova tupla já existe; * Integridade de Entidade pode ser violada se a chave primária na nova tupla é nula; * Integridade Referencial pode ser violada se o valor de alguma chave estrangeira refere-se a uma chave que não existe na relação referenciada. Operação de Exclusão • exclui tuplas de uma relação: – a exclusão pode violar a integridade referencial se a tupla que está sendo excluída é referenciada por uma chave estrangeira de outra tupla; – Três procedimentos podem ser adotados: * rejeitar a operação; * excluir em cascata; * mudar os valores dos atributos referenciados; Operação de Modificação • altera os valores de atributos nas tuplas existentes – alterações em atributos que não são chave primária nem estrangeira, apenas a restrição de domínio deve ser garantida; – modificação o valor de uma chave primária é o mesmo que excluí-la, pois a chave serve para identificar uma tupla. 2.5 Especificação de um BD Relacional A especificação de um BD é denominada Esquema. Um esquema deve conter, no mínimo, as seguintes defini- ções: • tabelas que formam o BD; • colunas que as tabelas possuem; • restrições de integridade. Emp (CodEmp, Nome, CodDepto, CategFuncional, CIC) CodDepto referencia Depto Depto(CodDepto, Nome) 3 Bibliografia Bibliografia utilizada para Abordagem Relacional • Projeto de Banco de Dados (Carlos Alberto Heuser) - Capítulo 4 • Fundamentals of Database Systems (Elmasri & Navathe) - Capítulo 7