Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
www.FreeLibros.me www.FreeLibros.me Administración de bases de datos Diseño y desarrollo de aplicaciones www.detodoprogramacion.com www.FreeLibros.me www.detodoprogramacion.com www.FreeLibros.me Administración de bases de datos Diseño y desarrollo de aplicaciones Tercera edición Michael V. Mannino University of Colorado at Denver Revisión técnica Carlos Villegas Quezada Universidad Iberoamericana, Ciudad de México MÉXICO l BOGOTÁ l BUENOS AIRES l CARACAS l GUATEMALA l LISBOA l MADRID NUEVA YORK l SAN JUAN l SANTIAGO l AUCKLAND l LONDRES l MILÁN l MONTREAL NUEVA DELHI l SAN FRANCISCO l SINGAPUR l SAN LUIS l SIDNEY l TORONTO www.detodoprogramacion.com www.FreeLibros.me DirectorHigherEducation:MiguelÁngelToledoCastellanos Directoreditorial:RicardodelBosqueAlayón Editorsponsor:PabloE.RoigVázquez Editoradedesarrollo:AnaLauraDelgadoRodríguez Supervisordeproducción:ZeferinoGarcíaGarcía Traducción:EkaterinaGuerreroUshakova JoséJuliánDíazDíaz ADMINISTRACIÓNDEBASESDEDATOS. Diseñoydesarrollodeaplicaciones Terceraedición Prohibidalareproduccióntotaloparcialdeestaobra, porcualquiermedio,sinlaautorizaciónescritadeleditor. DERECHOSRESERVADOS©2007respectoalaprimeraediciónenespañolpor McGRAW-HILL/INTERAMERICANAEDITORES,S.A.DEC.V. ASubsidiaryofTheMcGraw-HillCompanies,Inc. EdificioPuntaSantaFe ProlongaciónPaseodelaReforma1015,TorreA Piso17,ColoniaDesarrolloSantaFe, DelegaciónÁlvaroObregón C.P.01376,México,D.F. MiembrodelaCámaraNacionaldelaIndustriaEditorialMexicana,Reg.Núm.736 ISBN-13:978-970-10-6109-1 ISBN-10:970-10-6109-8 TraducidodelaterceraedicióndeDatabaseDesign,ApplicationDevelopment,&Administration Copyright©2007byTheMcGraw-HillCompanies,Inc.Allrightsreserved. ISBN-13:978-0-07-294220-0 ISBN-10:0-07-294220-7 1234567890 09865432107 ImpresoenMéxico PrintedinMexico www.detodoprogramacion.com www.FreeLibros.me Deseo dedicar este libro a mis hijas Julia y Aimee. Sus sonrisas y afecto me inspiran día con día. www.detodoprogramacion.com www.FreeLibros.me Acerca del autor vi MichaelV.Manninohaestadoinvolucradoenelcampodelasbasesdedatosdesde1980.Ha impartido cursos de administración de bases de datos desde 1983 en diversas universidades derenombre(UniversityofFlorida,UniversityofTexasenAustin,UniversityofWashington, UniversityofColoradoenDenver).Suaudienciaincluyeaestudiantesdelicenciaturaymaestría enAdministracióndeSistemasde Información (MIS),maestríaenAdministración (MBA)y programasdedoctorado,ademásdecursoscorporativosenprogramasdereentrenamiento.Ha estadoactivoenlainvestigacióndebasesdedatos,loqueseevidenciaporsuspublicacionesen importantesrevistasdelIEEE(TransactionsonKnowledgeandDataEngineeringyTransac- tionsonSoftwareEngineering),ACM(CommunicationsyComputingSurveys)e INFORMS (InformsJournalonComputingeInformationSystemsResearch).Suinvestigaciónabarcava- riasencuestaspopularesyartículosdetutoría,asícomomúltiplesdocumentosquedescriben trabajooriginaldeinvestigación.Enelcapítulo12delpresentelibrohansidoincorporadoslos resultadosprácticosdesuinvestigaciónsobreunametodologíaorientadaaformasaplicadasal diseñodelasbasesdedatos. www.detodoprogramacion.com www.FreeLibros.me Prefacio Ejemplo de motivación PaulHong,propietariodeInternationalIndustrialAdhesives,Inc.,seencuentraeufóricoporel desempeñorecientedesunegocio,perotomaprecaucionesrespectoasusperspectivasfuturas. Susingresosygananciascrecenmásalládecualquierpronósticomientrasquesusgastosse mantienenfijos.Élatribuyeesta situacióna la recuperacióneconómica internacional,aluso deoutsourcingparafocalizarsusrecursosyaldesarrolloestratégicodelastecnologíasdela información.Sueuforiasobreeldesempeñorecienteestáatemperadoporlasperspectivasfu- turas.Eléxitodesunegociohaatraídoanuevoscompetidoresquesedirigenhaciasusclientes másrentables.Elresultadodelasnuevasycostosasiniciativasdelaindustriaenelcomercio electrónicoesincierto.Lasnuevasregulacionesgubernamentalesincrementaríansignificativa- menteelcostodesuoperacióncomoempresapública,loqueamenazasusplanesdeunaoferta públicainicialparaaumentarsucapital.Apesardelaeuforiaporeléxitorecientedesunegocio, permanececautelosorespectoalasnuevasdireccionesquedebetomarconelfindeasegurarel crecimientocontinuodesuempresa. PaulHongnecesitaevaluarlasinversionesentecnologíasdelainformaciónparamante- nerseadelantedesuscompetidoresycontrolarloscostosdelosmandatosindustrialesyguber- namentales.Paraigualarasuscompetidores,necesitadatosmásdetalladosyoportunosacerca de las tendencias de la industria, las acciones de los competidores y las operaciones de los distribuidores.Éldeseaencontrarunasolucióncosto-efectivaparasoportarlainiciativadela industriaporelcomercioelectrónico.Paraprepararsuoperacióncomoempresapública,debe realizarauditoríasdetecnologíasdelainformaciónycumplirconlosrequisitosdeinformación queexigeelgobiernoaestetipodeempresas.Portodoesto,élnoestásegurosobreelusode estándaresytecnologíaspropietariasonopropietarias. Estaspreocupacionesimplicanelusosignificativodelatecnologíadebasesdedatoscomo partedelacreciente infraestructuradecómputoenlasempresas.Lascaracterísticasdepro- cesamiento de transacciones en los DBMS empresariales proporcionan el fundamento para asegurar laconfiabilidaddelprocesamientoen líneade lospedidosconelfindeapoyar las iniciativasempresarialesparaelcadavezmásfrecuenteusodelcomercioelectrónico.Lasca- racterísticasdelosdatawarehouseenlosDBMSempresarialesproporcionanlosfundamentos paralosgrandesdatawarehouseyparalacapturadedatosfuenteentiemporeal.Latecnología debasesdedatosparalelaspuedemejorareldesempeñoylaconfiabilidaddelasconsultasde procesamientodetransaccionesydealmacenesdedatospormediodeadicionesincrementales enlacapacidaddecálculo.Lascaracterísticasdelasbasesdedatosdeobjetosproporcionanla habilidadparaadministrargrandescoleccionesdedocumentosXMLgeneradosporlasinicia- tivasdelaindustriaenfocadasalcomercioelectrónico. Noobstante,lassolucionesparalaspreocupacionesdePaulHongnoseencuentranúnica- menteenlatecnología.Elusodelnivelapropiadodetecnologíaimplicalavisiónparaelfuturo delaorganización,unacomprensiónmásprofundadelamismaylashabilidadestradicionalesde administraciónquepermitancontrolarelriesgo.PaulHongsedacuentadequesumayorreto esmezclarestashabilidadesdemaneratalquelassolucioneseficacespuedandesarrollarsepara InternationalIndustrialAdhesives,Inc. Introducción Estelibrodetextoofrecelosfundamentosparacomprenderlatecnologíadebasesdedatosque daapoyoacuestionesempresarialesdecómputotalescomolasqueenfrentaPaulHong.Como vii www.detodoprogramacion.com www.FreeLibros.me viii Prefacio nuevoalumnodelaadministracióndebasesdedatos,esnecesarioqueustedcomprendaprimero losconceptosfundamentalesdelaadministracióndebasesdedatosydelmodelorelacionalde datos.Después,necesitadominarsushabilidadeseneldiseñodebasesdedatosyeneldesarrollo deaplicacionesparabasesdedatos.Este librode texto leproporciona lasherramientaspara ayudarleacomprenderlasbasesdedatosrelacionalesyadquirirlashabilidadesnecesariaspara resolverlosproblemasbásicosyavanzadosenlaformulacióndeconsultas,modeladodedatos,normalizaciónyrequerimientosdelosdatosdelasaplicaciones,ademásdelapersonalización delasaplicacionesdebasesdedatos. Despuésdeestablecerdichashabilidades,ustedestará listoparaestudiar la funciónque tienenlosespecialistasdebasesdedatosylosambientesdeprocesamientoenlosqueseutilizan lasbasesdedatos.Estelibropresentalastecnologíasfundamentalesdelasbasesdedatosen cadaambientedeprocesamientoyrelacionaestastecnologíasconlosavancesmásrecientesdel comercioelectrónicoyelcómputoempresarial. Lo nuevo en la tercera edición Laterceraedicióntienerevisionessignificativashechasalasegundaedición,yalavezconserva laprobadapedagogíadelasotrasdosediciones.Laexperienciaobtenidaalhaberdadoclasesa alumnosdelicenciaturaycursossuperiores,asícomolaretroalimentaciónrecibidaporquienes adoptaronlasegundaedición,hanllevadoaldesarrollodenuevomaterialyrefinamientosdel anterior.Loscambiosmássignificativoshechosenlaterceraediciónserelacionanconloscapí- tulosdestinadosaldesarrollodelasbasesdedatos(capítulos5al8):lasreglasdenegociosenel modeladodedatos,lineamientosparaanalizarlasnecesidadesdeinformacióndelasempresas, coberturaexpandidadeloserroresdediseñoenelmodeladodedatos,coberturaexpandidade laidentificacióndeladependenciafuncional,ynuevacoberturaencuantoalasrecomendacio- nesparaoptimizarlasconsultas.Estanuevacoberturafortalecelametodologíaprobadaenla segundaedición,mismaqueproporcionabalaseparacióndelaestructuradelosdiagramasde entidad-relacióndelaprácticadelmodeladoempresarialdedatos,unaherramientademodelado dedatospersonalizado(ERAssistant)paraeliminarlaconfusióndelanotaciónyelénfasisenla normalizacióncomoherramientaderefinamientoparaeldesarrollodelasbasesdedatos. Paraeldesarrollodeaplicacionesdebasesdedatos,laterceraediciónofreceSQL:2003, uncambiorevolucionarioconrespectoaSQL:1999.Laterceraediciónexplicaelalcancede SQL:2003, ladificultadde conformidadconel estándary losnuevos elementosdelmismo. Numerososrefinamientosdelacoberturaparaeldesarrollodeaplicacionesdebasesdedatos amplíanlacoberturaprobadadelasdosprimerasediciones:lineamientosparalaformulaciónde consultas,problemasdeenlaceavanzados,recomendacionesparalaformulacióndeconsultas parainformesyformulariosjerárquicos,ydisparadorespararestriccionessuaves. Paralaadministracióndebasesdedatosylosentornosdeprocesamiento,laterceraedición proporcionacoberturaexpandidaparalanuevatecnologíadeSQL:2003ydeOracle10g.Los temasnuevosmássignificativossonlatecnologíadebasesdedatosparalelas,lacoberturaam- pliadaparalareescrituradeconsultasparavistasmaterializadasylatransparenciaenlasbases distribuidasdeOracle.Seproporcionacoberturarevisadaparaelcontroldecandados,laverifi- cacióndepuntosderecuperacióndeunabasededatos,eltiempodeinteraccióndelusuarioen eldiseñodelatransacción,larepresentacióndeltiempoenlastablasdedimensión,lamadurez delalmacéndedatos,losservicioswebenelprocesamientodebasesdedatoscliente-servidor ylaaceptacióncomercialdelasarquitecturasdebasesdedatosdeobjetos. Ademásdelnuevomaterialydelosrefinamientoshechosalqueyaexistía,laterceraedi- ciónextiendeloscomplementosdecadacapítulo.Estaedicióncontienepreguntasyproblemas nuevosalfinaldecadacapítulo,ademásdelosresúmenesdesintaxisdeSQL:2003.Elnuevo materialdelsitiowebdeestelibrodetextoincluyecasosdeestudio,tareasparaelprimeroy segundocursosdebasesdedatos,yexámenesmuestra. Laterceraedicióntieneunaorganizacióncapitularmásfinaconsietepartes,parapoder ofrecerbloquesdeaprendizajemáspequeños.Laparte1abarcamaterialintroductorioacercade laadministracióndebasesdedatosyeldesarrollodelasmismasconelfindeproporcionaruna www.detodoprogramacion.com www.FreeLibros.me Prefacio ix baseconceptualparaelconocimientoyhabilidadesdetalladasenloscapítulossubsecuentes.La parte2incluyeloselementosesencialesparaelmodelodedatosrelacionalparalacreaciónde basesdedatosylaformulacióndeconsultas.Eldesarrollodelasbasesdedatossedivideentre elmodeladodedatosdelaparte3yeldiseñodetablasfísicasdelaparte4.Laparte5abarca undesarrollomásavanzadodeaplicacionesquecubrelosproblemasdeenlace,vistasdelas basesdedatos,procedimientosydisparadoresalmacenados.Laparte6incluyeinformación sobreeldesarrollodebasesdedatosconunaintegracióndelavistayunestudiodecasobas- tanteamplio.Laparte7abarcalaadministracióndelabasededatosylosambientesdeproce- samientoparalosDBMSs,materialquefuepresentadoenlaparte4delasegundaedición. Ventajas competitivas Estelibrodetextoofrececaracterísticassobresalientesquenotienenparenloslibrosdelacom- petencia.LascaracterísticasúnicassonunacoberturaampliadeSQLtantoparaAccesscomo paraOracle,lineamientosparalasolucióndeproblemasparaayudaralaadquisicióndehabilida- desfundamentales,basesdedatosmuestrayejemplosdiseñadoscontodocuidado,uncompleto estudiodecaso,coberturadetemasavanzados,materialintegradodelaboratorioyelERAssis- tant.Estascaracterísticasproveenallectordeunpaquetecompletoparauncursointroductoriode basesdedatos.Cadaunadeestascaracterísticassedescribeconmayordetalleenlalistaquese presentaacontinuación,altiempoquelatablaP.1resumelasventajascompetitivasporcapítulo. • CoberturadeSQL.LaprofundidadyamplituddelacoberturadeSQLenestetextono tieneigualenlibrosdelacompetencia.LatablaP.2resumedichacoberturaporcapítulo. Las partes 2 y 5 proporcionan una cobertura vasta de las sentencias CREATETABLE, SELECT,UPDATE,INSERT,DELETE,CREATEVIEWyCREATETRIGGER.Sepre- sentannumerososejemplosdeproblemasbásicos,intermediosyavanzados. • CoberturadeAccessyOracle.Loscapítulosdelaspartes2y5ofrecenunacobertura detalladadeAccessyOracleSQL.Semuestranejemplosparaambossistemasdeadmi- nistracióndebasesdedatosparalassentenciasSELECT,INSERT,UPDATE,DELETEy CREATEVIEW.HayunacoberturasignificativadelasnuevascaracterísticasdeOracle10g TABLA P.1 Resumen de ventajas competitivas por capítulo Capítulo Características únicas 2 Capítulo único que proporciona una introducción conceptual al proceso de desarrollo de bases de datos 3 Representación visual de los operadores del álgebra relacional 4 Lineamientos para la formulación de bases de datos; cobertura para Oracle SQL, Access y SQL:2003 5 Énfasis en la notación ERD, reglas del negocio, reglas de diagramación con apoyo en el ER Assistant 6 Estrategias para analizar las necesidades de información del negocio, transformación del modelado de datos y detección de errores comunes de diseño 7 Lineamientos y procedimientos de normalización 8 Reglas de selección de índices, lineamientos de afinación de SQL, cobertura integrada de la optimización de consultas, estructuras de archivos y selección de índices 9 Lineamientos de formulación de consultas, cobertura para Oracle 10g, Access y SQL:2003; cobertura de temas avanzados de consultas anidadas, problemas de división y administración del valor nulo 10 Reglas para vistas actualizables, lineamientos para el requerimiento de datos para formularios e informes 11 Capítulo único que incluye conceptos y prácticas de los lenguajes de programación de bases de datos, procedimientos almacenados y disparadores 12 Capítulo único que abarca conceptos y prácticas relacionados con la integración y diseño delas vistas 13 Capítulo único que proporciona un caso de estudio completo acerca del procesamiento de préstamos estudiantiles 14 Lineamientos para los procesos importantes empleados por los administradores de bases de datos 15 Lineamientos para el diseño de transacciones y cobertura de temas avanzados 16 Modelo de madurez del data warehouse para evaluar el impacto de la tecnología en las organizaciones, cobertura de temas avanzados de características de bases de datos relacionales para el procesamiento y refrescado de data warehouses, cobertura extensa del data warehouse en Oracle 10g 17 Cobertura integrada del procesamiento de cliente-servidor, procesamiento paralelo de bases de datos, y bases de datos distribuidas 18 Cobertura de temas avanzados de características de objetos-relacionales en SQL:2003 y Oracle 10g www.detodoprogramacion.com www.FreeLibros.me x Prefacio SQLqueapareceenloscapítulos8,9,11,15,16y18.Además,loscapítulosdelaspartes 2y5cubrenlasintaxisdeSQL:2003paradarapoyoalainstrucciónquesedéconotros prominentessistemasdeadministracióndebasesdedatos. • Lineamientosdesolucióndeproblemas.Losalumnosnecesitanmásqueexplicaciones deconceptosyejemplospararesolverproblemas.Ellosrequierendelineamientosqueles ayudenaestructurarsuprocesodepensamientoparaquepuedanatacarlosproblemasde manera sistemática. Los lineamientos proporcionan modelos mentales que ayudan a los alumnosaaplicarlosconceptosalasolucióndeproblemasbásicosyavanzados.Latabla P.3resumeloslineamientosparalasolucióndeproblemasqueaparecenencadacapítulo. • Basesdedatosmuestrayejemplos.A lo largode loscapítulosde laspartes2y5, se empleandosbasesdedatosparaproporcionarconsistenciaycontinuidad.Labasededatos delauniversidadseempleaenlosejemplosalolargodelcapítulo,mientrasquelabasede datosdecapturadeórdenesseempleaenlosproblemasalfinaldelcapítulo.Losnumerosos ejemplosyproblemasconestasbasesdedatosresaltanlashabilidadesfundamentalesenla formulacióndeconsultasylosrequerimientosdedatosparalasaplicaciones.Lasversiones revisadasenlasbasesdedatosproporcionanlaseparaciónentrelosejemplosbásicosylos TABLA P.2 Cobertura de senten- cias SQL por capítulo Capítulo Sentencias SQL 3 CREATE TABLE 4 SELECT, INSERT, UPDATE, DELETE 9 SELECT (consultas anidadas, enlaces externos, administración de valores nulos); cobertura de Access, Oracle 10g y SQL:2003 10 CREATE VIEW, consultas y sentencias de manipulación que emplean vistas 11 CREATE PROCEDURE (Oracle), CREATE TRIGGER (Oracle y SQL:2003) 14 GRANT, REVOKE, CREATE ROLE, CREATE ASSERTION, cláusula CHECK de la sentencia CREATE TABLE, CREATE DOMAIN 15 COMMIT, ROLLBACK, SET TRANSACTION, SET CONSTRAINTS, SAVEPOINT 16 CREATE MATERIALIZED VIEW (Oracle), extensiones de la cláusula GROUP BY (Oracle y SQL:2003), CREATE DIMENSION (Oracle) 18 CREATE TYPE, CREATE TABLE (tablas capturadas y subtablas), SELECT (identificadores de objetos, expresiones de trayectoria, operador diferencial); cobertura SQL:2003 y Oracle 10g Capítulo Lineamientos para la solución de problemas 3 Representación visual de las relaciones y de los operadores del álgebra relacional 4 Proceso de evaluación conceptual, preguntas de formulación de consultas 5 Reglas de diagramación 6 Lineamientos para analizar las necesidades de información de los negocios, transformaciones de diseño, identificación de errores comunes de diseño, reglas de conversión 7 Lineamientos para identificar las dependencias funcionales, procedimiento de síntesis simple 8 Reglas de selección de índices, lineamientos de afinación de SQL 9 Lineamientos de formulación de problemas de diferencia, evaluación de consultas anidadas, método de conteo para problemas de división 10 Reglas para consultas de enlace actualizables, pasos para analizar los requerimientos de datos en formularios e informes 11 Procedimiento de ejecución de disparadores 12 Pasos para el análisis de formularios, estrategias de integración de vistas 14 Lineamientos para administrar los procedimientos y disparadores almacenados; proceso de planeación de datos, proceso de selección de DBMS 15 Línea de tiempo de la transacción, lineamientos de diseño de transacción 16 Lineamientos para las representaciones de bases de datos relacionales de datos multidimensionales, lineamientos para la representación del tiempo en tablas de dimensión, desventajas para la actualización de un almacén de datos 17 Progresión de los niveles de transferencia para bases de datos distribuidas 18 Arquitecturas de bases de datos orientadas a objetos, comparación entre representación relacional y representación relacional orientada a objetos TABLA P.3 Lineamientos para la solución de proble- mas por capítulo www.detodoprogramacion.com www.FreeLibros.me Prefacio xi avanzados.ElsitiowebcontienelassentenciasCREATETABLE,datosmuestra,senten- ciasdemanipulacióndedatosyarchivosdebasesdedatosenAccessparaambasbasesde datos.Loscapítulosdelaspartes3,4y7utilizanbasesdedatosadicionalesparaampliar laexposicióndelalumnoasituacionesdenegociosmásdiversas.Losalumnosnecesitan exponerseavariassituacionesempresarialesparaadquirir lashabilidadesindispensables paraeldiseñodelasbasesdedatosycomprenderlosconceptosmásimportantesparalos especialistasenbasesdedatos.Otrasbasesdedatos,queabarcanoperacionesdeservicios deagua,visitasapacientes,revisionesadocumentosacadémicos,rastreofinancieroperso- nal,reservacionesenlíneasaéreas,oficinasdecolocaciones,aseguradorasdeautomóviles, rastreodeventasenalmacenesyventasdebienesraíces,complementanlasbasesdedatos delauniversidadydecapturadeórdenesenlosejemplosdeloscapítulosyenlosproble- masalfinaldelcapítulo. • Estudiodecasocompleto.ElcasodeStudentLoanLimitedseencuentraalfinaldelaparte 6.Ladescripcióndelcasoysusoluciónintegranlosconceptosquelosalumnosaprendieron enlos12capítulosanterioressobreeldesarrollodeaplicacionesyeldiseñodebasesde datos.Losproblemasdeseguimientoqueaparecenalfinaldelcapítuloproporcionanoportu- nidadesadicionalesparaquelosestudiantesapliquensuconocimientoenuncasorealista. • Laboratorio opcional integrado. La administración de bases de datos se enseña mejor cuandolosconceptosseliganestrechamenteconlaprácticadeldiseñoeimplementaciónde basesdedatosqueempleaunDBMS.Paraayudaralosalumnosaaplicarlosconceptosdes- critosenellibrodetexto,seencuentranasudisposiciónunCDyelsitiowebconmaterialde laboratoriocomplementario.ElCDcontienematerialdelaboratorioparacuatroversionesde MicrosoftAccess(97,2000,2002y2003),asícomobasesdedatosyejerciciosdepráctica. LosmaterialesdelaboratoriodeMicrosoftAccessintegranlacoberturadetalladadeAccess conlosconceptosdedesarrollodeaplicacionesquedescribenenlaspartes2y5. • Herramientagratuitaparaelmodeladodedatos.ElERAssistantofreceunainterfase simpleparadibujaryanalizar losdiagramasdeentidad-relacióndelmodeladodedatos, comosepresentanenloscapítulosdelaparte3.Conesteprograma,losalumnospueden volverseproductivoscongranrapidez,loquelespermiteenfocarseenlosconceptosdel modeladodedatosen lugarde losdetallesdeunaherramientaCASEcomplicada.Para ayudaralosalumnosaquenocometanerroresdediagramación,elERAssitantconfirma lasreglasdediagramaciónpresentadasenelcapítulo5. • Temasactualeseincisivos.Ellibrocubrealgunostemasquenoaparecenenotroslibrosde textodelacompetencia:formulaciónavanzadadeconsultas,vistasactualizables,desarro- lloyadministracióndeprocedimientosydisparadoresalmacenados,requisitosdedatosparalosformularioseinformesdecapturadedatos,integracióndevistas,administraciónparael procesodeactualizaciónparalosdatawarehouses,modelodemadurezdeundataware- house,arquitecturasdebasesdedatosparalelas,arquitecturasdebasesdedatosorientadas aobjetos,característicasdelosdatawarehousesenSQL:2003yOracle10g,yprincipios dediseñodetransacciones.Estostemaspermitenquelosalumnosmotivadosobtenganuna comprensiónmásampliadelaadministracióndelasbasesdedatos. • Paquetecompletoparaelcurso.Segúnseaelcriteriodelcurso,algunosalumnosinten- taráncomprarhastacinco librosparauncurso introductoriodebasesdedatos:un libro detextoqueabarquelosprincipios,manualesdelaboratorioquecubranlosdetallesdeun DBMSyunaherramientaCASE,unlibrocomplementariodeSQLyunlibrodecasoscon problemasrealesdepráctica.Estelibrodetextoysumaterialcomplementarioproporcio- nanunafuentemáscompleta,integradaymenoscostosaparaelalumno. Audiencia del texto Estelibrohasidodiseñadoparaalumnosquecursanlalicenciaturaocursossuperioresdeadmi- nistracióndebasesdedatos.Enelnivellicenciatura,losalumnosdebentenerunaconcentración (mayoromenor)ointerésactivoenlossistemasdeinformación.Paralasinstitucionesdedos www.detodoprogramacion.com www.FreeLibros.me xii Prefacio años,elinstructorquizáquierasaltarselostemasavanzadosyponermásénfasisenelmanual opcionaldelaboratoriodeAccess.Losalumnosdelicenciaturadeberántenerunprimercurso quecubralosconceptosfundamentales,hojasdecálculo,procesadoresdepalabrasyposible- menteunabreve introduccióna lasbasesdedatos.Uncursopreviodeprogramaciónpuede resultardeutilidad(exceptoparaelcapítulo11),aunquenoesobligatorio.Losdemáscapítulos hacenreferenciaaciertosconceptosdeprogramación,peronoseincluyeelcódigodeescritura. Paraentenderplenamenteelcapítulo11,esesencialcontarconexperienciapreviaenprograma- ción.Sinembargo,losconceptosbásicosdelcapítulo11puedenabarcarseinclusosilosalumnos notienenconocimientospreviosdeprogramacióndecomputadoras. Ennivelessuperiores,estelibroesadecuadoparalosprogramasdemaestríaenadminis- traciónomaestríaenciencias(ensistemasdeinformación).Elmaterialavanzadodeestelibro debeserespecialmenteadecuadoparalosalumnosqueestudianlamaestríaenciencias. Organización Comoeltítuloloindica,Administracióndebasededatos.Diseñoydesarrollodeaplicaciones enfatizalastresseriesdeactividades.Antesdeadquirirlas,losalumnosnecesitantenerunfun- damentodelosconceptosbásicos.Laparte1proporcionalosantecedentesconceptualesparaun estudiodetalladosubsecuentedeldiseñodebasesdedatos,eldesarrollodeaplicacionespara basesdedatosylaadministracióndebasesdedatos.Loscapítulosdelaparte1presentanlos principiosdelaadministracióndebasesdedatosyunavisióngeneralconceptualdelprocesode desarrollodebasesdedatos. Laparte2ofrececonocimientofuncionalacercadelmodelorelacionaldedatos.Elcapítulo 3abarcaladefinicióndetablas,lasreglasdeintegridadylosoperadorespararecuperarlainfor- maciónútildelasbasesdedatosrelacionales.Elcapítulo4presentalineamientosparalaformu- lacióndeconsultasynumerososejemplosdesentenciasenSQL. Laspartes3y4enfatizanlashabilidadesprácticasy los lineamientosdediseñoparael procesodedesarrollodebasesdedatos.Losestudiantesquedeseenhacerunacarreracomo especialistasenbasesdedatosdeberántenerlacapacidaddedesempeñarcadaunodelospasos delprocesodedesarrollodebasesdedatos.Deberánaprenderlashabilidadesdelmodeladode datos,laconversióndeesquemas,lanormalizaciónyeldiseñofísicodelasbasesdedatos.Los capítulosdelaparte3(capítulos5y6)abarcanelmodeladodedatospormediodelmodelo deentidad-relación.Elcapítulo5 incluye laestructurade losdiagramasdeentidad-relación, mientrasqueelcapítulo6presentaelusodelosdiagramasdeentidad-relaciónparaanalizarlas necesidadesdeinformacióndelnegocio.Loscapítulosdelaparte4(capítulos7y8)presentan losprincipiosyprácticadeldiseñodetablasparaeldiseñológicoyfísico.Elcapítulo7estudia lamotivación,lasdependenciasfuncionales,losformatosnormalesylasconsideracionesprác- ticasdelanormalizacióndedatos.Elcapítulo8ofreceunaampliacoberturadeldiseñofísico delasbasesdedatos,incluidosobjetivos,entradas,estructuradearchivosyantecedentesparala optimizacióndeconsultas,asícomoimportantesopcionesdediseño. Laparte5proporcionaunfundamentoparalaconstruccióndeaplicacionesparabasesde datos,demodoqueayudaalosalumnosaadquirirlashabilidadesnecesariasparalaformula- cióndeconsultas,laespecificaciónderequerimientosdelosformularioseinformesdecaptura dedatos,y losdisparadoresdecodificaciónyprocedimientosalmacenados.Enelcapítulo9 seobservanejemplosadicionalesdeSQLintermedioyavanzado,juntoconlashabilidadesde formulacióndeconsultascorrespondientes.Elcapítulo10describelamotivación,definicióny usodevistasrelacionales,juntoconlaespecificacióndedefinicionesdevistasparaformularios einformesdecapturadedatos.Elcapítulo11presentaconceptosyprácticasdecodificaciónde loslenguajesdeprogramacióndebasesdedatos,procedimientosalmacenadosydisparadores paralapersonalizacióndelasaplicacionesdebasesdedatos. Laparte6abarcatemasavanzadosdeldesarrollodebasesdedatos.Elcapítulo12ofrece unadescripcióndeldiseñoeintegracióndevistas,loscualessonconceptosdemodeladodedatos paralosesfuerzosqueserealizaneneldesarrollodebasesdedatosmásgrandes.Elcapítulo13 ofreceunestudiodecasocompletoquepermitealosalumnosobtenerinformaciónacercadelas www.detodoprogramacion.com www.FreeLibros.me Prefacio xiii dificultadesqueseenfrentanalaplicareldiseñodebasesdedatosylashabilidadesdedesarrollo deaplicacionesparaunabasededatosempresarialdelmundoreal. Másalládelashabilidadesdeldiseñodebasesdedatosydesarrollodeaplicaciones,este libropreparaalosalumnosparaqueejerzancarrerascomoespecialistasdebasesdedatos.Los estudiantesnecesitancomprenderlasresponsabilidades,herramientasyprocesosempleadospor losadministradoresdedatosydebasesdedatos,asícomootrosambientesdiversosenlosque operanlasbasesdedatos. Loscapítulosdelaparte7hacenénfasisenlafunciónquedesempeñanlosespecialistasde basesdedatosylosdetallesimplicadosenlaadministracióndelasmismasendiversosambien- tesdeoperación.Elcapítulo14ofreceelcontextoparaotroscapítulospormediodeunavasta coberturadelasresponsabilidades,herramientasyprocesosutilizadosporlosadministradores dedatosydebasesdedatos.Losotroscapítulosdelaparte4proporcionanunfundamentopara laadministracióndebasesdedatosenambientesdeimportancia:elcapítulo15,sobreproce- samientodetransacciones;elcapítulo16,enalmacenesdedatos;elcapítulo17,enprocesos ydatosdistribuidos,yelcapítulo18enadministracióndebasesdedatosorientadasaobjetos. Estoscapítuloshacenhincapiéenconceptos,arquitecturase importantesopcionesdediseño paralosespecialistasdebasesdedatos. Enfoque del texto y tema Paraapoyarlaadquisicióndelashabilidadesnecesariasparaelaprendizajeycomprensióndel desarrollodeaplicaciones,eldiseñodebasesdedatosylaadministracióndelasmismas,este libroseadhiereatresprincipiosguía: 1. Combinacióndeconceptosypráctica.Laadministracióndelasbasesdedatosseaprendeconmayorfacilidadcuandolosconceptosestánestrechamenteligadosconlaprácticadel diseñoeimplementacióndebasesdedatosconelusodeunDBMScomercial.Ellibroy loscomplementosque leacompañanhansidodiseñadosparaproporcionarunaestrecha integraciónentrelosconceptosylaprácticapormediodelassiguientescaracterísticas: • EjemplosdeSQLparaAccessyOracle,ademásdecoberturaparaSQL:2003. • Énfasisenlarelaciónentreeldesarrollodeaplicacionesylaformulacióndeconsultas. • UsodeunanotacióndemodeladodedatospormediodeherramientasCASEprofesio- nalesyunaherramientaacadémicadeusosencillo(ERAssistant). • Capítuloscomplementariosdeprácticasdelaboratorioquecombinanlosconceptosdel libroconlosdetallesdelosDBMScomerciales. 2. Énfasisenhabilidadesparalasolucióndeproblemas.Estelibropresentaloslineamientos paralasolucióndeproblemasqueayudaránalosalumnosadominarlashabilidadesfunda- mentalesdelmodeladodedatos,normalización,formulacióndeconsultasydesarrollode aplicaciones.Ellibroyloscomplementosasociadosproporcionanunariquezadepregun- tas,problemas,casosdeestudioyprácticasdelaboratorioenlasquelosalumnospueden aplicarsushabilidades.Coneldominiodelashabilidadesesenciales,losestudiantesten- dránmotivaciónparaunmayoraprendizajesobrebasesdedatosyuncambioensumanera depensarlacomputaciónengeneral. 3. Materialintroductorioyavanzado.Losalumnosdenegociosqueempleenestelibropue- denprovenirdeunagranvariedaddeentornos.Estelibrolesofrecesuficienteprofundidad parasatisfaceralosalumnosmásansiososporaprender.Noobstante,laspartesavanzadas secolocandemaneratalquepuedanevitarseporaquellosquenodeseencubrirlas. Características pedagógicas Conelfindeayudaralosalumnosanavegaratravésdelcontenidocapitulardeunamanera sistemática,estelibrocontienelassiguientescaracterísticaspedagógicas: www.detodoprogramacion.com www.FreeLibros.me xiv Prefacio • Objetivosdeaprendizajequeseenfocanenelconocimientoyhabilidadesquelosalum- nosadquiriránalestudiardichocapítulo. • Vistasgeneralesqueproporcionanunvistazoaloscontenidoscapitulares. • Términosfundamentalesquesonresaltadosydefinidosenlosmárgenesconformeapare- cenenelcapítulo. • Ejemplosquesonclaramenteseparadosdel restodelmaterialdelcapítuloparadaruna revisiónmássencillaycubrirlospropósitosdeestudio. • Ejemplosdebasesdedatosenfuncionamiento—universidadycapturadeórdenes—con iconosenlosmárgenesquellamanlaatencióndelalumnohacialosejemplos. • Reflexionesfinalesque resumenel contenidocapitularen relacióncon losobjetivosde aprendizaje. • Revisióndeconceptosquesonllamadasconceptualesimportantesdelcapítulo,ynosólo unalistadeterminología. • Preguntasqueseproporcionanpararevisarlosconceptoscapitulares. • Problemasqueayudanaqueelalumnopractiqueeimplementelashabilidadesdetalladas quesepresentaronenelcapítulo. • Referenciasadicionalesparaestudioqueresaltanlasfuentesadicionalesdelcontenido capitularparalosalumnos. • Apéndicescapitularesqueproporcionandetallesadicionalesyresúmenesconvenientesde ciertosprincipiosoprácticas. Alfinaldellibro,losalumnosencontraránlossiguientesrecursosadicionales: • Glosario:Proporcionaunalistacompletadetérminosydefinicionesempleadosalolargo dellibro. • Bibliografía:Un listadodematerial impresoútil de índole industrial y académicopara investigaciónoestudio. Materiales de apoyo Estaobracuentaconinteresantescomplementosquefortalecenlosprocesosdeenseñanza-apren- dizaje,asícomolaevaluacióndelosmismos,loscualesseotorganaprofesoresqueadoptaneste textoparasuscursos.Paraobtenermásinformaciónyconocerlapolíticadeentregadeestos materiales,contacteasurepresentanteMcGraw-Hill. Recorrido de aprendizaje Ellibropuedecubrirseendiversoordenenunasecuenciadeunoodossemestres.Elautor haenseñadouncursodeunsemestreconelsiguienteorden:desarrollodeaplicaciones,de- sarrollodebasesdedatosyambientesdeprocesamientodebasesdedatos.Esteordenofrece laventajadepodercubrirelmaterialmásconcreto(desarrollodeaplicaciones)antesdeun materialmásabstracto(desarrollodebasesdedatos).Loscapítulosdelaboratorioytareasse empleanparaproporcionarmayoresoportunidadesdepráctica,másalláde losejemplosque aparecenenellibro.Paraquepuedacubrirseenunsemestre,lostemasavanzadossesaltanen loscapítulos8ydel11al18. Unsegundoordendeberácubrireldesarrollodebasesdedatosantesdeestudiarlaaplica- cióndebasesdedatos.Paraseguirconesteorden,elautorrecomiendaseguirunordenconlos capítulosdellibrodelasiguientemanera:1,2,5,6,3,7,4,9y10.Elmaterialsobreconversión deesquemasquesepresentaenelcapítulo6deberácubrirsedespuésdelcapítulo3.Esteorden apoyaunacoberturamásampliadeldesarrollodebasesdedatos,altiempoquenorechazael desarrollodeaplicaciones.Parapodersecubrirenunsemestre,lostemasavanzadossesaltanen loscapítulos8ydel11al18. www.detodoprogramacion.com www.FreeLibros.me Prefacio xv Untercerordenposibleesutilizareltextoenunasecuenciadedossemestres.Elprimer semestreabarcalofundamentalencuantoalaadministracióndelasbasesdedatos,queaparece enlaspartes1y2,modeladodedatosynormalizacióndelaspartes3y4,asícomoformulación avanzadadeconsultasdelaspartes5y6.Elsegundocursohaceénfasisenlashabilidadespara laadministracióndebasesdedatosconeldiseñofísicodebasesdedatosdelaparte4,dispara- doresyprocedimientosalmacenadosqueaparecenenlaparte5yambientesdeprocesamiento delaparte7,juntoconmaterialadicionalsobrelaadministracióndebasesdedatosempresaria- les.Unproyectocompletopuedeemplearseenelsegundocursoparaintegrareldesarrollode aplicaciones,desarrollodebasesdedatosyadministracióndebasesdedatos. Recursos para el alumno • ERAssistant:Herramientadeusosencilloparamodeladodedatosquepuedeemplease paradibujaryanalizarERD;disponibleenwww.mhhe.com/mannino Reconocimientos La tercera edición es la culminación de muchos años de trabajo.Antes de comenzar con la primeraediciónescribítutoriales,prácticasdelaboratorioyestudiosdecaso.Elmaterialfue utilizadoprimerocomocomplementoaotroslibrosdetexto.Después,motivadopormisalum- nos,estematerialseempleósinlibrodetexto.Estematerial,revisadoenmúltiplesocasionesa travésdeloscomentariosdelosalumnos,fueelfundamentoparalaprimeraedición.Duranteel desarrollodelaprimeraedición,elmaterialseevaluóenelsalóndeclasesdurantetresañoscon cientosdealumnosdenivellicenciaturaycursossuperiores,juntoconunarevisióncuidadosa pormediodecuatroborradoreshechospormuchosrevisoresexternos.Lasegundaediciónse realizóatravésdelusodelaprimeraedicióndurantetresañosenelsalóndeclases,ademásde queelautorhabíaimpartidodurantemuchosañosuncursoavanzadodebasesdedatos.Later- ceraediciónsedesarrollóconlaexperienciadetresañosdeusodelasegundaediciónencursos básicosyavanzadosdebasesdedatos. Deseoreconocerelexcelenteapoyoquerecibíeneltérminodeesteproyecto.Enprimer lugaragradezcoamismuchosalumnosdebasesdedatos,especialmentealosdeISMG6080, ISMG6480eISMG4500delaUniversityofColoradoenDenver.Suscomentariosyreacciónal librodetextohansidoinvaluablesparasumejoría. Ensegundolugar,agradezcoalosmuchosrevisoresqueproporcionaronretroalimentaciónalosdiversosborradoresdeestelibrodetexto: KirkP.Arnett MississippiStateUniversity RezaBarkhi VirginiaPolytechnicInstituteandState University WilliamBarnett UniversityofLouisiana—Monroe JackD.Becker UniversityofNorthTexas NabilBedewi GeorgeMasonUniversity FranceBelanger VirginiaPolytechnicInstituteandState University JohnBradley EastCarolinaUniversity SusanBrown IndianaUniversity—Bloomington DebraL.Chapman UniversityofSouthAlabama Dr.QiyangChen MontclairStateUniversity AmitaG.Chin VirginiaCommonwealthUniversity RussellChing CaliforniaStateUniversity—Sacramento P.C.Chu TheOhioStateUniversity www.detodoprogramacion.com www.FreeLibros.me xvi Prefacio CareyCole JamesMadisonUniversity ErmanCoskun LeMoyneCollege ConnieW.Crook UniversityofNorthCarolina—Charlotte RobertLouisGilson WashingtonStateUniversity JianGuan UniversityofLouisville DianeHall AuburnUniversity Dr.JosephT.Harder IndianaStateUniversity MarkHwang CentralMichiganUniversity BalajiJanamanchi TexasTechUniversity NenadJukic LoyolaUniversityChicago RajeevKaula SouthwestMissouriStateUniversity Sung-kwanKim UniversityofArkansas—LittleRock YongJinKim SUNYBinghamton BarbaraKlein UniversityofMichigan—Dearborn ConstanceKnapp PaceUniversity AlexisKoster SanDiegoStateUniversity Jean-PierreKuilboer UniversityofMassachusetts—Boston AlanG.Labouseur MaristCollege Dr.WilliamM.Lankford UniversityofWestGeorgia EitelLauria MaristCollege AnitaLee-Post UniversityofKentucky JohnD.(Skip)Lees CaliforniaStateUniversity—Chico WilliamLeigh UniversityofCentralFlorida RobertLittle AuburnUniversity—Montgomery Dr.JieLiu WesternOregonUniversity MaryMalliaris LoyolaUniversity—Chicago BruceMcLaren IndianaStateUniversity Dr.KathrynJ.Moland LivingstoneCollege HosseinLarryNajafi UniversityofWisconsinRiverFalls KarenS.Nantz EasternIllinoisUniversity AnnNelson HighPointUniversity HamidNemati UniversityofNorthCarolina—Greensboro RobertPhillips RadfordUniversity LaraPreiser-Houy CaliforniaStatePolytechnic University—Pomona YoungU.Ryu UniversityofTexas—Dallas WernerSchenk UniversityofRochester Dr.BarbaraA.Schuldt SoutheasternLouisianaUniversity PhilipJ.Sciame DominicanCollege RichardS.Segall ArkansasStateUniversity Hsueh-ChiJoshuaShih NationalYunlinUniversityofScience andTechnology ElizabethPaigeSigman GeorgetownUniversity VickeeStedham St.PetersburgCollege JeffreyA.Stone PennsylvaniaStateUniversity Dr.ThomasP.Sturm UniversityofSt.Thomas A.Tansel BaruchCollege—CUNY BilkentUniversity—Ankara,Turkey SylviaUnwin BellevueCommunityCollege StuartVarden PaceUniversity SantoshS.Venkatraman UniversityofArkansas—LittleRock www.detodoprogramacion.com www.FreeLibros.me Prefacio xvii F.StuartWells TennesseeTechnologicalUniversity LarryWest UniversityofCentralFlorida Hsui-linWinkler PaceUniversity PeterWolcott UniversityofNebraska—Omaha JamesL.Woolley WesternIllinoisUniversity BrianZelli SUNYBuffalo Suscomentarios,especialmentelosdeíndolecrítica,mehanayudadoengranmanerapara afinarlosdetallesdeestelibro. Entercerlugar,deseoexpresarmiagradecimientoaloseditoresdelaversióneninglés, PaulDuchamyLizFarina,porsuguíaenesteproceso,asícomoaJimLabeots,KamiCartesy alosdemásamigosdeMcGraw-Hill,quienesmeayudaronenlaproducciónypublicaciónde estetexto.Finalmente,agradezcoamiesposa,Monique,porsuayudaconellibroysuscomple- mentos,asícomoporsuapoyomoralamiesfuerzo. MichaelV.Mannino www.detodoprogramacion.com www.FreeLibros.me Contenido breve xviii PARTE UNO Introducciónalosambientes debasededatos 1 1 Introducciónalaadministracióndebase dedatos 3 2 Introducciónaldesarrollodebasesde datos 23 PARTE DOS Comprendiendolasbasesdedatos relacionales 43 3 Elmodelorelacionaldedatos 45 4 FormulacióndeconsultasconSQL 79 PARTE TRES Modeladodedatos 133 5 Comprensióndelosdiagramasdeentidad- relación 135 6 Desarrollodemodelodedatosparabases dedatosdenegocios 167 PARTE CUATRO Diseñodebasesdedatosrelacionales 217 7 Normalizacióndetablas relacionales 219 8 Diseñofísicodebasesdedatos 249 PARTE CINCO Desarrollodeaplicacionesconbases dedatosrelacionales 295 9 Formulaciónavanzadadeconsultas conSQL 297 10 Desarrollodeaplicaciones convistas 339 11 Procedimientosalmacenadosy disparadores 375 PARTE SEIS Desarrolloavanzadodebases dedatos 425 12 Diseñoeintegracióndevistas 427 13 DesarrollodebasededatosparaStudent LoanLimited 449 PARTE SIETE Administracióndeentornos debasesdedatos 479 14 Administracióndedatosybases dedatos 481 15 Administracióndetransacciones 515 16 Tecnologíayadministracióndedata warehouse 553 17 Procesamientocliente-servidor, procesamientodebasesdedatosparalelasy basesdedatosdistribuidas 605 18 Sistemasdeadministracióndebasesde datosdeobjetos 641 GLOSARIO 679 BIBLIOGRAFÍA 696 ÍNDICE 698 www.detodoprogramacion.com www.FreeLibros.me Contenido xix PARTE UNO INTRODUCCIÓNALOSAMBIENTESDE BASEDEDATOS 1 Capítulo 1 Introducciónalaadministracióndebasede datos 3 Objetivosdeaprendizaje 3 Panoramageneral 3 1.1 Característicasdelabasededatos 4 1.2 Característicasdelossistemasdeadministración debasesdedatos 6 1.2.1 Definicióndebasededatos 6 1.2.2 Accesonoprocedural 8 1.2.3 Desarrollodeaplicacioneseinterfasedel lenguajeprocedural 9 1.2.4 Funcionesdesoporteparalasoperacionesde basededatos 10 1.2.5 Funcionesdeterceros 11 1.3 Desarrollodelatecnologíadebasededatosyla estructurademercado 11 1.3.1 Evolucióndelatecnologíadebasesdedatos 12 1.3.2 Elmercadoactualdelsoftwaredebasede datos 13 1.4 Arquitecturasdelossistemasdeadministraciónde basesdedatos 14 1.4.1 Independenciadedatosylaarquitecturadelos tresesquemas 14 1.4.2 Procesamientodistribuidoylaarquitectura cliente-servidor 16 1.5 Impactosorganizacionalesdelatecnologíade basededatos 17 1.5.1 Interactuandoconlasbasesdedatos 17 1.5.2 Administraciónderecursosdeinformación 19 Reflexiónfinal 20 Revisióndeconceptos 20 Preguntas 21 Problemas 22 Referenciasparaampliarsuestudio 22 Capítulo 2 Introducciónaldesarrollodebasesde datos 23 Objetivosdeaprendizaje 23 Panoramageneral 23 2.1 Sistemasdeinformación 23 2.1.1 Componentesdelossistemasdeinformación 24 2.1.2 Procesodeldesarrollodesistemasde información 25 2.2 Objetivosdeldesarrollodebasededatos 26 2.2.1 Desarrollarunvocabulariocomún 27 2.2.2 Definicióndelsignificadodelosdatos 27 2.2.3 Asegurarlacalidaddelosdatos 27 2.2.4 Enbuscadelaimplementacióneficiente 28 2.3 Procesodedesarrollodelabasededatos 28 2.3.1 Fasesdeldesarrollodebasededatos 29 2.3.2 Habilidadeseneldesarrollodebasesde datos 32 2.4 Herramientasparaeldesarrollodebasesde datos 34 2.4.1 Diagramación 35 2.4.2 Documentación 35 2.4.3 Análisis 35 2.4.4 Herramientasdeprototipos 36 2.4.5 HerramientasCASEcomerciales 37 Reflexiónfinal 39 Revisióndeconceptos 39 Preguntas 40 Problemas 41 Referenciasparaampliarsuestudio 41 PARTE DOS COMPRENDIENDOLASBASESDEDATOS RELACIONALES 43 Capítulo 3 Elmodelorelacionaldedatos 45 Objetivosdeaprendizaje 45 Panoramageneral 45 3.1 Elementosbásicos 46 3.1.1 Tablas 46 3.1.2 Conexionesentretablas 47 3.1.3 Terminologíaalternativa 49 3.2 Reglasdeintegridad 49 3.2.1 Definicióndelasreglasdeintegridad49 3.2.2 Aplicacióndelasreglasdeintegridad 50 3.2.3 Representacióngráficadelaintegridad referencial 53 3.3 Accionesparaeliminaryactualizarfilas referenciadas 54 3.4 Operadoresdeálgebrarelacional 56 3.4.1 Operadoresderestricción(select)yproyección (project) 56 3.4.2 Operadordeproductocruzextendido 57 3.4.3 Operadordeenlace(join) 59 3.4.4 Operadordeenlaceexterno(outerjoin) 61 3.4.5 Operadoresdeunión,interseccióny diferencia 63 3.4.6 Operadorresumir(summarize) 65 3.4.7 Operadordividir(divide) 66 3.4.8 Resumendeoperadores 68 Reflexiónfinal 68 Revisióndeconceptos 69 Preguntas 69 Problemas 70 Referenciasparaampliarsuestudio 73 www.detodoprogramacion.com www.FreeLibros.me xx Contenido 5.1 Introducciónalosdiagramasdeentidad- relación 136 5.1.1 Símbolosbásicos 136 5.1.2 Cardinalidaddelasrelaciones 137 5.1.3 Comparaciónconlosdiagramasdebasesde datosrelacionales 140 5.2 Comprensióndelasrelaciones 141 5.2.1 Identificacióndedependencias(entidades débilesyrelaciónidentificable) 141 5.2.2 Patronesderelación 142 5.2.3 Equivalenciaentrelasrelaciones1-My M-N 146 5.3 Clasificaciónenelmodelodeentidad- relación 147 5.3.1 Jerarquíasdegeneralización 148 5.3.2 Restriccionesdeseparacióneintegridad 148 5.3.3 Nivelesmúltiplesdegeneralización 149 5.4 Resumendenotaciónyreglasde diagramación 150 5.4.1 Resumendenotación 150 5.4.2 Reglasdediagramación 152 5.5 Comparaciónaotrasnotaciones 156 5.5.1 VariacionesERD 156 5.5.2 Notacióndeldiagramadeclasesdellenguajede modeladounificado 157 Reflexiónfinal 159 Revisióndeconceptos 160 Preguntas 160 Problemas 161 Referenciasparaampliarsuestudio 166 Capítulo 6 Desarrollodemodelodedatosparabasesde datosdenegocios 167 Objetivosdeaprendizaje 167 Panoramageneral 167 6.1 Análisisdeproblemasdemodeladodedatospara negocios 168 6.1.1 Guíasparaanalizarlasnecesidadesde informacióndelosnegocios 168 6.1.2 Análisisdelosrequerimientosdeinformación paralabasededatosdelacompañíade serviciosdeagua 171 6.2. RefinamientosaunERD 173 6.2.1 Transformacióndelosatributosentiposde entidad 173 6.2.2 Divisióndeatributoscompuestos 173 6.2.3 Expansióndelostiposdeentidad 173 6.2.4 Transformacióndeunaentidaddébilenuna entidadfuerte 174 6.2.5 Agregandohistoria 175 6.2.6 Añadiendojerarquíasdegeneralización 177 6.2.7 Resumendetransformaciones 178 6.3 FinalizacióndeunERD 179 6.3.1 DocumentacióndeunERD 179 6.3.2 Deteccióndeerrorescomunesdediseño 181 6.4 ConversióndeunERDentablasrelacionales 183 6.4.1 Reglasbásicasdeconversión 183 6.4.2 Conversiónderelacionesopcionales1-M 188 6.4.3 Conversióndejerarquíasdegeneralización 190 Apéndice3.A SentenciasCREATETABLEparalabasededatosde launiversidad 73 Apéndice3.B ResumendesintaxisenSQL:2003 74 Apéndice3.C Generacióndevaloresúnicosparallaves primarias 76 Capítulo 4 FormulacióndeconsultasconSQL 79 Objetivosdeaprendizaje 79 Panoramageneral 79 4.1 Antecedentes 80 4.1.1 BrevehistoriadeSQL 80 4.1.2 AlcancedeSQL 81 4.2 EmpecemosconlasentenciaSELECT 82 4.2.1 Problemasdetablasimple 84 4.2.2 Tablasenlazadas(joining) 89 4.2.3 ResumendetablasconGROUPBYy HAVING 91 4.2.4 Mejorarelformatodelosresultados 95 4.3 Procesodeevaluaciónconceptualparalas sentenciasSELECT 97 4.4 Preguntascríticasparalageneraciónde consultas 101 4.5 Mejorandolashabilidadesdegeneraciónde consultasmedianteejemplos 103 4.5.1 Enlacesdetablasmúltiplesconelestilode productocruz 103 4.5.2 Enlazandotablasmúltiplesconelestilodel operadordeenlace 106 4.5.3 Autoenlaces(self-joins)yenlacesmúltiplesentre dostablas 109 4.5.4 Combinandoenlacesyagrupación 110 4.5.5 Operadoresdeconjuntostradicionalesen SQL 111 4.6 SentenciasdemodificacióndeSQL 113 Reflexiónfinal 115 Revisióndeconceptos 116 Preguntas 119 Problemas 120 Referenciasparaampliarsuestudio 127 Apéndice4.A ResumendesintaxisdeSQL:2003 128 Apéndice4.B Diferenciasdesintaxisentrelosprincipalesproductos DBMS 131 PARTE TRES MODELADODEDATOS 133 Capítulo 5 Comprensióndelosdiagramasdeentidad- relación 135 Objetivosdeaprendizaje 135 Panoramageneral 135 www.detodoprogramacion.com www.FreeLibros.me Contenido xxi 6.4.4 Conversiónderelaciones1-1 191 6.4.5 Ejemplodeconversióncomprensiva 193 Reflexiónfinal 195 Revisióndeconceptos 196 Preguntas 196 Problemas 197 Referenciasparaampliarsuestudio 215 PARTE CUATRO DISEÑODEBASESDEDATOS RELACIONALES 217 Capítulo 7 Normalizacióndetablasrelacionales 219 Objetivosdeaprendizaje 219 Panoramageneral 219 7.1 Panoramageneraldeldiseñodebasesdedatos relacionales 220 7.1.1 Eviteanomalíasdemodificación 220 7.1.2 Dependenciasfuncionales 221 7.2 Formasnormales 223 7.2.1 Primeraformanormal 224 7.2.2 Segundayterceraformanormal 224 7.2.3 FormanormaldeBoyce-Codd 227 7.2.4 Procedimientodesíntesissimple 229 7.3 RefinamientodelasrelacionesM-way 232 7.3.1 Independenciaderelación 232 7.3.2 Dependenciasmultivaluadasycuartaforma normal 235 7.4 Formasnormalesdealtonivel 236 7.4.1 Quintaformanormal 236 7.4.2 Formanormaldellavededominio 237 7.5 Cuestionesprácticasacercade normalización 237 7.5.1 Funcióndelanormalizaciónenelprocesode desarrollodebasededatos 237 7.5.2 Análisisdelobjetivodenormalización 238 Reflexiónfinal 238 Revisióndeconceptos 239 Preguntas 239 Problemas 240 Referenciasparaampliarsuestudio 248 Capítulo 8 Diseñofísicodebasesdedatos 249 Objetivosdeaprendizaje 249 Panoramageneral 249 8.1 Panoramageneraldeldiseñofísicodebasesde datos 250 8.1.1 Nivelesdealmacenamientodelasbasesde datos 250 8.1.2 Objetivosyrestricciones 251 8.1.3 Entradas,salidasyentorno 252 8.1.4 Dificultades 253 8.2 Entradasdeldiseñofísicodebasesdedatos 253 8.2.1 Perfilesdelastablas 253 8.2.2 Perfilesdelaaplicación 255 8.3 Estructurasdearchivos 256 8.3.1 Archivossecuenciales 256 8.3.2 Archivoshash 257 8.3.3 Archivosdeárbolmultiforme(Btrees) 259 8.3.4 Índicesbitmap 266 8.3.5 Resumendeestructurasdearchivos 267 8.4 Optimizacióndeconsultas 268 8.4.1 Tareasdetraducción 268 8.4.2 Mejorasenlasdecisionesdeoptimización 271 8.5 Seleccióndeíndices 274 8.5.1 Definicióndelproblema 274 8.5.2 Equilibriosydificultades 276 8.5.3 Reglasdeselección 277 8.6 Opcionesadicionalesdeldiseñofísicodebasede datos 280 8.6.1 Desnormalización 280 8.6.2 Formateoderegistros 282 8.6.3 Procesamientoparalelo 283 8.6.4 Otrasformasdemejorareldesempeño 284 Reflexiónfinal 285 Revisióndeconceptos 285 Preguntas 286 Problemas 287 Referenciasparaampliarsuestudio 293 PARTE CINCO DESARROLLODEAPLICACIONESCON BASESDEDATOSRELACIONALES 295 Capítulo 9 Formulaciónavanzadadeconsultascon SQL 297 Objetivosdeaprendizaje 297 Panoramageneral 297 9.1 Problemasdeenlaceexterno(outerjoin) 298 9.1.1 SoportedeSQLparaproblemasdeenlace externo 298 9.1.2 Combinacióndeenlacesinternosy externos 301 9.2 Entendiendolasconsultasempaquetadas 303 9.2.1 ConsultasempaquetadastipoI 303 9.2.2 FormulacionesSQLlimitadasparaproblemasde diferencia 305 9.2.3 UsodeconsultasempaquetadastipoIIpara problemasdediferencia 308 9.2.4 Consultasempaquetadasconlacláusula FROM 312 9.3 Formulacióndeproblemasdedivisión 314 9.3.1 Revisióndeloperadordividir314 9.3.2 Problemassencillosdedivisión 315 9.3.3 Problemasdedivisiónavanzados 317 9.4 Consideracionesdevalornulo 320 9.4.1 Efectoencondicionessimples 320 9.4.2 Efectosobrelascondicionescompuestas 321 9.4.3 Efectosobreloscálculosconjuntosyla agrupación 323 Reflexiónfinal 324 Revisióndeconceptos 325 Preguntas 327 Problemas 328 Referenciasparaampliarsuestudio 332 www.detodoprogramacion.com www.FreeLibros.me xxii Contenido Apéndice9.A UsodesentenciasmúltiplesenMicrosoftAccess 332 Apéndice9.B ResumendelasintaxisdeSQL:2003 333 Apéndice9.C AnotacióndeOracle8iparaenlacesexternos 335 Capítulo 10 Desarrollodeaplicacionesconvistas 339 Objetivosdeaprendizaje 339 Panoramageneral 339 10.1 Antecedentes 340 10.1.1 Motivación 340 10.1.2 Definicióndevista 340 10.2 Usodevistaspararecuperación 342 10.2.1 UsodevistasenenunciadosSELECT 342 10.2.2 Procesamientodeconsultascon referenciasavista 344 10.3 Actualizaciónconelusodevistas 346 10.3.1 Vistasdeactualizacióncontablaúnica 346 10.3.2 Vistasdeactualizaciónytablamúltiple 349 10.4 Usodevistasenformulariosjerárquicos 353 10.4.1 ¿Quéesunformulariojerárquico? 353 10.4.2 Relaciónentreformulariosjerárquicosy tablas 354 10.4.3 Habilidadesdeformulacióndeconsultas paraformulariosjerárquicos 355 10.5 Usodevistasenlosreportes 359 10.5.1 ¿Quéesunreportejerárquico? 359 10.5.2 Habilidadesparalaformulaciónde consultasenreportesjerárquicos 361 Reflexiónfinal 362 Revisióndeconceptos 362 Preguntas 363 Problemas 364 Referenciasparaampliarsuestudio 371 Apéndice10.A ResumendesintaxisdeSQL:2003 372 Apéndice10.B Reglasparavistasenlazadasquesepuedenactualizar enOracle 372 Capítulo 11 Procedimientosalmacenadosy disparadores 375 Objetivosdeaprendizaje 375 Panoramageneral 375 11.1 Lenguajesdeprogramacióndebasesdedatosy PL/SQL 376 11.1.1 Motivaciónparaloslenguajesde programacióndebasededatos 376 11.1.2 Aspectosdediseño 378 11.1.3 SentenciasPL/SQL 380 11.1.4 EjecucióndelassentenciasPL/SQLen bloquesanónimos 386 11.2 Procedimientosalmacenados 388 11.2.1 ProcedimientosPL/SQL 389 11.2.2 FuncionesPL/SQL 392 11.2.3 Usodecursores 395 11.2.4 PaquetesPL/SQL 398 11.3 Disparadores(triggers) 402 11.3.1 Motivaciónyclasificacióndelos disparadores 402 11.3.2 DisparadoresdeOracle 403 11.3.3 Cómoentenderlaejecucióndeun disparador 414 Reflexiónfinal 417 Revisióndeconceptos 417 Preguntas 419 Problemas 420 Referenciasparaampliarsuestudio 422 Apéndice11.A ResumendelasintaxisdeSQL:2003 423 PARTE SEIS DESARROLLOAVANZADODEBASESDE DATOS 425 Capítulo 12 Diseñoeintegracióndevistas 427 Objetivosdeaprendizaje 427 Panoramageneral 427 12.1 Motivaciónparaeldiseñoeintegraciónde vistas 428 12.2 Diseñodevistasconformularios 429 12.2.1 Análisisdeformularios 429 12.2.2 AnálisisdelasrelacionesM-way utilizandoformularios 435 12.3 Integracióndevistas 439 12.3.1 Enfoquedeintegraciónincrementaly paralelo 439 12.3.2 Ejemplosdeintegracióndevistas 442 Reflexiónfinal 444 Revisióndeconceptos 444 Preguntas 445 Problemas 445 Referenciasparaampliarsuestudio 447 Capítulo 13 DesarrollodebasededatosparaStudentLoan Limited 449 Objetivosdeaprendizaje 449 Panoramageneral 449 13.1 Descripcióndelcaso 450 13.1.1 Panoramageneral 450 13.1.2 Flujodetrabajo 450 13.2 Modeladoconceptualdedatos 455 13.2.1 ERDparaelformulariodeorigendel préstamo 455 13.2.2 Integraciónincrementaldespuésde agregarunacartadedeclaración 455 13.2.3 Integraciónincrementaldespuésde agregarelestadodecuenta 458 13.2.4 Integraciónincrementaldespués deagregarelreportedeactividaddel préstamo 459 www.detodoprogramacion.com www.FreeLibros.me Contenido xxiii 13.3 Refinamientodelesquemaconceptual 461 13.3.1 Conversióndelesquema 461 13.3.2 Normalización 462 13.4 Diseñofísicodelabasededatosydesarrollode aplicaciones 464 13.4.1 Perfilesdeaplicacionesytablas 464 13.4.2 Seleccióndeíndices 465 13.4.3 Datosderivadosydecisionesde desnormalización 466 13.4.4 Otrasdecisionesdeimplementación 467 13.4.5 Desarrollodeaplicaciones 467 Reflexiónfinal 469 Revisióndeconceptos 470 Preguntas 470 Problemas 471 Apéndice13.A Glosariodeloscamposdelformularioyreporte 472 Apéndice13.B EnunciadosCREATETABLE 474 PARTE SIETE ADMINISTRACIÓNDEENTORNOSDE BASESDEDATOS 479 Capítulo 14 Administracióndedatosybasesde datos 481 Objetivosdeaprendizaje 481 Panoramageneral 481 14.1 Contextoorganizacionalparaadministrarbases dedatos 482 14.1.1 Apoyodelasbasesdedatosenlatomade decisionesadministrativas 482 14.1.2 Administracióndelosrecursosdeinformación paraelmanejodelconocimiento 483 14.1.3 Responsabilidadesdelosadministradores dedatosylosadministradoresdebasesde datos 484 14.2 Herramientasdeadministracióndebases dedatos 485 14.2.1 Seguridad 486 14.2.2 Restriccionesdeintegridad 490 14.2.3 Administracióndedisparadoresy procedimientosalmacenados 493 14.2.4 Manipulacióndeldiccionariodedatos 495 14.3 Procesosparaespecialistasenbases dedatos 497 14.3.1 Planeacióndedatos 497 14.3.2 Selecciónyevaluacióndelossistemasde administracióndebasesdedatos 498 14.4 Administracióndeentornosdebases dedatos 503 14.4.1 Procesamientodetransacciones 503 14.4.2 Procesamientodedatawarehouses 503 14.4.3 Entornosdistribuidos 504 14.4.4 Administracióndebasesdedatos deobjetos 505 Reflexiónfinal 505 Revisióndeconceptos 506 Preguntas 508 Problemas 509 Referenciasparaampliarsuestudio 511 Apéndice14.A ResumendelasintaxisSQL:2003 511 Capítulo 15 Administracióndetransacciones 515 Objetivosdeaprendizaje 515 Panoramageneral 515 15.1 Aspectosbásicosdelastransaccionesdebases dedatos 516 15.1.1 Ejemplosdetransacciones 516 15.1.2 Propiedadesdelatransacción 518 15.2 Controldelaconcurrencia 519 15.2.1 Objetivodelcontroldeconcurrencia 520 15.2.2 Problemasdeinterferencia 520 15.2.3 Herramientasdecontroldeconcurrencia 522 15.3 Administraciónderecuperaciones 526 15.3.1 Dispositivosdealmacenamientodedatosy tiposdefallas 526 15.3.2 Herramientasderecuperación 527 15.3.3 Procesosderecuperación 529 15.4 Aspectosdeldiseñodetransacciones 533 15.4.1 Límitedetransacciónypuntos decisivos 533 15.4.2 Nivelesdeaislamiento 536 15.4.3 Momentodeimposicióndelarestricción deintegridad 537 15.4.4 Puntosdeprotección 539 15.5 Administracióndelflujodetrabajo 539 15.5.1 Caracterizacióndelosflujosdetrabajo 540 15.5.2 Tecnologíasquepermitenelflujode trabajo 540 Reflexiónfinal 542 Revisióndeconceptos 543 Preguntas 544 Problemas 545 Referenciasparaampliarsuestudio 551 Apéndice15.A ResumendesintaxisdeSQL:2003 551 Capítulo 16 Tecnologíayadministracióndedata warehouse 553 Objetivosdeaprendizaje 553 Panoramageneral 553 16.1 Conceptosbásicos 554 16.1.1 Procesamientodetransaccionesversus apoyoalasdecisiones 554 16.1.2 Característicasdelosdatawarehouse 554 16.1.3 Arquitecturasparadatawarehouse 556 16.1.4 Mineríadedatos 558 16.1.5 Aplicacionesdelosdatawarehouse 559 16.2 Representaciónmultidimensionalde losdatos 560 16.2.1 Ejemplodeuncubodedatos multidimensional 560 16.2.2 Terminologíamultidimensional 562 www.detodoprogramacion.comwww.FreeLibros.me xxiv Contenido 16.2.3 Datosdeseriedetiempo 564 16.2.4 Operacionesdelcubodedatos 564 16.3 SoportedeDBMSrelacionalparadata warehouse 567 16.3.1 Modeladodedatosrelacionalesparadatos multidimensionales 567 16.3.2 Representacióndedimensión 571 16.3.3 ExtensionesparalacláusulaGROUPBY paradatosmultidimensionales 574 16.3.4 Vistasmaterializadasyreescriturade consultas 583 16.3.5 Tecnologíasdealmacenamientoy optimización 589 16.4 Mantenimientodeundatawarehouse 591 16.4.1 Fuentesdedatos 591 16.4.2 Flujodetrabajoparaelmantenimientode undatawarehouse 592 16.4.3 Administracióndelprocesode refrescamiento 594 Reflexiónfinal 596 Revisióndeconceptos 596 Preguntas 597 Problemas 598 Referenciasparaampliarsuestudio 603 Capítulo 17 Procesamientocliente-servidor,procesamiento debasesdedatosparalelasybasesdedatos distribuidas 605 Objetivosdeaprendizaje 605 Panoramageneral 605 17.1 Panoramadelprocesamientodistribuidoydelos datosdistribuidos 606 17.1.1Motivaciónparaelprocesamientocliente- servidor 606 17.1.2 Motivaciónparaelprocesamientodebases dedatosparalelas 607 17.1.3 Motivaciónparadatosdistribuidos 608 17.1.4 Resumendeventajasydesventajas 609 17.2 Arquitecturasdebasesdedatoscliente- servidor 609 17.2.1 Conflictosdediseño 609 17.2.2 Descripcióndearquitecturas 611 17.3 Procesamientodebasesdedatosparalelas 615 17.3.1 Conflictosdearquitecturasydiseño 616 17.3.2 Tecnologíacomercialdebasesdedatos paralelas 617 17.4 Arquitecturasparasistemasdegestióndebases dedatosdistribuidas 620 17.4.1 Arquitecturadecomponente 620 17.4.2 Arquitecturasdeesquema 622 17.5 Transparenciaparaprocesamientodebasesde datosdistribuidas 624 17.5.1 Ejemplomotivacional 624 17.5.2 Transparenciadefragmentación 626 17.5.3 Transparenciadeubicación 627 17.5.4 Transparenciademapeolocal 628 17.5.5 Transparenciaenbasesdedatos distribuidasdeOracle 628 17.6 Procesamientodebasesdedatos distribuidas 631 17.6.1 Procesamientodeconsultadistribuida 631 17.6.2 Procesamientodetransaccióndistribuida 632 Reflexiónfinal 635 Revisióndeconceptos 636 Preguntas 636 Problemas 638 Referenciasparaampliarsuestudio 639 Capítulo 18 Sistemasdeadministracióndebasesdedatos deobjetos 641 Objetivosdeaprendizaje 641 Panoramageneral 641 18.1 Motivaciónparalaadministracióndebasesde datosdeobjetos 642 18.1.1 Datoscomplejos 642 18.1.2 Desajusteenelsistemadetipos 642 18.1.3 Ejemplosdeaplicación 643 18.2 Principiosorientadosaobjetos 644 18.2.1 Encapsulación 644 18.2.2 Herencia 646 18.2.3 Polimorfismo 647 18.2.4 Lenguajesdeprogramaciónversus DBMS 649 18.3 Arquitecturasparalaadministracióndebasesde datosdeobjetos 649 18.3.1 Objetosgrandesysoftwareexterno 650 18.3.2 Servidoresespecializadosenmedios 650 18.3.3 Middlewaredebasesdedatosdeobjetos 651 18.3.4 Sistemasdeadministracióndebasesde datosrelacionalesdeobjetosparatipos definidosporelusuario 652 18.3.5 Sistemasdeadministracióndebasesde datosorientadasaobjetos 654 18.3.6 Resumendearquitecturasdebasesde datosdeobjetos 655 18.4 Característicasdebasesdedatosdeobjetosen SQL:2003 655 18.4.1Tiposdefinidosporelusuario 656 18.4.2 Definicionesdetabla 658 18.4.3 Familiasdesubtablas 661 18.4.4 Manipulacióndeobjetoscomplejosy familiasdesubtablas 662 18.5 Característicasdebasededatosdeobjetosen Oracle10g 664 18.5.1 Definicióndetiposdefinidosporelusuario ytablastipoenOracle10g 665 18.5.2UsodetablasdetiposenOracle10g 668 18.5.3 OtrascaracterísticasdeobjetoenOracle 10g 670 Reflexiónfinal 672 Revisióndeconceptos 673 Preguntas 673 Problemas 674 Referenciasparaampliarsuestudio 678 Glosario 679 Bibliografía 696 Índice 698 www.detodoprogramacion.com www.FreeLibros.me Introducción a los ambientes de base de datos Laparte1proporcionalosantecedentesparaelposteriorestudiodetalladodeldiseño, desarrollodeaplicacionesyadministracióndebasededatos.Loscapítulosdelaparte1 presentanlosprincipiosdelaadministracióndebasededatosylanaturalezadesuprocesode desarrollo.Elcapítulo1abarcalosconceptosbásicosdelaadministracióndebasededatos, incluyendocaracterísticas,funcionesyarquitecturasdesussistemasdeadministración,su mercadoylosimpactosorganizacionalesdesutecnología.Elcapítulo2esunaintroducción enelcontexto,losobjetivos,lasfasesylasherramientasdelprocesodedesarrollodeunabase dedatos. Capítulo1. Introducciónalaadministracióndebasededatos Capítulo2. Introducciónaldesarrollodebasesdedatos Parte 1 www.detodoprogramacion.com www.FreeLibros.me www.detodoprogramacion.com www.FreeLibros.me 3 Capítulo 1 Introducción a la administración de base de datos Objetivos de aprendizaje Este capítulo es una introducción a la tecnología de las bases de datos y al impacto que tiene sobre las organizaciones. Al finalizar este capítulo el estudiante debe haber adquirido los siguientes conocimientos y habilidades: • Describir las características de las bases de datos de negocios y las características de sus sistemas de administración. • Comprender la importancia de los accesos no procedurales para obtener productividad del software. • Apreciar los avances en la tecnología de base de datos y sus contribuciones a la sociedad moderna. • Comprender el impacto de las arquitecturas de los sistemas de administración de base de datos en el procesamiento distribuido y en el mantenimiento del software. • Percibir las oportunidades profesionales relacionadas con el desarrollo de aplicaciones de base de datos y con su administración. Panorama general Quizásustednosehayadadocuenta,perosuvidaseveafectadadeformadramáticaporlatec- nologíadebasededatos.Lasbasesdedatoscomputarizadassonvitalesparaelfuncionamiento delasorganizacionesmodernas.Ustedestáencontactoconlasbasesdedatosdiariamenteatra- vésdeactividadescomocomprarenelsupermercado,retirarefectivodeuncajeroautomático, ordenarunlibroenlíneayregistrarseenunaclase.Lascomodidadesdesuvidadiaria,enparte, sedebenalaproliferacióndelasbasesdedatoscomputarizadasyasutecnología. Latecnologíadebasesdedatosnosolamentemejoralasoperacionesdiariasdelasorga- nizaciones,sinotambiénlacalidaddelasdecisionesqueafectannuestrasvidas.Lasbasesde datoscontienenunflujodedatosacercademuchosaspectosdenuestrasvidas:preferenciasde consumo,usode telecomunicaciones,historialcrediticio,hábitosalver la televisión,etc.La tecnologíadebasededatosayudaaresumirestevolumendedatoseninformaciónútilparala tomadedecisiones.Losdirectivosutilizanlainformaciónobtenidaparalatomadedecisiones alargoplazo,comoinvertirenplantasyequipo,ubicartiendas,agregarelementosnuevosal inventarioeiniciarnuevosnegocios. www.detodoprogramacion.com www.FreeLibros.me 4 Parte Uno Introducciónalosambientesdebasededatos Esteprimercapítulomarcaelpuntoinicialparalaexploracióndelatecnologíadebasede datos:analizalascaracterísticasdeunabasededatos,deunsistemadeadministracióndebase dedatos,dearquitecturasdesistemasyelpapeldelaspersonasenlaadministraciónyusode lasmismas.Elcapítulo2proporcionaunpanoramaconceptualdelprocesodedesarrollodeuna basededatos.Estecapítulopresentaunaamplia imagendelatecnologíadebasededatosy compartelaemocióndeltrabajoporvenir. 1.1 Características de la base de datos base de datos unacoleccióndedatos persistentesquepueden compartirseeinterrela- cionarse. Lasempresasreúnentodoslosdíasmontañasdehechosacercadepersonas,cosasyeventos, comolosnúmerosdetarjetasdecrédito,estadosdecuentabancariosymontosdelascompras. Lasbasesdedatoscontienenestetipodehechossimplesasícomohechosnoconvencionales, tales como fotografías, huellasdigitales, videosdeproductosy resúmenesde libros.Con la proliferacióndeInternetydelosmediosparacapturardatosdeformacomputarizadatenemos anuestradisposiciónunagrancantidaddedatosalhacerclicconelbotóndelratón.Organizar estosdatosparafacilitarsuconsultaymantenimientoescomplicado.Porlotanto,laadminis- tracióndebasededatossehaconvertidoenunatareavitalenmuchasorganizaciones. Antesdeaprendersobrelaadministracióndebasededatos,primerodebemoscomprender algunasdesuspropiedadesmásimportantes,comolasquesemuestranenlasiguientelista: • Persistentesignificaquelosdatosresidenenunalmacenamientoestable,talcomoundisco magnético.Lasorganizacionesnecesitan,porejemplo,conservarlosdatosdesusclientes, proveedoreseinventarioenunalmacenamientoestable,yaqueseusandeformacontinua. Unavariabledeunprogramadecomputadoranoespersistenteporqueresideenlamemoria principalydesaparecedespuésdequeelprogramafinaliza.Persistencianosignificaquelos datosexistaneternamente;cuandodejandeserrelevantes(porejemplo,cuandounprovee- dornocontinúaenelnegocio),seeliminanosearchivan. Lapersistenciadependedelaimportanciadelusodeseado.Porejemplo,esimportante conservarelkilometrajequeustedrecorrehastasutrabajoencasodequeseaautoempleado. Deigualforma,elmontodesusgastosmédicosesimportantesipuedededucirloositiene unacuentadegastosmédicos.Yaqueelalmacenamientoyelmantenimientodelosdatos escostoso,sólodebenalmacenarselosqueseanrelevantesparalatomadedecisiones. • Compartirsignificaqueunabasededatospuedetenermúltiplesusosyusuarios.Unabase dedatosproporcionaunamemoriacomúnparavariasfuncionesenunaorganización.Por ejemplo,unabasededatosdeempleadospuedeservirparacalcularlanómina,parahacer evaluaciones sobredesempeño,parahacer requerimientosde reportesdelgobierno, etc. Muchosusuariospuedenaccederalabasededatosalmismotiempo;porejemplo,muchos clientespuedenhacerreservacionesenunaaerolíneadeformasimultánea.Amenosque dosusuariosintentenmodificarlamismapartedelabasededatosalmismotiempo,ambos puedencontinuarsintenerqueesperaralotro. • Interrelaciónsignificaquelosdatosalmacenadoscomounidadesseparadassepuedenco- nectarparamostraruncuadrocompleto.Porejemplo,unabasededatosdeclientesrela- cionalosdatosdeéstos(nombre,dirección,etc.)conlosdatosdeunaorden(númerode orden,fechadelaorden,etc.)parafacilitarsuprocesamiento.Lasbasesdedatoscontienen tantoentidadescomorelacionesentreentidades.Unaentidadesunconjuntodedatosge- neralmentesobreuntema,alquepuedeaccedersedeformaconjunta.Unaentidadpuede representarunapersona,lugar,cosaosuceso;porejemplo,unabasededatosdeempleados contieneentidadescomoempleados,departamentosyhabilidades,asícomolasrelaciones quemuestranlaasignacióndelosempleadosconlosdepartamentos,lashabilidadesque poseenysuhistoriasalarial.Unabasededatostípicadeunnegociopuedetenercientosde entidadesyrelaciones. Paramostrarestascaracterísticas,consideremosciertonúmerodebasesdedatos.Comen- cemosconunasencillabasededatosdeunauniversidad(figura1.1),yaqueustedtienecierta familiaridadconlasactividadesenunadeellas.Labasededatossimplificadadeunauniversidad www.detodoprogramacion.com www.FreeLibros.me Capítulo 1 Introducciónalaadministracióndebasededatos 5 contieneinformaciónsobrelosestudiantes,lasfacultades,loscursos,lasofertasdeloscursosylas matriculaciones.Labasededatosincluyeprocedimientoscomoregistrodeclases,asignaciónde profesoresaloscursosofertados,registrodecalificacionesycalendarizacióndeloscursosofreci- dos.Lasrelacionesenlabasededatosdelauniversidadsirvenpararesponderapreguntascomo • ¿Quéofertasestándisponiblesparauncursoenelperiodoacadémicoactual? • ¿Quiéneselinstructordeuncursoofrecido? • ¿Quéestudiantesestáninscritosenuncurso? Acontinuación,consideremosunabasededatosdeldepartamentodedistribucióndeagua, talcomoseilustraenlafigura1.2.Lafunciónprincipaldeldepartamentodedistribuciónde aguaesfacturaralosclientesporelusodelamisma.Elconsumodeaguadeunclientesemide deformaperiódicaysepreparalafactura.Existenmuchosaspectosqueinfluyenenlaprepa- racióndeunafactura,comoelhistorialdepagodelcliente,lascaracterísticasdelamedición, eltipodecliente(debajosingresos,arrendatario,propietario,pequeñonegocio,granempresa, etc.)yelciclodefacturación.Lasrelacionesenlabasededatosdeldepartamentodedistribu- cióndeaguasirvenparacontestarpreguntascomo 1. ¿Enquéfechaseleenviólaúltimafacturaalcliente? 2. ¿Cuántoconsumodeaguaseregistróenlamásrecientelecturadelmedidordeuncliente? 3. ¿Cuándofuesuúltimopago? Finalmente,consideremoslabasededatosdeunhospital,comoseilustraenlafigura1.3. Labasededatosdelhospitalapoyalostratamientosquelosmédicosrealizanalospacientes.Los médicosrealizandiagnósticosyprescriben tratamientosconbaseen lossíntomas.Diferentes proveedoresdesaludleenycontribuyenenelregistromédicodeunpaciente.Lasenfermeras FIGURA 1.2 Ilustracióndelabase dedatossimplificada deldepartamentode distribucióndeagua Entidades: clientes, medidores, facturas, pagos, lectura de los medidores Base de datos del departamento de distribución de agua Relaciones: facturas enviadas a los clientes, clientes que realizan pagos, clientes que usan medidores, etc. Facturación Lectura del medidor Procesamiento del pago Iniciar/detener el servicio FIGURA 1.1 Ilustraciónsimpli- ficadadelabasede datosuniversitaria Entidades: estudiantes, profesores, cursos, ofrecimientos, inscripciones Base de datos universitaria Relaciones: profesores por ofrecimiento, estudiantes inscritos en los cursos ofrecidos, ofertas hechas de los cursos, etc. Inscripción Registro de calificaciones Asignación de profesores Calendarización del curso Nota:Laspalabrasalrededordelabasededatosrepresentanlosprocedimientosqueéstautiliza. www.detodoprogramacion.com www.FreeLibros.me 6 Parte Uno Introducciónalosambientesdebasededatos sonresponsablesdemonitorearlossíntomasyadministrarlosmedicamentos.Elpersonaldel comedorpreparalascomidasdeacuerdoconelplandedietas.Losmédicosprescribennuevos tratamientosbasándoseenlosresultadosdetratamientospreviosydelossíntomasdelospa- cientes.Lasrelacionesenlabasededatossirvenpararesponderapreguntascomo • ¿Cuálessonlossíntomasmásrecientesdeunpaciente? • ¿Quiénprescribióciertotratamientoaunpaciente? • ¿Quédiagnósticohizoelmédicoaunpaciente? Estasbasesdedatossimplescarecendemuchostiposdedatosqueseencuentranenlas basesdedatosreales.Porejemplo,labasededatossimplificadadelauniversidadnocontiene datosacercadelosprerrequisitosdeloscursosodelacapacidaddelossalonesdeclasesysus ubicaciones.Lasversionesrealesdeestasbasesdedatosdebencontenermuchasmásentidades,
Compartir