6(f2/—*,&2’(%dvhvgh’dwrv · particular, el modelo relacional) • notación “a medio...
TRANSCRIPT
1
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV����
',6(f2�/Ð*,&2�'(�%DVHV�GH�'DWRV� 2EMHWLYR�3ULQFLSDO��7UDQVIRUPDU�HO�(VTXHPD�&RQFHSWXDO�GH
'DWRV�HQ�HO�(VTXHPD�/yJLFR�GH�'DWRV� 2WURV�REMHWLYRV�GHO�'LVHxR�/yJLFR�
± (OLPLQDU�UHGXQGDQFLDV± &RQVHJXLU�Pi[LPD�VLPSOLFLGDG± (YLWDU�FDUJDV�VXSOHPHQWDULDV�GH�SURJUDPDFLyQ
SDUD�FRQVHJXLU����± XQD�(VWUXFWXUD�/yJLFD�DGHFXDGD± XQ�HTXLOLEULR�HQWUH�ORV�UHTXLVLWRV�GH�XVXDULR�\�OD�HILFLHQFLD
� 'LVHxR�/yJLFR�FRQ�OD�Pi[LPD�3257$%,/,'$'✌,QWURGXFFLyQ�³WDUGtD´�GHO�6*%'�HVSHFtILFR
± �,PSOHPHQWDFLyQ�GHO�(VTXHPD�/yJLFR�VREUH�GLIHUHQWHV�6*%'�FRPHUFLDOHV± �0LJUDFLyQ�HQWUH�YHUVLRQHV�GH�XQ�PLVPR�6*%'
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV����
(7$3$6�GHO�',6(f2�/Ð*,&2
c'LVHxR�/yJLFR�(VWiQGDU��'/6�± 7UDQVIRUPDFLyQ�LQGHSHQGLHQWH�GHO�6*%'�HVSHFtILFR± 6H�HOLJH�HO�02'(/2�'(�'$726��QR�HO�6*%'�FRQFUHWR
(VTXHPD�&RQFHSWXDO��(VTXHPD�/yJLFR�H6WiQGDU��ELS�
± 8VR�GH�XQ�0RGHOR�/yJLFR�GH�GDWRV�H6WiQGDU��MLS�� 5HODFLRQDO� 5HG� -HUiUTXLFR� 2ULHQWDGR�D�2EMHWRV
– ELS�GHVFULWR�PHGLDQWH�OHQJXDMH�HVWiQGDU�GHO�PRGHOR�GH�GDWRV� 'LDJUDPD�GH�(VWUXFWXUD�GH�'DWRV� 64/����HQ�HO�0RGHOR�5HODFLRQDO
2
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV����
(7$3$6�GHO�',6(f2�/Ð*,&2
d'LVHxR�/yJLFR�(VSHFtILFR��'/(�± 6H�HOLJH�HO�6*%'�HVSHFtILFR± $GDSWDFLyQ�GHO�(VTXHPD�GH�%'�D�XQ�6*%'�FRQFUHWR� �FRPHUFLDO�
(VTXHPD�/yJLFR�(VWiQGDU��(VTXHPD�/yJLFR�(VSHFtILFR��ELE�
± 8VR�GHO�0RGHOR�/yJLFR�GH�'DWRV�SURSLR�GHO�6*%'�HOHJLGR• Informix, Oracle, DB2, Interbase����
– ELE�GHVFULWR�PHGLDQWH�OHQJXDMH�''/�GHO�6*%'�HVSHFtILFR
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV����
Diagrama de Estructura de Datos, DED
• Técnica de representación gráfica de los esquemaslógicos de datos en los modelos convencionales (enparticular, el modelo relacional)
• Notación “a medio camino” entre los modelosE/R y Relacional
• Soportados por herramientas CASE (ej. System Architect)• Uso del DED en la metodología METRICA v.2.1
– Fase 1:• ARS 3.2: Diseño del Esquema Lógico Actual de Datos• EFS 2.1: Construcción del Esquema Lógico de Datos• EFS 2.2: Normalización del Esquema Lógico de Datos
3
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV����
Diagrama de Estructura de Datos, DED
• Características del DED:– Únicamente Interrelaciones Binarias (dos entidades)– Sólo permitidas las Interrelaciones 1:N
• Transformación de Interrelaciones 1:1– Fusionar en una única entidad, o mantener la interrelación
• Transformación de Interrelaciones M:N– Creación de una entidad auxiliar + Dos interrelaciones 1:N
Ejemplo de Interrelación N:1
EMPLEADO DEPARTAMENTOPertenece
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV����
Normalización del Diagrama deEstructura de Datos
• 1FN: atributos con valor atómico– Evitar atributos multivalorados– Evitar atributos compuestos
• 2FN: en toda entidad E, los atributos no identificadoresdependen de manera total del identificador principal de E– Ningún atributo (no identificador) de E depende sólo de una parte
de cualquier identificador (principal, alternativo) de E
• 3FN: No existen dependencias funcionales transitivasentre los atributos de E.– Todo atributo no identificador sólo depende directamente de los
identificadores.
4
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV����
',6(f2�/Ð*,&2�(67É1'$5
♠�5HJODV�SDUD�HO�0RGHOR�%iVLFR♣�'RPLQLRV♣�$WULEXWRV♣�(QWLGDGHV♣�,QWHUUHODFLRQHV
♠�5HJODV�SDUD�HO�0RGHOR�([WHQGLGR♣�-HUDUTXtDV�GH�(VSHFLDOL]DFLyQ�*HQHUDOL]DFLyQ
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV����
',6(f2�/Ð*,&2�(67É1'$5
5(*/$6�%É6,&$6�����7LSR�GH�(QWLGDG�������������������Ö�5HODFLyQ�����7LSR�GH�,QWHUUHODFLyQ�1�0������Ö�5HODFLyQ�����7LSR�GH�,QWHUUHODFLyQ���1�\�����Ö�³3URSDJDFLyQ�GH�FODYH´�R�QXHYD�5HODFLyQ
/�££�3pUGLGD�GH�VHPiQWLFD���
5
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV����
� '20,1,2
� 7LSR�GH�(17,'$'± 5HODFLyQ�R�WDEOD��VH�UHFRPLHQGD�XVDU�XQ�QRPEUH�VLPLODU��R�HO�PLVPR�
'RPLQLRV�\�7LSRV�GH�(QWLGDG
PERSONA
dirección
teléfono
dni numSS
fechaNacimiento
nombre
nacionalidad altura
PERSONA( dni PRIMARY KEY,numSS NOT NULL UNIQUE,nombre,direccion,telefono,fechaNacimiento,nacionalidad,altura)
0(5 05
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
$WULEXWRV
�D��$WULEXWR�,GHQWLILFDGRU�\�1R�,GHQWLILFDGRU
² ,GHQWLILFDGRU�3ULQFLSDO� Ö�&ODYH�3ULPDULD��PRIMARY KEY�
² ,GHQWLILFDGRU�$OWHUQDWLYRÖ�&ODYH�$OWHUQDWLYD��UNIQUE�
± $WULEXWR�12�LGHQWLILFDGRU Ö�&ROXPQD3RGUi�FRQWHQHU�18/2�VL�QR�VH�LQGLFD�OR�FRQWUDULR
�E��$WULEXWR�6LPSOH�\�0RQRYDOXDGR �&ROXPQD
6
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
$WULEXWRV�F��$WULEXWR�&RPSXHVWR�GHO�WLSR�GH�HQWLGDG�(
$��³(OLPLQDU´�DWULEXWR�FRPSXHVWR�\�FRQVLGHUDU�WRGRV�VXV�FRPSRQHQWHV�FRPRDWULEXWRV�VLPSOHV�GH�OD�UHODFLyQ�5
%��³(OLPLQDU´�ORV�FRPSRQHQWHV�\�FRQVLGHUDU�HO�DWULEXWR�FRPSXHVWR�FRPR�XQ~QLFR�DWULEXWR�GH�5
¢&XiQGR�VHUi�PiV�DGHFXDGRXWLOL]DU�XQD�RSFLyQ�X�RWUD"
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
$WULEXWRV�G��$WULEXWR�0XOWLYDORUDGR�GHO�WLSR�GH�HQWLGDG�(
± 1XHYD�5HODFLyQ�6��HQ�OD�TXH�HO�DWULEXWR�PXOWLYDORUDGR�VH�UHSUHVHQWD�FRPRXQ�DWULEXWR�VLPSOH�$
± 6�FRQWHQGUi�XQ�DWULEXWR�)��FODYH�DMHQD�D�OD�FODYH�SULPDULD�GH�5± &ODYH�3ULPDULD�GH�6� ��)��$�
PERSONA
fechaNac
dni
direccion (1,n)
nombre
3(5621$�GQL��QRPEUH��IHFKD1DF�
',5(&&,21B3(5621$�GQL��GLUHFFLRQ�
FK
PERSONA
DIRECCIONPERSONA
7
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
,QWHUUHODFLyQ�%LQDULD�0�1
ªª�$f$',5�81$�18(9$�5(/$&,Ð1�5�TXH�LQFOX\H�DWULEXWRV���± SDUD�FDGD�FODYH�SULPDULD�GH�5��\�GH�5�
� &ODYHV�DMHQDV�D�OD�FODYH�SULPDULD�GH�5��\�5���UHVSHFWLYDPHQWH� 6X�FRPELQDFLyQ��FRQFDWHQDFLyQ��IRUPD�OD�FODYH�SULPDULD�GH�5
± SDUD�FDGD�DWULEXWR�VLPSOH��R�FRPSRQHQWH�VLPSOH�GH�DWULEXWR�FRPSXHVWR�GHO�WLSR�GH�LQWHUUHODFLyQ�,5
AUTOR LIBRO
fechaFin
(1,n) (1,m) titulo
nomAutor
codAutor
isbn
derechosAutor
Escribe
AUTOR(codAutor, nomAutor, ...)
ESCRIBE(codAutor, isbn, fechaFin, derecAutor)
LIBRO(isbn, titulo, ...)
FK
FK
E1 E2IR
R1 R2R
>G03��@
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
,QWHUUHODFLyQ�%LQDULD�0�1� (VSHFLILFDFLyQ�GH�DFFLRQHV�GLVSDUDGDV�SRU�,QWHJULGDG�5HIHUHQFLDO
CREATE TABLE ESCRIBE(codAutor Autores, codLibro Codigos, fechaFin DATE NOT NULL, derecAutor NUMBER(2) DEFAULT 20, PRIMARY KEY (codAutor, codLibro), FOREIGN KEY(codAutor) REFERENCES AUTOR(codAutor)
ON DELETE RESTRICTON UPDATE CASCADE,
FOREIGN KEY(codLibro) REFERENCES LIBRO(isbn)ON DELETE CASCADEON UPDATE CASCADE
);
8
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
,QWHUUHODFLyQ�%LQDULD�0�1
� (VSHFLILFDFLyQ�GH�5HVWULFFLRQHV�R�$VHUWRV± 3DUD�UHFRJHU�&$5',1$/,'$'(6�0Ë1,0$�\�0È;,0$
8Q�OLEUR�GHEH�WHQHU�HQWUH���\���DXWRUHVCREATE ASSERTION num_autores_por_libroCHECK (
(4>=(SELECT MAX(ocurrencias) FROM (SELECT COUNT(*) AS ocurrencias
FROM ESCRIBEGROUP BY codLibro)))
AND
(1<=(SELECT MIN(ocurrencias) FROM (SELECT COUNT(*) AS ocurrencias
FROM ESCRIBE GROUP BY codLibro))));
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
,QWHUUHODFLyQ�%LQDULD�����D��3DUWLFLSDFLyQ�727$/�GH�DPERV�WLSRV�GH�HQWLGDG
/RV�WLSRV�GH�HQWLGDG�12�SDUWLFLSDQ�HQ�RWURV�WLSRV�GH�LQWHUUHODFLyQ
ªª�81$�Ó1,&$�5(/$&,Ð1�5
± 3URSDJDFLyQ�GH�FODYHV�HQ�XQD�X�RWUD�GLUHFFLyQ��HV�LQGLIHUHQWH�� &ODYH�3ULPDULD�GH�5� �FODYH�SULPDULD�GH�5�� R�GH�5��� VL�VRQ�GLVWLQWDV �� /D�RWUD�VHUi�FODYH�DOWHUQDWLYD��81,48(��\�DGHPiV�127�18//
± $WULEXWRV�VLPSOHV�GH�,5�R�FRPSRQHQWHV�VLPSOHV�GH�DWULEXWRV�FRPSXHVWRV�WDPELpQ�VH�LQFOX\HQ�FRPR�DWULEXWRV�GH�OD�UHODFLyQ�5
centroSalud
(1,1) (1,1) fechaApertura
nombre
nss
numHisto
...
MEDICOHISTORIALPACIENTE
PACIENTE( nss, nombre, numHisto, fechaApertura, centrosalud, ...)
...
AK, NN
Tiene
PK
9
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
,QWHUUHODFLyQ�%LQDULD�����E��3DUWLFLSDFLyQ�727$/�GH�XQD�HQWLGDG�\�3$5&,$/�GH�OD�RWUD
�E����&DVR�JHQHUDO
ªª�3523$*$&,Ð1�'(�&/$9(± /D�FODYH�GH�OD�HQWLGDG�FRQ�SDUWLFLSDFLyQ�SDUFLDO�³VH�SURSDJD´KDFLD�OD�HQWLGDG�FRQ�SDUWLFLSDFLyQ�WRWDO�→�FODYH�DMHQD
EMPLEADO(codEmp, nomEmp, ...)
DEPARTAMENTO(numDep, nomDep, codDire, fechaInic...)
FK
Un empleado de una empresa puede ser el gerente de un (único)departamento (desde cierta fecha, en la que fue nombrado comotal), o bien no dirigir ninguno.
E1 E2IR
R1 R2
(1,1) (0,1)DEPARTAMENTOEMPLEADO
codEmp
nomEmp nomDep
numDep
Dirige
fechaInic >G03��@
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
,QWHUUHODFLyQ�%LQDULD�����E����+D\�SRFDV�LQVWDQFLDV�GHO�WLSR�GH�LQWHUUHODFLyQ
ªª�$f$',5�81$�18(9$�5(/$&,Ð1�5± $WULEXWRV�GH�5�
� XQR�V��SDUD�FDGD�FODYH�SULPDULD�GH�5��\�GH�5�± VRQ�FODYHV�DMHQDV��D�OD�FODYH�SULPDULD�GH�5��\�GH�5���UHVSHFWLYDPHQWH�± VRQ�FODYHV�FDQGLGDWDV�HQ�5ª�XQR�GH�HOORV�VHUi�OD�&ODYH�3ULPDULD�GH�5��OD�GH�SDUWLFLSDFLyQ�WRWDO��VL�H[LVWH�ª�HO�RWUR�VHUi�&ODYH�$OWHUQDWLYD�GH�5��UNIQUE��\�DGHPiV�NOT NULL
� DWULEXWRV�VLPSOHV��R�FRPSRQHQWHV�VLPSOHV�GH�DWULEXWRV�FRPSXHVWRV��GH�,5
± (YLWD�18/26�HQ�ORV�DWULEXWRV�SURSDJDGRVEMPLEADO(codEmp, nomEmp, ...)
DIRIGE(codEmp, numDep, fechaInic)
DEPARTAMENTO(numDep, nomDep,...)
FK
FKAK, NN
10
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
,QWHUUHODFLyQ�%LQDULD�����E����+D\�PXFKDV�LQVWDQFLDV�GHO�WLSR�GH�LQWHUUHODFLyQ
ªª�81$�Ó1,&$�5(/$&,Ð1�5± $WULEXWRV��WRGRV��ORV�GHO�WLSR�GH�HQWLGDG�\�ORV�GHO�WLSR�GH�LQWHUUHODFL yQ�± &ODYH�3ULPDULD��OD�GH�OD�HQWLGDG�FRQ�SDUWLFLSDFLyQ�3$5&,$/��EMPLEADO�± 'HEH�SHUPLWLUVH�18/26�HQ�ORV�DWULEXWRV�SURSDJDGRV� �HPSOHDGRV�12�GLUHFWRUHV�
� GHVGH�OD�HQWLGDG�FRQ�SDUWLFLSDFL yQ�727$/�\� GHVGH�OD�LQWHUUHODFLyQ
EMPLEADO(codEmp ... PRIMARY KEY,nomEmp ... ,...,numDepDir ... NULL UNIQUE,nomDepDir ... NULL,...,fechaInicDir ... NULL,... )
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
,QWHUUHODFLyQ�%LQDULD�����F��3DUWLFLSDFLyQ�3$5&,$/�GH�DPERV�WLSRV�HQWLGDG
ªª�$f$',5�81$�18(9$�5(/$&,Ð1�5
± 5�VH�FRQVWUX\H�H[DFWDPHQWH�LJXDO�TXH�HQ�HO�FDVR��E���± (YLWD�ORV�YDORUHV�QXORV�TXH�DSDUHFHUtDQ�VL�VH�SURSDJDUD�OD�FODYH�GH�5��D5��R�YLFHYHUVD��FDVR��E����
(0,1) (0,1)MUJERHOMBRE
nif nif
Matrimonio Estándar
fecha
lugarHOMBRE(nif, ...)
MATRIMONIO(nifEsposa, nifEsposo, fecha, lugar)
MUJER(nif, ...)
FK
FKAK, NN
<����¢TXp�DFFLRQHV�GLVSDUDGDV�SRU�OD�,QWHJULGDG5HIHUHQFLDO�GHEHUHPRV� LPSRQHU�SDUD� �WRGRV� ORVFDVRV�GH��ODV�LQWHUUHODFLRQHV����"���
11
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
,QWHUUHODFLyQ�%LQDULD���1
�D��&DVR�JHQHUDOªª�3523$*$&,Ð1�'(�&/$9(± (Q�5��VH�LQFOX\HQ�QXHYRV�DWULEXWRV�SDUD�FRQWHQHU�YDORUHV�GH���
� FODYH�SULPDULD�GH�5�± &ODYH�DMHQD�HQ�5��KDFLD�5�� �RMR�FRQ�DFFLRQHV�GLVSDUDGDV�SRU�,QWHJULGDG�5HIHUHQFLDO�
� DWULEXWRV�VLPSOHV��R�FRPSRQHQWHV�VLPSOHV�GH�DWULEXWRV�FRPSXHVWRV��GH�,5
�D����3DUWLFLSDFLyQ�727$/�X�REOLJDWRULD�GH�(��HQ�,5��FDUG�(�� �����
E1 E2IR
R1 R2
CIUDAD(nomCiudad, codProv, ...)
PROVINCIA(codProv, nomProv, ...)FK: NULOS NO PERMITIDOS
1 N
PROVINCIA CIUDAD(1,1) (1,n)
nomProv
codProv
nombreCiudadEsta_en
1:N
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
,QWHUUHODFLyQ�%LQDULD���1
�D����3DUWLFLSDFLyQ�3$5&,$/�X�RSFLRQDO�GH�(��HQ�,5��FDUG�(�� �����
PINACOTECA CUADRO(0,1) (1,n)
nomMuseo
codCuadro
CUADRO(codCuadro, titulo, pintor, nomMuseo, sala...)
PINACOTECA(nomMuseo, ciudad, ...)
Expone
FK
titulo
pintorciudad
sala
NULOS PERMITIDOS
12
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
,QWHUUHODFLyQ�%LQDULD���1�E��&DVR�HQ�HO�TXH�VH�FXPSOH�XQR�GH�HVWRV�VXSXHVWRV�
± +D\�SRFDV�RFXUUHQFLDV�GHO�WLSR�GH�LQWHUUHODFLyQ� 6H�WHQGUtDQ�GHPDVLDGRV�18/26�HQ�OD�FODYH�SURSDJDGD��R
± ,5�WLHQH�YDULRV�DWULEXWRV�SURSLRV��R± (V�SUREDEOH�TXH�,5�VH�WUDQVIRUPH�HQ�XQ�IXWXUR�HQ�XQD�LQWHUUHODFLyQ�1�0
ªª�$f$',5�81$�18(9$�5(/$&,Ð1�5± 5�VH�FRQVWUX\H�H[DFWDPHQWH�LJXDO�TXH�SDUD�LQWHUUHODFLRQHV����� �FDVR�E���
� &ODYH�SULPDULD��SURSDJDGD�GHVGH�OD�HQWLGDG�FX\DV�LQVWDQFLDV�V yOR�SDUWLFLSDQXQD�YH]��R�QLQJXQD��HQ�OD�LQWHUUHODFL yQ
ESTUDIANTE(nif, nombre, ...)
PROPIEDAD(nifEstudiante, matricula)
COCHE(matricula, modelo, ...)FK
FK NN
ESTUDIANTE COCHE(0,1) (0,n)
nif matriculaPropietario_de
modelonombre
1 : N
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
'HSHQGHQFLD�HQ�H[LVWHQFLD�H�LGHQWLILFDFLyQ
� &DVR�SDUWLFXODU�GH�,5�����R���1����FRQ�SURSDJDFLyQ�GH�FODYH�\�SDUWLFLSDFLyQ�WRWDO�GH�(�����FDVR�D���
� FODYH�DMHQD�)�GH�5��KDFLD�5���SURSDJDFLyQ�GH�FODYH�GHVGH�5��D�5����������QR�SHUPLWH�18/2� FODYH�SULPDULD�GH�5��
² '(3(1'(1&,$�(1�(;,67(1&,$ª DWULEXWRV�FODYH�SULPDULD�GH�5���LGHQWLILFDGRU�SULQFLSDO�GH�(��
² '(3(1'(1&,$�(1�,'(17,),&$&,Ð1ª FRPELQDFLyQ�GH�DWULEXWRV��)�\�FODYH��SDUFLDO��GH�5�
� $FWXDOL]DFLRQHV�\�%RUUDGRV�HQ�5��VH�WUDQVPLWHQ�HQ�&$6&$'$KDFLD�5�
E1 E2IR
R1 R2
13
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
'HSHQGHQFLD�HQ�H[LVWHQFLD�H�LGHQWLILFDFLyQ
FAMILIAREMPLEADO(1,1) (0,n)
EMPLEADO ( nifEmp, nomEmp, ...)
FAMILIAR ( nifFam, nifEmp, ... )
FK
E
nulos no permitidosON DELETE CASCADEON UPDATE CASCADE
nifFamnifEmpnomEmp
VISITAMEDICA
PACIENTE
1:N
(1,1) (1,n)
PACIENTE ( historial, nombre, ... )
VISITA_MEDICA ( historial,fecha,hora, ... )
FK
ID
nulos no permitidosON DELETE CASCADEON UPDATE CASCADE
fechahistorialnombre hora
observaciones
1:N
Tiene
Acude
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
$WULEXWR�0XOWLYDORUDGR�GH�,QWHUUHODFLyQ
ªª�18(9$�5(/$&,Ð1�6�± (O�DWULEXWR�PXOWLYDORUDGR�VH�UHSUHVHQWD�FRPR�XQ�DWULEXWRVLPSOH�$
± (O�UHVWR�GH�DWULEXWRV�VLPSOHV�GH�,5��VL�ORV�KD\��SDVDQ�D�6
E1 E2IR
R1 R2R
A (0,n)
S(..., A)
14
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
$WULEXWR�0XOWLYDORUDGR�GH�,QWHUUHODFLyQ
6HJ~Q�,5�VHD���² ���
� 6�LQFOX\H�XQ�DWULEXWR�)��FODYH�DMHQD�D�OD�FODYH�SULPDULD�GH�5��R�GH�5�� &ODYH�3ULPDULD�GH�6� ��)��$�
² ��1���(��HV�HO�WLSR�HQWLGDG�FRQ�FDUGLQDOLGDG�1��� 6�LQFOX\H�XQ�DWULEXWR�)��FODYH�DMHQD�D�OD�FODYH�SULPDULD�GH�5�� &ODYH�3ULPDULD�GH�6� ��)��$�
² 1�0� 6�LQFOX\H�GRV�DWULEXWRV�)��\�)���FODYHV�DMHQDV�D�ODV�FODYHV�SULPDULDVGH�5��\�5���UHVSHFWLYDPHQWH
� &ODYH�3ULPDULD�GH�6� ��)���)���$�
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
PROFESOR(nifProf, ...)
OFERTA_SEMINARIO (nifProf, codSeminario, maxNumAlumnos)
SEMINARIO(codSeminario,...)
SEMINARIO_OFERTADO (nifProfesor, codSemin, trimestre)
FK
FK
FK
FK
R1
R
R2
SAF2F1
$WULEXWR�0XOWLYDORUDGR�GH�,QWHUUHODFLyQ
trimestre (1,3)
PROFESOR SEMINARIO(1,m) (0,n)
maxNumAlumnosnifProf
PuedeOfertar
codSeminario
&DVR�1�0
PROFESOR
SEMINARIO
SeminarioOfertado
OfertaSeminario
15
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
,QWHUUHODFLRQHV�5HIOH[LYDV
( Solución problemática si puede haber muchos empleados sin jefe → demasiados nulos )
EMPLEADO JEFE DE
subordinado
jefenifEmp
nomEmp
EMPLEADO (nifEmp, nomEmp, ...)
JEFE_DE(nifJefe, nifSubordinado, ...)
&DVR�1�0EMPLEADO ( nifEmp, nomEmp, ...)
JEFE_DE ( nifJefe, nifSubordinado, ... )
&DVRV���1
EMPLEADO ( nifEmp, nomEmp, ..., nifJefe, ... )
��5HODFLyQ�GRQGH�OD�FODYH�SULPDULD�GHO�WLSR�GH�HQWLGDG�DSDUHFH� UHIHUHQFLDGD�'26�9(&(6
��1RPEUDU�HVRV�DWULEXWRV�VHJ~Q�ORV�UROHV�GHO�WLSR�HQWLGDG�HQ�OD�LQWHUUHODFL yQ
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
PRODUCTO(codigo, descripcion, ...)
COMPONENTE(codAgregado, codComponente) ����XQ�SURGXFWR�HV�FRPSRQHQWH�GH�XQ�~QLFR�SURGXFWR��R�GH�QLQJXQR
FK
PRODUCTO(0,1)
(0,n)
descripcion
codigo
COMPUESTO_POR
agregado
componente
1
N
FK
PRODUCTO(codigo, descripcion, codProducto,...)FK: nulos permitidos
�$O�3URGXFWR�$JUHJDGR�R�&RPSXHVWR�
3URGXFWR�R�&RPSRQHQWH
,QWHUUHODFLRQHV�5HIOH[LYDV��FRQW��
>(1��@
16
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
ªª�$f$',5�81$�18(9$�5(/$&,21�5TXH�LQFOX\H�DWULEXWRV���� SDUD�FDGD�FODYH�SULPDULD�GH�5���5���5����
± &ODYHV�DMHQDV�D�OD�UHODFLyQ�5L�FRUUHVSRQGLHQWH
� SDUD�FDGD�DWULEXWR�VLPSOH��R�FRPSRQHQWH�VLPSOH�GH�DWULEXWR�FRPSXHVWR��GH�,5
± &ODYH�SULPDULD�GH�5�� 1RUPDOPHQWH��HV�OD�FRPELQDFLyQ�GH�WRGDV�ODV�FODYHV�H[WHUQDV�KDFLD� 5L� SHUR�HV�SRVLEOH�TXH�OD�3.�GH�5�VHD�XQ� VXEFRQMXQWR�GH�HVD�VXSHUFODYH
E1 E2IR
R1 R2E3
R3
,QWHUUHODFLRQHV�Q�DULDV
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
CLIENTE VENDEDOR(0,n) (0,m)
nifCliente
nifVendedor
VENTA
BANCO cifBanco
COCHE
matricula
(0,1)
(0,p)
fechaVenta
VENTA (matricula, nifVendedor, nifCliente, cifBanco, fechaVenta, ...)
¢&XiO�HV�OD�VXSHUFODYH�GH�HVWD�UHODFLyQ" ¢\�FXiO�HV�VX�FODYH�SULPDULD" ¢&yPR�DVHJXUDU�TXH�QR�KD\D�YHQWDV�VLQ�FOLHQWH�R�VLQ�FRFKH�R�VLQ�YHQGHGRU" ¢3XHGH�UHIOHMDUVH�OD�H[LVWHQFLD�GH�YHQWDV�GLUHFWDV��VLQ�EDQFR�"
,QWHUUHODFLRQHV�Q�DULDV
17
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
-HUDUTXtDV�GH�(VSHFLDOL]DFLyQ�*HQHUDOL]DFLyQ
�D��7UDQVIRUPDFLyQ�'LULJLGD�SRU�HO�6XSHUWLSR� /RV�VXEWLSRV�VH�GLIHUHQFLDQ�HQ�SRFRV�DWULEXWRV� ,QWHUUHODFLRQHV�HVWDEOHFLGDV�FRQ�HO�VXSHUWLSR�RVRQ�ODV�PLVPDV�SDUD�WRGRV�ORV�VXEWLSRV
± 6H�FUHD�XQD�~QLFD�UHODFLyQ�5�TXH�FRQWLHQH���� 72'26�ORV�DWULEXWRV�GHO�VXSHUWLSR�3�\�GH�ORV�VXEWLSRV�6��\�6�� XQ�DWULEXWR�QXHYR����DWULEXWR�GLVFULPLQDQWH�G�GH�OD�MHUDUTXtD� �SRVLEOHV��QXHYDV�UHVWULFFLRQHV�VHPiQWLFDV
± /D�FODYH�SULPDULD�GH�5�HV�HO�DWULEXWR�FRUUHVSRQGLHQWH�DO�$,3GHO�VXSHUWLSR
P
S2S1
d
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
DOCUMENTO codigo
LIBROARTÍCULO
titulo
idioma
añoEdicion nomEditorial
tipo
CREATE TABLE '2&80(172(codigo ... PRIMARY KEY,titulo... ,idioma ... ,tipo ... ,nomEditorial ... NULL,añoEdicion ... NULL,...CHECK (( tipo = “ARTICULO” AND
nomRevista IS NOT NULL ANDañoEdicion IS NULL ANDnomEditorial IS NULL)
OR ( tipo = “LIBRO” ANDnomRevista IS NULL ANDañoEdicion IS NOT NULL ANDnomEditorial IS NOT NULL))
);
�$WULEXWR',6&5,0,1$17(
5HVWULFFLRQHV6(0É17,&$6nomRevista
-HUDUTXtD�GH�(VSHFLDOL]DFLyQ�*HQHUDOL]DFLyQ
18
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
± 6L�OD�MHUDUTXtD�HV�727$/��HO�GLVFULPLQDQWH�QR�SHUPLWH�18/26
± 6L�OD�MHUDUTXtD�HV�62/$3$'$�� 7UDWDU�HO�GLVFULPLQDQWH�FRPR�XQ�$75,%872�08/7,9$/8$'2��R
� $xDGLU�XQ�DWULEXWR�SRU�FDGD �VXEWLSR��ERROHDQR�TXH�LQGLFD�VL�∈�R�∉�DO�VXEWLSR�
9HQWDMDV�H�,QFRQYHQLHQWHV-�$FFHVR�HILFLHQWH�D�72'$�OD�LQIRUPDFLyQ�VREUH�XQD�HQWLGDG�FRQFUHWD��DFFHVR
D�XQD�VROD�UHODFLyQ�
/� $SDULFLyQ�GH�QXORV��DWULEXWRV�TXH�SURFHGHQ�GH�VXEWLSRV�SDUD�HQWLGDGHV�TXHQR�SHUWHQHFHQ�D�WDOHV�VXEWLSRV�� �7RGD�RSHUDFLyQ�VREUH�VXEWLSRV�GHEH�´EXVFDUµ�ODV�LQVWDQFLDV�GH�ORV�VXEWLSRVHQ�HO�FRQMXQWR�FRPSOHWR��VXSHUWLSR��GH�LQVWDQFLDV
-HUDUTXtD�GH�(VSHFLDOL]DFLyQ�*HQHUDOL]DFLyQ
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
��E��7UDQVIRUPDFLyQ�´7RWDOµ� /RV�VXEWLSRV�VH�GLIHUHQFLDQ�HQ�PXFKRV�DWULEXWRV
� 6H�GHVHD�PDQWHQHU�ORV�DWULEXWRV�FRPXQHV�HQ
����XQD�UHODFLyQ�VHSDUDGD
± XQD�UHODFLyQ�5�SDUD�HO�VXSHUWLSR�3� LQFOX\H�DWULEXWRV�GH�3� OD�FODYH�SULPDULD�GH�5�HV�HO�DWULEXWR�FRUUHVSRQGLHQWH�DO�$,3�GHO �VXSHUWLSR
± XQD�UHODFLyQ�5L�SDUD�FDGD�VXEWLSR�6L� FRQWLHQH�DWULEXWRV�GHO�VXEWLSR�6 L��\XQ�DWULEXWR�FODYH�DMHQD�KDFLD�OD�FODYH�SULPDULD�GH�5
� /D�FODYH�SULPDULD�GH�FDGD�5L�HV�HO�DWULEXWR�FODYH�DMHQD�D�OD�FODYH�SULPDULD�GH�5
-� )XQFLRQD�SDUD�MHUDUTXtDV�GH�WRGR�WLSR��/D�PHMRU�GHVGH�HO�SWR��GH�YLVWD�VHPiQWLFR� &RQYLHQH�VL�ODV�RSHUDFLRQHV�VRQ�HVWULFWDPHQWH�́ ORFDOHVµ�D�ORV�VXEWLSRV�R�ELHQ�DOVXSHUWLSR��H�G��FDVL�QXQFD�VH�DFFHGH�D�OD�YH]�D�DWULEXWRV�GH�VXEWLSR�\�VXSHUWLSR�
/�0HQRV�HILFLHQWH�HQ�HO�DFFHVR�� ¢3RU�TXp" �
P
S2S1
d
-HUDUTXtD�GH�(VSHFLDOL]DFLyQ�*HQHUDOL]DFLyQ
19
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
��F��7UDQVIRUPDFLyQ�'LULJLGD�SRU�ORV�6XEWLSRV� ([LVWHQ�PXFKRV�DWULEXWRV�12�FRPXQHV��HQ�ORV�VXEWLSRV�� ([LVWHQ�SRFRV�DWULEXWRV�FRPXQHV��HQ�HO�VXSHUWLSR�� /RV�DFFHVRV�D�GDWRV�GH�VXEWLSRV�VLHPSUH�DIHFWDQWDPELpQ�D�GDWRV�FRPXQHV
± 6H�FUHD�XQD�UHODFLyQ�5L�SDUD�FDGD�VXEWLSR�6L� FRQWLHQH�DWULEXWRV�GHO�VXEWLSR�6 L��\� DWULEXWRV�FRPXQHV��GHO� VXSHUWLSR�
± /D�FODYH�SULPDULD�GH�FDGD�5L�HV�HO�DWULEXWR�$,3�GHO�VXSHUWLSR
-� &RQYLHQH�VL�HO�FRQFHSWR�TXH�UHSUHVHQWD�HO�VXSHUWLSR�QR�VH�UHTXLHUH�HQ�HO�GLV��OyJLFR� )XQFLRQD�SDUD�MHUDUTXtDV�WRWDOHV�\�H[FOXVLYDV� $FFHVR�PX\�HILFLHQWH�D�WRGD�OD�LQIRUPDFLyQ��UHXQLyQ�\D�´LQWHJUDGDµ�HQ�HO�HVTXHPD�
/� &RQ�MHUDUTXtDV�VRODSDGDV�DSDUHFHQ�´UHSHWLFLRQHVµ� &RQ�MHUDUTXtDV�SDUFLDOHV�VXUJHQ�SUREOHPDV�GH�́ IDOWD�GH�UHSUHVHQWDFLyQµ� 3DUD�EXVFDU�XQD�RFXUUHQFLD�GHO�VXSHUWLSR��KD\�TXH�EXVFDU�HQ�WRGDV�ODV�UHODFLRQHV���SURFHGHQWHV�GH�ORV�VXEWLSRV�
P
S2S1
d
-HUDUTXtD�GH�(VSHFLDOL]DFLyQ�*HQHUDOL]DFLyQ
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
',6(f2�/Ð*,&2�(63(&Ì),&2��'/(�� &RQRFLPLHQWR�GHO�6*%'
¢6RSRUWD�HO�0/6"�¢+DVWD�TXp�SXQWR"¢&yPR�HVFULELU�HO�(/(�FRQ�OD�VLQWD[LV�SURSLD�GHO�6*%'"
� (VWXGLDU�OD�FRUUHVSRQGHQFLD�HQWUH�FRQFHSWRV�GHO�0/6�\�GHO�6*%'
3XHGHQ�GDUVH�GRV�FDVRV����6*%'�FRQ�VRSRUWH�WRWDO�GHO�0/6�VLQ�UHVWULFFLRQHV
� 7UDQVIRUPDFLyQ��FDVL��GLUHFWD�DO�64/�SURSLR�GHO�6*%'
���6*%'�QR�VRSRUWD�DOJXQRV�FRQFHSWRV��R�Vt�OR�KDFH�SHUR�FRQ�UHVWULFFLRQHV� 8VR�GH�FRQFHSWRV�GLVWLQWRV�DOWHUQDWLYRV� 3URJUDPDFLyQ�FRPSOHPHQWDULD
� /D�PD\RU�SDUWH�GHO�(/6�VLUYH�FRPR�(/(��DVt�TXH�VyOR�YHUHPRVORV�DVSHFWRV�TXH�QHFHVLWDQ�WUDQVIRUPDFLRQHV�DGLFLRQDOHV
20
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
'/(��'RPLQLRV� $OJXQRV�SURGXFWRV�FRPHUFLDOHV�VyOR�RIUHFHQ�VLQWD[LV�GH�GHILQLFLyQ�GHGRPLQLRV��SHUR�QR�LPSOHPHQWDQ�OD�VHPiQWLFD�DVRFLDGD± 6HJ~Q�&RGG��������HO�XVR�GH�GRPLQLRV�WLHQH�HVWDV�YHQWDMDV
• Declaración única de cada tipo de datos permitido en el esquema,• Soporte de integridad y coherencia entre dominios
(operaciones compatibles como la UNION, INTERSECCION, etc.),• Posibilidad de creación de operadores y características propias de los dominios,• Facilitar la definición de comprobaciones del SGBD (menor/mayor que),• Posible indexación sobre el dominio, no sobre las columnas de las tablas,• Simplificar operaciones complejas sobre varias columnas, haciendolas
directamente sobre el dominio
� /D�PD\RUtD�GH�6*%'�12�RIUHFH�QLQJ~Q�VRSRUWH�SDUD�GRPLQLRV$OWHUQDWLYD�± 'HILQLU�WLSR�GH�GDWRV��ORQJLWXG��UHVWULFFLRQHV�SDUD�FDGD�DWULEXWR��FROXPQD�± 6LPXODFLyQ�
� 7DEODV�GH�'RPLQLR�\� 3URFHGLPLHQWRV�GH�FRPSUREDFLyQ�GH�YDORUHV�FRUUHFWRV��FRQWURO�GH�LQWHJULGDG�
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
'/(��&ODYHV�3ULPDULDV
� 6L�HO�6*%'�QR�GLVSRQH�GH�VLQWD[LV�SDUD�GHILQLFLyQ�GH�3.�R�VyOR�RIUHFH�ODVLQWD[LV�SDUD�KDFHUOR��SHUR�QR�LPSOHPHQWD�VX�VHPiQWLFD��FRPROracle6����
± (VSHFLILFDU�FDGD�DWULEXWR�FRPSRQHQWH�GH�OD�3.�FRPR�NOT NULL
± (VSHFLILFDU�TXH�OD�FRPELQDFLyQ�GH�WRGRV�ORV�FRPSRQHQWHV�GH�OD�3.�KD�GHWHQHU�YDORUHV�~QLFRV��\�DVHJXUDU�HVWR�WUDV�LQVHUFLRQHV�\�DFWXDOL]DFLRQHV�
± 0DQWHQHU�OD�GHILQLFLyQ�GH�FDGD�FODYH�SULPDULD�FRPR�FRPHQWDULR�HQ�HOFDWiORJR�GHO�6*%'�R��VL�pVWH�OR�VRSRUWD��LQFOXLU�OD�GHILQLFLyQ�VLQWiFWLFD
1RWD�� HQ� HO� HVWiQGDU� 64/�� QR� HV� REOLJDWRULR� HVSHFLILFDU� OD� 3.� GH� XQDUHODFLyQ�� \� HQ� ORV� SURGXFWRV� FRPHUFLDOHV� WDPSRFR� �SRU� FRPSDWLELOLGDGFRQ�YHUVLRQHV�DQWHULRUHV�
21
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
'/(��&ODYHV�$MHQDV
� 3RFRV�SURGXFWRV�VRSRUWDQ�HVWH�FRQFHSWR��Oracle7 Vt�� $OJXQRV�OR�LQFOX\HQ�VyOR�D�QLYHO�VLQWiFWLFR��SHUR�QR�LPSOHPHQWDQ�ODVHPiQWLFD�DVRFLDGD��Oracle6�
� 2WURV�SHUPLWHQ�FUHDU�XQ�SURFHGLPLHQWR��DOPDFHQDGR�HQ�HO�FDW iORJR�TXH�LPSOHPHQWD�FDGD�FODYH�DMHQD
� (O�PHFDQLVPR�GH�,QWHJULGDG�5HIHUHQFLDO�SHQDOL]D�ORV�WLHPSRV�GHUHVSXHVWD�GHO�VLVWHPD± LPSRUWDQWH�HQ�FRQVXOWDV�LQWHUDFWLYDV��VREUH�WRGR�± %RUUDGRV�$FWXDOL]DFLRQHV�HQ�FDVFDGD�± ,PSOHPHQWDFLyQ�GH�,QWHJULGDG�5HIHUHQFLDO�³HQ�GLIHULGR´�
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
'/(��&ODYHV�$MHQDV
� /D�PD\RUtD�GH�SURGXFWRV�12�VRSRUWDQ�HVWH�FRQFHSWR��HQWRQFHV���± ,QWURGXFLU�ODV�UHVWULFFLRQHV�GH�FODYH�DMHQD�).�FRPR�UHTXLVLWRV�GHHVSHFLILFDFLyQ�GH�SURJUDPDV
± (VSHFLILFDU�FRPR�NOT NULL�ORV�DWULEXWRV�GH�).�FRQ�QXORV�QR�SHUPLWLGRV
± 0DQWHQHU�OD�GHILQLFLyQ�GH�FDGD�FODYH�DMHQD�FRPR�FRPHQWDULR�HQ�HOFDWiORJR�GHO�6*%'�R��VL�pVWH�OR�VRSRUWD��LQFOXLU�VX�GHILQLFLyQ�VLQWiFWLFD
± 8WLOL]DU�PHFDQLVPRV�GH�VHJXULGDG��GRANT, REVOKE��SDUD�SURKLELURSHUDFLRQHV�GH�DFWXDOL]DFLyQ�LQWHUDFWLYDV�TXH�SXHGHQ�YLRODU�5,UHIHUHQFLDO
± &UHDU�XQ�SURFHGLPLHQWR�TXH�SHULyGLFDPHQWH�FRPSUXHEH�\�QRWLILTXHSRVLEOHV�YLRODFLRQHV�GH�OD�,QWHJULGDG�5HIHUHQFLDO
22
'LVHxR�/yJLFR�GH�%DVHV�GH�'DWRV�����
'/(��2WURV�FRQFHSWRV�GHO�0RGHOR�5HODFLRQDO
� 6HUi�QHFHVDULR�FUHDU�SURFHGLPLHQWRV�\�R�GLVSDUDGRUHV�� triggers��TXHYHULILTXHQ�ODV�UHVWULFFLRQHV�GH�LQWHJULGDG�GHILQLGDV�HQ�OD�IDVH�GHDiseño Lógico Estándar
� 6L�HO�6*%'�OR�SHUPLWH��VH�DOPDFHQDUiQ�HQ�HO�FDWiORJR�GHO�6*%'
� 6L�QR��VHUiQ�SDUWH�GH�ORV�SURJUDPDV�GH�DSOLFDFLyQ² 5HVWULFFLRQHV�GH�LQWHJULGDG�FRPR�HVSHFLILFDFLRQHV�GH�SURFHVRV