Baixe o app para aproveitar ainda mais
Prévia do material em texto
Modelo Relacional Introdução Relações Restrições do Modelo Relacional Restrições de Domínio Restrições de Chave Chave Candidata e Chave Primária Restrições de Integridade de Entidade Restrições de Integridade Referencial e Chave Estrangeira Introdução O Modelo Relacional foi proposto por Ted Codd, da IBM Researchs, em 1970 e tem sido largamente utilizado como base para Sistemas Gerenciadores de Banco de Dados (SGBD). Esse modelo usa o conceito de relações matemáticas como seu bloco de construção básica e tem sua base teórica na teoria de conjuntos. O modelo relacional (MR) representa o banco de dados como uma coleção de relações. Relações Cada relação, ou tabela, se assemelha a uma planilha eletrônica, com linhas, colunas e células onde se armazenam os dados. Cada linha em uma tabela representa uma coleção de valores de dados relacionados. No MR cada linha na tabela representa um fato que corresponde a uma entidade ou relacionamento do mundo real. Na terminologia formal do MR uma linha da tabela é chamada TUPLA, a coluna é chamada ATRIBUTO e a tabela é chamada RELAÇÃO. Relações (cont.) Tupla Formaliza a noção de linha ou registro em uma tabela. Uma tupla é uma função parcial de nomes de atributos para valores atômicos. Relação Formaliza o teor de uma tabela, como ela é definida no modelo relacional. Geralmente no modelo relacional um esquema de banco de dados é dito consistir-se de um conjunto de relações e as restrições que devem ser mantidas em toda instância do esquema de banco de dados. O propósito é descrever o universo relacional, ou seja, o conjunto de todas as relações que são permitidas e referenciadas pelos seus nomes. Restrições do Modelo Relacional O mundo real, abstraído em um banco de dados, determina regras de negócio que devem ser respeitadas nos valores armazenados nesse banco de dados. Existe a necessidade de explicitarmos restrições para os valores que serão incluídos no banco de dados, conforme as regras de negócio impostas pelo minimundo representado nele. As restrições em banco de dados podem, geralmente, ser identificadas em 3 categorias principais: 1. Restrições inerentes ao modelo de dados: a. Ex: restrição de não poder existir tuplas repetidas em uma relação. 2. Restrições baseadas no esquema do banco: a. Ex: restrição de referência aos objetos existentes no banco. 3. Restrições baseadas na aplicação, que não podem ser expressas diretamente no esquema e no modelo de dados: a. Ex: Tratamento e crítica de dados de entrada. Restrições de Domínio Estabelecem que em cada tupla o valor atômico de um atributo deve pertencer a um domínio especificado. Estas restrições impõem um limite nos possíveis valores que podemos atribuir aos atributos de uma relação e, por consequência, os possíveis valores dessa relação. O domínio deverá ser especificado para informar se os valores possíveis são numéricos (inteiros, reais), caracteres ou cadeias de caracteres fixos ou variáveis, booleanos (verdadeiro ou falso), data, hora e, em alguns casos, existem até o tipo de dados de moeda. O domínio que poderá ser especificado para um esquema de banco de dados está intimamente relacionado ao sistema gerenciador de banco de dados (SGBD) adotado para controlar o banco de dados. Sempre será necessário verificar quais os tipos de dados pré-definidos no SGBD e verificar a possibilidade de definição de tipos do próprio usuário. Restrições de Chave O modelo relacional é um modelo baseado na matemática. Seu principal conceito, o de relação, é definido como um conjunto de tuplas. Um conjunto, em matemática, é definido como um conjunto de elementos distintos. Portanto, todas as tuplas da relação também devem ser distintas. Um subconjunto de atributos, menor ou igual ao conjunto de atributos da relação, com a propriedade de não terem as mesmas combinações de valores, é chamado de superchave da relação. Uma chave ou superchave especifica uma restrição de unicidade de tupla, na qual duas tuplas distintas não podem ter o mesmo valor. Chave Candidata e Chave Primária Uma chave candidata é definida como sendo um conjunto de um ou mais atributos da tupla, no qual a ausência de um deles não garante mais sua unicidade. A chave primária deve pertencer, obrigatoriamente, ao conjunto das possíveis chaves candidatas da relação. A rigor, podemos escolher qualquer uma das chaves candidatas para se tornar chave primária da relação. Podemos utilizar alguns critérios para sua escolha: Escolher a chave candidata com menor número de atributos; Escolher a chave candidata mais representativa para a relação. Restrições de Integridade de Entidade O objetivo das regras de integridade é garantir a consistência dos valores definidos nos atributos de uma tupla, garantindo a integridade dos dados da relação. O uso de chave primária estabelece, por ex., que nenhum atributo associado possa ter um valor nulo (null). Outro ponto importante é que seu uso é especificado na própria relação. Restrições de Integridade Referencial e Chave Estrangeira Ocorre entre duas relações e é usada para manter a consistência entre as tuplas entre duas relações. A definição de integridade referencial está diretamente relacionada ao conceito de chave estrangeira (FK - foreign key). É através de chaves estrangeiras que podemos relacionar as diversas relações e garantir a integridade referencial, assegurando que uma tupla referenciada sempre exista no contexto de dados. Em outros termos, podemos atribuir um valor para uma chave estrangeira se esse valor existir como valor do atributo chave primária de alguma tupla da relação referenciada por ela. Restrições de Integridade Referencial e Chave Estrangeira (cont.)
Compartilhar