Mod BD UD3 Deseño Lóxico
Sumario
Modelo lóxico de datos: metodoloxía
Modelo relacional: terminoloxía e características
Claves primarias e alleas
Paso do diagrama E-R ao modelo relacional
Álxebra relacional. Cálculo relacional
Normalización de modelos relacionais: dependencias funcionais; formas normais
Codd fixo a definición dunhas normas que evitan as redundancias de información nunha solución relacional cando son aplicadas. A técnica de seguemento de esas normas é coñecida como normalización, e consiste en levar todas as relacións a determinados estados chamados formas normales.
O inglés Edgar Frank “Ted” Codd é o pai das bases de datos relacionales. A mediados dos anos oitenta aportou as definicións coñecidas como “as 12 regras de Codd“ (aínda que son trece, numeradas do cero ó doce) que todo SGBDR debe cumplir. Buscaba revertir a tendencia dos fabricantes de SGBDR a obviar elementos fundamentais da súa proposta de modelo relacional,Algunhas delas son moi complexas de seguir e son máis estudadas desde o punto de vista teórico; pero a mera existencia das 12 regras supuxo unha declaración de intencións sobre o camiño que debía tomar o mundo das bases de datos.
Primeira forma normal (1FN)
Unha relación está en primera forma normal (1FN) se todos os seus valores son atómicos; isto é, cada valor dos dominios de todos os atributos é único.
No seguinte exemplo (clave primaria en grosa) vemos un atributo, Teléfono, que ten valores que no son repetitivos e non atómicos:
NIF | Nome | Primeiro Apelido | Segundo Apelido | Teléfono |
---|---|---|---|---|
11111111H | María Xosé | López | Pérez | 666321555 677876432 |
123222333V | Brais | García | Xermade | 611222333 981333222 982444333 |
39653802P | Alba | Pereira | Pereira | 912300141 |
Unha primeira solución para alcanzar a 1FN consiste en atomizar o atributo Teléfono do seguinte modo:
NIF | Nome | Primeiro Apelido | Segundo Apelido | Teléfono |
---|---|---|---|---|
11111111H | María Xosé | López | Pérez | 666321555 |
11111111H | María Xosé | López | Pérez | 677876432 |
123222333V | Brais | García | Xermade | 611222333 |
123222333V | Brais | García | Xermade | 981333222 |
123222333V | Brais | García | Xermade | 982444333 |
39653802P | Alba | Pereira | Pereira | 912300141 |
Esta solución implica unha forte redundancia (Nome, e repítense por cada teléfono), e invalida a NIF como clave primaria, obrigando a ampliar dita clave primaria co atributo Teléfono. Por ese motivo proponse unga solución máis elaborada consistente en dividir a relación orixinal en dúas (unha coas persoas e outra cos teléfonos), vinculándoas mediante os valores da clave primaria orixinal:
La 1FN é parte da definición do modelo relacional polo que o seu cumprimento é obrigatorio.
Segunda forma normal (2FN)
Una relación está en segunda forma normal (2FN) se cumpre que:
- Está en 1FN.
- Todos os atributos que non forman parte da clave primaria dependen dela por completo.
A relación seguinte ilustra o stock dunha librería. A clave primaria está composta por dous atributos (Código de libro e Código de tienda), pero o atributo Enderezo non depende de toda a clave, se nno únicamente do atributo Código de tenda. Por ese motivo repítese o enderezo da tenda 9, coa conseguinte redundancia de información:
Cod.Libro | Cod.tenda | Cantidade | Enderezo |
---|---|---|---|
479 | 12 | 3 | Praza de armas, 3 |
322 | 1 | 8 | Estrada de castela,12 |
377 | 12 | 4 | Praza de armas, 3 |
873 | 9 | 5 | Rúa real, 5 |
Neste caso o proceso de normalización obriga a dividir a relación en dúas, unha coa información da tenda e outra coa do stock
Cod.Libro | Cod.tenda | Cantidade |
---|---|---|
479 | 12 | 3 |
322 | 1 | 1 |
377 | 12 | 4 |
873 | 9 | 5 |
Cod.tenda | Enderezo |
---|---|
12 | Praza de armas, 3 |
1 | Estrada de Castela, 12 |
9 | Rúa real, 5 |