Clase4
-
Upload
javierjuliac -
Category
Documents
-
view
886 -
download
0
description
Transcript of Clase4
•
• Clase 4• Normalizacion de tablas
• de Bases de datos
• Clase 4 - Normalización de tablas de base de datos Atlantis University
Modalidad - OnlineLcda. Carol Puche
En este capítulo, aprenderá a:
4.1. Fundamentos de la normalización
• Loqueeslanormalizaciónyquépapeldesempeñaenelprocesodediseñodebasesde
datos.
• Sobrelasformasnormalizadas,1NF,2NF,BCNFy4NF
Lanormalizacióneselprocesodeorganizarlosdatosdeunabasededatos.Seincluyela
creacióndetablasyelestablecimientoderelacionesentreellassegúnreglasdiseñadastanto
paraprotegerlosdatoscomoparahacerquelabasededatosseamásflexiblealeliminarla
redundanciaylasdependenciasincoherentes.Losdatosredundantesdesperdicianelespaciode
discoycreanproblemasdemantenimiento.Sihayquecambiardatosqueexistenenmásdeun
lugar,sedebencambiardelamismaformaexactamenteentodassusubicaciones.Uncambioen
ladireccióndeunclienteesmuchomásfácildeimplementarsilosdatossólosealmacenanenla
tablaClientesynoenalgúnotrolugardelabasededatos.
¿Quéesuna“dependenciaincoherente”?Aunqueesintuitivoparaunusuariomirarenlatabla
Clientesparabuscarladireccióndeunclienteenparticular,puedenotenersentidomirarallíel
salariodelempleadoquellamaaesecliente.Elsalariodelempleadoestárelacionadoconel
empleado,odependedeél,yporlotantosedeberíapasaralatablaEmpleados.Las
dependenciasincoherentespuedendificultarelaccesoporquelarutaparaencontrarlosdatos
puedenoestaroestarinterrumpida.
Hayalgunasreglasenlanormalizacióndeunabasededatos.Cadareglasedenominauna
“formanormal”.Sisecumplelaprimeraregla,sedicequelabasededatosestáenla“primera
formanormal”.Sisecumplenlastresprimerasreglas,labasededatosseconsideraqueestáen
la“terceraformanormal”.Aunquesonposiblesotrosnivelesdenormalización,laterceraforma
normalseconsideraelmáximonivelnecesarioparalamayorpartedelasaplicaciones.
• Clase 4 - Normalización de tablas de base de datos Atlantis University
Modalidad - OnlineLcda. Carol Puche
4.2. Primera forma normal
Aligualqueconotrasmuchasreglasyespecificacionesformales,enlosescenariosrealesno
siempresecumplenlosestándaresdeformaperfecta.Engeneral,lanormalizaciónrequiere
tablasadicionalesyalgunosclientesconsideranésteuntrabajoconsiderable.Sidecideinfringir
unadelastresprimerasreglasdelanormalización,asegúresedequesuaplicaciónseanticipaa
losproblemasquepuedanaparecer,comolaexistenciadedatosredundantesydedependencias
incoherentes.Enlasdescripcionessiguientesseincluyenejemplos.
• Eliminelosgruposrepetidosdelastablasindividuales.
• Creeunatablaindependienteparacadaconjuntodedatosrelacionados.
• Identifiquecadaconjuntodedatosrelacionadosconunaclaveprincipal.
Nousevarioscamposenunasolatablaparaalmacenardatossimilares.Porejemplo,pararealizar
elseguimientodeunelementodelinventarioqueprovienededosorígenesposibles,unregistro
delinventariopuedecontenercamposparaelCódigodeproveedor1yparaelCódigode
proveedor2.
¿Quéocurrecuandoseagregauntercerproveedor?Agregaruncamponoeslarespuesta,
requieremodificacionesenlastablasyelprograma,ynoadmitefácilmenteunnúmerovariable
deproveedores.Ensulugar,coloquetodalainformacióndelosproveedoresenunatabla
independientedenominadaProveedoresydespuésvinculeelinventarioalosproveedorescon
elnúmerodeelementocomoclave,olosproveedoresalinventarioconelcódigodeproveedor
comoclave.
• Clase 4 - Normalización de tablas de base de datos Atlantis University
Modalidad - OnlineLcda. Carol Puche
• Creetablasindependientesparaconjuntosdevaloresqueseapliquenavariosregistros.
• Relacioneestastablasconunaclaveexterna.
Losregistrosnodebendependerdenadaquenoseaunaclaveprincipaldeunatabla,unaclave
compuestasiesnecesario.Porejemplo,considereladireccióndeunclienteenunsistemade
contabilidad.LadirecciónsenecesitaenlatablaClientes,perotambiénenlastablasPedidos,
Envíos,Facturas,CuentasporcobraryColecciones.Enlugardealmacenarladireccióndeun
clientecomounaentradaindependienteencadaunadeestastablas,almacénelaenunlugar,ya
seaenlatablaClientesoenunatablaDireccionesindependiente.
Elimine los campos que no dependan de la clave.
Losvaloresdeunregistroquenoseanpartedelaclavedeeseregistronopertenecenala
tabla.Engeneral,siemprequeelcontenidodeungrupodecampospuedaaplicarseamásde
unúnicoregistrodelatabla,considerecolocarestoscamposenunatablaindependiente.Por
ejemplo,enunatablaContratacióndeempleados,puedeincluirseelnombredelauniversidad
yladireccióndeuncandidato.Peronecesitalunalistacompletadeuniversidadesparaenviar
mensajesdecorreoelectrónicoengrupo.Silainformacióndelasuniversidadessealmacenaenla
tablaCandidatos,nohayformadeenumerarlasuniversidadesquenotengancandidatosenese
momento.CreeunatablaUniversidadesindependienteyvincúlelaalatablaCandidatosconel
códigodeuniversidadcomoclave.
4.3. Segunda forma normal
4.4. Tercera forma normal
• Clase 4 - Normalización de tablas de base de datos Atlantis University
Modalidad - OnlineLcda. Carol Puche
Lacuartaformanormal,tambiénllamadaFormanormaldeBoyceCodd(BCNF,BoyceCodd
NormalForm),ylaquintaformanormalexisten,peroraravezseconsideranenundiseñoreal.
Sinoseaplicanestasreglas,eldiseñodelabasededatospuedesermenosperfecto,perono
deberíaafectaralafuncionalidad.
EXCEPCIÓN: cumplirlaterceraformanormal,aunqueenteoríaesdeseable,nosiemprees
práctico.SitieneunatablaClientesydeseaeliminartodaslasdependenciasposiblesentrelos
campos,debecreartablasindependientesparalasciudades,códigospostales,representantes
deventa,clasesdeclientesycualquierotrofactorquepuedaestarduplicadoenvariosregistros.
Enteoría,lanormalizaciónmereceeltrabajoquesupone.Sinembargo,muchastablaspequeñas
puedendegradarelrendimientoosuperarlacapacidaddememoriaodearchivosabiertos.
Puedesermásfactibleaplicarlaterceraformanormalsóloalosdatosquecambiancon
frecuencia.Siquedanalgunoscamposdependientes,diseñelaaplicaciónparaquepidaal
usuarioquecompruebetodosloscamposrelacionadoscuandocambiealguno.
4.5.Otras formas de normalización
• Clase 4 - Normalización de tablas de base de datos Atlantis University
Modalidad - OnlineLcda. Carol Puche
Estos pasos demuestran el proceso de normalización de una tabla de alumnos ficticia.1.Tablasinnormalizar:
2.Primeraformanormal:nohaygruposrepetidos
Lastablassólodebentenerdosdimensiones.Puestoqueunalumnotienevariasclases,estas
clasesdebenaparecerenunatablaindependiente.LoscamposClase1,Clase2yClase3delos
registrosanterioressonindicativosdeunproblemadediseño.
Lashojasdecálculosuelenusarlaterceradimensión,perolastablasnodeberíanhacerlo.Otra
formadeconsiderareseproblemaesconunarelacióndeunoavariosyponerelladodeuno
yelladodevariosentablasdistintas.Ensulugar,creeotratablaenlaprimeraformanormal
eliminandoelgruporepetido(Nºclase),segúnsemuestraacontinuación:
4.6. Normalizar una tabla de ejemplo
Nºalumno Tutor Despacho-Tut Clase1 Clase2 Clase3
1022 García 412 101-07 143-01 159-02
4123 Díaz 216 201-01 211-02 214-01
Nºalumno Tutor Despacho-Tut Nºclase
1022 García 412 101-07
1022 García 412 143-01
1022 García 412 159-02
4123 Díaz 216 201-01
4123 Díaz 216 211-02
4123 Díaz 216 214-01
• Clase 4 - Normalización de tablas de base de datos Atlantis University
Modalidad - OnlineLcda. Carol Puche
3.Segundaformanormal:eliminarlosdatosredundantes
ObservelosdiversosvaloresdeNºclaseparacadavalordeNºalumnoenlatablaanterior.Nº
clasenodependefuncionalmentedeNºalumno(laclaveprincipal),demodoquelarelación
nocumplelasegundaformanormal.
Lasdostablassiguientesdemuestranlasegundaformanormal:
Alumnos:
4.Terceraformanormal:eliminarlosdatosnodependientesdelaclave
Enelúltimoejemplo,Despacho-Tut(elnúmerodedespachodeltutor)esfuncionalmente
dependientedelatributoTutor.LasoluciónespasareseatributodelatablaAlumnosalatabla
Personal,segúnsemuestraacontinuación:
Alumnos:
Registro:
Nombre Habitación Dept
García 412 42
Díaz 216 42
Nºalumno Nºclase
1022 101-07
1022 143-01
1022 159-02
4123 201-01
4123 211-02
4123 214-01
Nºalumno Tutor Despacho-Tut
1022 García 412
4123 Díaz 216
Nºalumno Tutor
1022 García
4123 Díaz
Personal: