Download TEMA 19

Document related concepts

Modelo de base de datos wikipedia , lookup

Modelo relacional wikipedia , lookup

Base de datos wikipedia , lookup

Base de datos relacional wikipedia , lookup

Capa de acceso a datos wikipedia , lookup

Transcript
Técnico de Soporte
Informático
TEMA 19
INTRODUCCIŁN A LAS BASES DE DATOS
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
TEMA19.INTRODUCCIÓNALAS
BASESDEDATOS
CONTENIDO
1. CONCEPTO............................................................................................................................................2
2. TIPOS ....................................................................................................................................................4
2.1
MODELOSTRADICIONALES. ........................................................................................................4 Modelojerárquico. ............................................................................................................................... 4
Modeloenred. .....................................................................................................................................5
Modelorelacional.................................................................................................................................5
2.2
MODELOSAVANZADOS. .............................................................................................................6 Modeloorientadoaobjetos.................................................................................................................6 Modelodeclarativo. .............................................................................................................................6 3. MODELOCONCEPTUALDEDATOS .......................................................................................................7 3.1ELMODELOENTIDADͲRELACIÓN........................................................................................................8 PasosparadesarrollarunmodeloE/R ...............................................................................................10 Relacionescomplejas .........................................................................................................................11 4. ELMODELORELACIONAL ...................................................................................................................13 5. ESTÁNDARESDECONECTIVIDAD........................................................................................................15 ADO ....................................................................................................................................................15
JDBC....................................................................................................................................................16
WebDB...............................................................................................................................................17
2
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
1. CONCEPTO
1. Reducciónderedundancia:Enlossistemasquenousabasesdedatos,cadaaplicación
tiene sus propios ficheros. Esto a menudo origina enorme redundancia en los datos
almacenados,asícomodesperdiciodelespaciodealmacenamiento.Porejemplo,una
aplicación de depósitos en un banco y otra de préstamos puede contener la misma
informaciónreferentealadireccióndeciertosclientes.
2. Evitarlainconsistencia:Siguiendoconelejemploanterior,habráalgunasocasionesen
que la dirección del mismo cliente no concuerde en Préstamo y Depósito. Se dice
entoncesquelabasededatosesInconsistente.Siunhechoserepresentaporunasola
entradalainconsistencianopuedeexistir.
3. Seguridad: Puede aplicarse restricciones de seguridad definiendo controles y canales
específicosparaaccederalosdatos.
4. Representación de los datos: Pueden hacerse cumplir normas de representación de
los datos, para facilitar el intercambio entre sistemas y de igual forma se pueden
definir procedimientos de validación cada vez que se intente una actualización de la
B.D.(porejemplo,nohayempleadosdemásde65años,compartirlosdatos,etc.).
5. Independencia de los datos: Como independencia de los datos se entiende la
posibilidaddecambiarlosprogramasdeaplicaciónsincambiarlarepresentaciónyel
modo de acceso de los datos y viceversa. En contraposición a la costumbre de
organizar y acceder a los datos según los requerimientos de la aplicación. Pueden
desarrollarsenuevasaplicacionesqueoperenconlosdatosqueyahayalmacenados,
puesestossonindependientesdelasaplicaciones.
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
Unsistemadebasesdedatosproporcionauncontrolcentralizadodelosdatos.Estocontrasta
conlasituaciónqueprevaleceactualmente,dondeamenudocadaaplicacióntienesuspropios
ficheros.Lasventajasdelcontrolcentralizadosonentreotras:
UnSistemadeBasedeDatosconsisteenunconjuntoderecursos(datos,programas,personas
ymáquinas)diseñadoparamanejargrandescantidadesdeinformación.Elconjuntodedatos
seconocecomoBasedeDatos,quecontieneinformaciónacercadeunaorganización
determinada.
YlosprogramasparaaccederadichosdatosesloqueseconocecomoSistemadeGestiónde
Base de Datos (SGBD) o Data Base Management System (SGBD). El manejo de los datos
incluye la definición de las estructuras para el almacenamiento de la información y los
mecanismosparaelmanejodedichainformación.Ademásseencargadeotrosaspectoscomo
elcuidadodelaseguridaddelainformaciónalmacenada,tantocontrafallosdelsistema,como
contraintentosdeaccesoporpersonalnoautorizado.ElSGBDproporcionaalosusuariosuna
visión abstracta de la información. Es decir, el sistema oculta ciertos detalles relativos a la
formaenquelosdatossealmacenanymantienen.
Estoesasí,porqueparaqueelsistemaseaútil,lainformacióndebealmacenarseyrecuperarse
en forma eficiente, lo que obliga a la utilización de estructuras de datos complejas para
3
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
representarlainformaciónenlabasededatos.Peroestacomplejidadnointeresarealmenteal
usuario de bases de datos, que generalmente no cuenta con conocimientos profundos de
informática.Porellosedefinenvariosnivelesdeabstracción(definidosporelgrupodeestudio
deANSI/X3/SPARCsobresistemasdeadministracióndebasesdedatos),desdelosquepuede
observarse la base de datos, que ocultan en diferentes grados dicha complejidad de las
estructurasdedatos.Ydesdelosquesepuedendefinirlasestructurasdealmacenamientoy
losmecanismosdemanejodelainformación.Estosnivelesson:
NivelInternooFísico:Eselnivelmásbajodeabstracciónenelquesedescribecómo
sealmacenanrealmentelosdatos.Enestenivelsedescribenendetallelasestructuras
dedatosalmásbajonivel,utilizandoparadicharepresentaciónunesquema,odiseño
general de la base de datos, llamado esquema físico. El esquema físico establece la
forma en que los datos se almacenan en los dispositivos periféricos del ordenador.
Dichadescripciónpodemosconsiderarla,asímismo,envariosniveles:enelnivelmás
bajo, se puede considerar cada bit del soporte, estableciendo su significado y su
dirección, o bien a un nivel más alto, se puede hablar en términos de registros y
ficheros.
NivelConceptual:Eselsiguienteniveldeabstracción,enelquesedescribecuálesson
losdatosrealesqueestánalmacenadosenlabasededatosyquérelacionesexisten
entre dichos datos. Este nivel contendrá toda la base de datos en términos de unas
cuantas estructuras relativamente sencillas. El paso del mundo real al esquema
conceptual corresponde a un proceso de modelización en el que se clasifica en
categorías a los objetos o entidades del mundo real, designándolos mediante
nombres. Decimos proceso de modelización porque dicho paso (mundo real a
esquema conceptual), lo realizamos ajustándonos a uno de los modelos de datos
propuestos para ello. Un modelo de datos es la herramienta formal utilizada para
comprendereinterpretarelmundoreal.
Nivel Externo o Lógico: Es el más cercano a los usuarios, es decir, el que atañe a la
manera cómo cada usuario ve los datos. En otras palabras, habrá muchas vistas
externas, cada una compuesta por una representación más o menos abstracta de
alguna parte de la base de datos, y habrá una sola vista conceptual, compuesta por
unarepresentacióntambiénabstractadelabasededatosensutotalidad.Lamayoría
delosusuariosnoseinteresanenlabasededatostotal,sinotalsóloenalgunaparte
limitadadelamisma,estoes,unavistadelosdatos.
ENRESUMEN…
ParaconcluirestepuntobastacondestacarlaimportanciadelasBasesdeDatoshoyendía.La
sociedad
actual dispone de cantidades impensables de datos e información, que si no fueran
estructurados a través de una serie de reglas sería imposible abarcar de manera sencilla y
entendible.PorestecometidosurgiólanecesidaddecrearlasBasesdeDatos
4
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
2. TIPOS
La división que vamos a hacer aquí de las bases de datos será en función de la tecnología
empleadaensufuncionamiento.
Por poner un ejemplo de la vida real, si hablamos de coches tenemos los tradicionales de
motoragasolina,losdegasóleo,losturbodiesel,losquefuncionabancongasógeno,ymucho
menos frecuentes los coches solares o incluso los de propulsión a chorro; pues bien, si
hablamosdebasesdedatostenemosquelasmásutilizadassonlabasesdedatosrelacionales,
lasmásantiguassonlasjerárquicasyenred,ylasmásavanzadassonlasorientadasaobjetos,
ylasdeclarativas.Estassediferencian,enlaformadetrabajarconlosdatosyenlaconcepción
omentalidadqueelusuariodebeadoptarparainteractuarconelsistema.
2.1 MODELOSTRADICIONALES.
Estudiaremos en este epígrafe los sistemas de bases de datos más utilizados hasta el
momento.Daremossólounasnocionesmuybásicasdecadaunoyaquenoscentraremosen
sucesivosepígrafesenelModeloRelacional,queeselmásinteresanteyutilizadohoyendía.
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
MODELOJERÁRQUICO.
ElsistemajerárquicomáscomúnmenteconocidoeselsistemaIMSdeIBM.Estabasededatos
tiene como objetivo establecer una jerarquía de fichas, de manera que cada ficha puede
contenerasuvezlistasdeotrasfichas,yasísucesivamente.P.ej.,unafichadeclientespuede
contenerunalistadefichasdefacturas,cadaunadelascualespuedecontenerasuvezuna
listadefichasdelíneasdedetallequedescribenlosserviciosfacturados.
Unabasededatosjerárquicaestácompuestaporunasecuenciadebasesdedatosfísicas,de
manera que cada base de datos física se compone de todas las ocurrencias de un tipo de
registroofichadeterminada.
Estemodelopresentaalgunosinconvenientesquederivandelproblemaprincipal,surigidez.
Esto hace que puedan darse obligatoriamente redundancias, es decir, tener que almacenar
variasveceselmismodatoendiferentessitios,estoprovocadesperdiciodeespacio,tiempoy
quelosdatosnoseránconsistentes.
5
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
MODELOENRED.
Podemos considerar al modelo de bases de datos en red como de una potencia intermedia
entreeljerárquicoyelrelacionalqueestudiaremosmásadelante.Suestructuraesparecidaa
la jerárquica aunque bastante más compleja, con lo que se consiguen evitar, al menos en
parte,losproblemasdeaquél.
Losconceptosfundamentalesquedebeconocereladministradorparadefinirelesquemade
unabasededatosjerárquica,sonlossiguientes:
ͲRegistro:Vieneasercomocadaunadelasfichasalmacenadasenunficheroconvencional.
ͲCamposoelementosdedatos.Soncadaunodelosapartadosdequesecomponeunaficha.
ͲConjunto:Eselconceptoquepermiterelacionarentresítiposderegistrodistintos.
MODELORELACIONAL.
Este modelo intenta representar la base de datos como un conjunto de tablas. Aunque las
tablas son un concepto simple e intuitivo, existe una correspondencia directa entre el
conceptoinformáticodeunatabla,yelconceptomatemáticoderelación,locualesunagran
ventaja, pues permite efectuar formalizaciones de una forma estricta mediante las
herramientasmatemáticasasociadas,comopuedaserelálgebrarelacionalenelámbitodelas
consultas.
Dispondremosdeunasherramientasfácilesdemanejarquenospermitiráninteractuarconla
basededatos.
Losconceptosbásicosdelmodelorelacionalson:
ͲRegistro:Esalgoasícomocadafichadeunficheroconvencional.
ͲTabla:Esunconjuntodefichasdeunmismotipo.
Conestosdosconceptosesposiblecrearcualquiertipodedatos,yasociarlosentresí,sinlas
restriccionespropiasdelmodelojerárquicooenred.
Cada tabla está compuesta por filas, también llamadas tuplas o registros, cada uno de los
cualesposeeunaseriedecamposenlosquesealmacenanlosdatosbásicos.Elesquemade
unatablanosindicalosnombresdecadaunodeloscamposquecontiene,asícomoeltipode
informaciónquedebecontener.
Una tabla es para nosotros un conjunto de registros; por tanto, los registros no pueden
repetirse.
Parapoderaccederaunregistroconcreto,esnecesariohacerunaconsultaatravésdealgún
campoqueidentifiqueadichoregistro.
6
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
2.2 MODELOSAVANZADOS.
Las bases de datos relacionales han sido y siguen siendo ampliamente utilizadas para una
extensa gama de aplicaciones. Sin embargo, el aumento de potencia de los ordenadores
personales, ha hecho aparecer nuevas aplicaciones potentes que requieren la utilización de
datos complejamente relacionados o con necesidades de consultas muy particulares, como
puedan ser p.ej., los sistemas de información geográficos, el diseño de circuitos electrónicos
porordenador,etc.
MODELOORIENTADOAOBJETOS.
Actualmente, la creación de programas más grandes y complejos, ha hecho avanzar los
métodos de programación hacia nuevas formas que permiten el trabajo en equipo de una
forma más eficaz y en la que se disminuyen los problemas de coordinación. Uno de estos
métodos consiste en la programación orientada a objetos (POO), que trata los problemas
desde un punto de vista realista, y modelando cada uno de ellos como si se tratase de un
conjuntodeelementosuobjetosqueinterrelacionanentresíparasolucionarelproblema.
MODELODECLARATIVO.
WWW.ECLAP.JCYL.ES
Noentraremosenmásdetallesobreestostiposdebasesdedatos.
ENRESUMEN…
WWW.ECLAP.JCYL.ES
El enfoque de las bases de datos declarativas es sumamente intuitivo para el usuario, y le
permite abstraerse de los problemas de programación inherentes a otros métodos. Este
modelo suele usarse para bases de conocimiento, que no son más que bases de datos con
mecanismos de consulta en los que el trabajo de extracción de información a partir de los
datosrecaeenrealidadsobreelordenador,enlugardesobreelusuario.Estosmecanismosde
consulta exigen que la información se halle distribuída de manera que haga eficiente las
búsquedasdelosdatos,yaquenormalmentelasconsultasdeestetiporequierenaccederuna
yotravezalosdatosenbuscadepatronesqueseadecúenalascaracterísticasdelosdatos
quehasolicitadoelusuario.
Existen muy variados tipos de Bases de Datos, lasque se vienen utilizando hasta ahorason las
tradicionales,basadasenestructurasconocidasenotrosaspectosdelavidacomopuedeserla
Jerarquíaounared.ElmásimportanteeselmodeloRelacional,tambiénelmásutilizado.Otros
tipos de Bases de datos más modernos son los conocidos como Orientados a Objetos, que se
basanenlamismaideaporlaqueserigelaProgramaciónOrientadaaObjetos.
7
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
3. MODELOCONCEPTUALDEDATOS
A la hora de determinar una Bases de Datos debemos establecer un proceso partiendo del
acotamientodeunaparceladelmundoexterior(micromundoouniversodeldiscurso),aquél
quenosinteresarepresentarenlosdatos.Enesteprocesosedebeaprehender,comprendery
conceptualizardichomundoexteriortransformándoloenunconjuntodeideasydefiniciones
quesuponganunaimagenfieldelcomportamientodelmundoreal.Aestaimagendelmundo
exteriorlallamaremosModeloConceptual.
Unavezdefinidoelmodeloconceptual,éstesehadetransformarenunadescripcióndedatos,
atributosyrelacionesquedenominaremosEsquemaConceptualdelosdatos.Porúltimo,este
esquemaconceptualhabráquetraducirloaestructurasalmacenablesensoportesfísicos.Por
tantoesnecesariodistinguirentreBasesdedatos,queseráelbanco,elalmacéndelosvalores
(ocurrencias) de los datos. Los Modelos de Datos, que son las herramientas para diseñar los
datos y sus relaciones de forma que puedan soportar los valores correspondientes. Y
finalmentelosSistemasGestoresdeBasesdeDatos(SGBD),queseránlosencargadosdelas
accionesquellevemosacaboconlasbasesdedatos,permitiendotambiéncumplimentaralos
usuarios,mostrándoleslosdatosdeacuerdoasusnecesidades.Contodoello,sepuededefinir
unModelodeDatoscomo:Ungrupodeherramientasconceptualesparadescribirlosdatos,
susrelaciones,susemánticaysuslimitaciones;detalforma,quefacilitalainterpretaciónde
nuestromundorealysurepresentaciónenformadedatos,ennuestrosistemainformático.
Definidoelmodelodedatos,pasamosaanalizarlo.Paraello,partiremosdelaspropiedades,
quepodemosdiferenciarendostipos:
Estáticas: Son las propiedades invariantes en el tiempo. Quedan especificadas en el
Modelo de Datos por ESTRUCTURAS. Esta se define mediante el ESQUEMA, con el
lenguaje de definición de datos (DDL). El esquema, a su vez, está constituido por
EstructurayRestricciones.LaEstructuraquedadefinidaporlosObjetosdelModeloy
las Restricciones inherentes, conformando un conjunto de reglas de definición de
dichas Estructuras. Los objetos y Restricciones de la Estructura dependen de cada
Modelo,peroengeneralson:
Entidades
Atributos
Dominio
Relaciones
Representación,y
Restricciones:Haytrestiposderestricciones.Restriccionesinherentesvienen
impuestas por la propia naturaleza de Modelo introduciendo rigideces en la
modelización. Las Restricciones opcionales o de usuario, restricciones
propiamente dichas en el Esquema, son definidas por el usuario, pero el
ModelodeDatoslasreconoceysuministraherramientasparamanejarlas.Las
Restriccioneslibresdeusuarios,porúltimo,sonresponsabilidaddelusuarioy
elModelodeDatosnilasreconoce,nilasmaneja.
8
TEMA 19
Técnico de Soporte informático
Dinámicas:Sonlaspropiedadesquevaríanconeltiempo.Enelmodelodedatosson
las OPERACIONES. Se define como un conjunto de Operaciones con el Lenguaje de
manipulacióndedatos(DML).LasoperacionessobreunModelodeDatospuedenser
de:
Selección.Localizacióndelosdatosdeseados.
Acción.Realizacióndeunaacciónsobrelosdatosseleccionados.Dichaacción
puedeser:
Recuperación(obtencióndelosdatosseleccionados)y
Actualización,queasuvezpuedeser:
Modificación
Inserción
Borrado
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
Promoción Interna de
Técnico de Soporte Informático
Generalmente,todaoperacióndeActualizaciónvaprecedidadeunadeRecuperación,aunque
nonecesariamente.
3.1ELMODELOENTIDADͲRELACIÓN
Cuandoseutilizaunabasededatosparagestionarinformación,seestáplasmandounaparte
del mundo real en una serie de tablas, registros y campos ubicados en un ordenador;
creándose un modelo parcial de la realidad. Antes de crear físicamente estas tablas en el
ordenadorsedeberealizarunmodelodedatos.
WWW.ECLAP.JCYL.ES
ENTIDADESYRELACIONES
WWW.ECLAP.JCYL.ES
Se suele cometer el error de ir creando nuevas tablas a medida que se van necesitando,
haciendo así el modelo de datos y la construcción física de las tablas simultáneamente. El
resultadodeestoacabasiendounsistemadeinformaciónparcheado,condatosdispersosque
terminanpornocumpliradecuadamentelosrequisitosnecesarios.
ElmodelodedatosmásextendidoeseldenominadoENTIDAD/RELACIÓN(E/R)Enelmodelo
E/Rseparte deunasituaciónrealapartirdelacualsedefinen entidadesyrelacionesentre
dichasentidades:
ENTIDAD.Ͳ Objeto del mundo real sobre el que queremos almacenar información (Ej.: una
persona).Lasentidadesestáncompuestasdeatributosquesonlosdatosquedefinenelobjeto
(para la entidad persona serían DNI, nombre, apellidos, dirección,...). De entre los atributos
habráunoounconjuntodeellosquenoserepite;aesteatributooconjuntodeatributossele
llama clave de la entidad, (para la entidad persona una clave seria DNI). En toda entidad
siempre hay al menos una clave que en el peor de los casos estará formada por todos los
atributosdelatabla.Yaquepuedehabervariasclavesynecesitamoselegiruna,loharemos
atendiendoaestasnormas:
9
Promoción Interna de
Técnico de Soporte Informático
Técnico de Soporte informático
TEMA 19
Queseaúnica.
Quesetengaplenoconocimientodeella.Ͳ¿Porquéenlasempresasseasignaacadacliente
unnúmerodecliente?
Queseamínima,yaqueserámuyutilizadaporelgestordebasededatos.
RELACIÓN.Ͳ Asociación entre entidades, sin existencia propia en el mundo real que estamos
modelando, pero necesaria para reflejar las interacciones existentes entre entidades. Las
relacionespuedenserdetrestipos:
9 Relacionesunoauno.ͲLasentidadesqueintervienenenlarelaciónseasocianunaa
una(Ej.:laentidadHOMBRE,laentidadMUJERyentreelloslarelaciónMATRIMONIO).
9 Relacionesunoamuchos.ͲUnaocurrenciadeuna entidadestáasociadaconmuchas
(n)deotra(Ej.:laentidadEMPERSA,laentidadTRABAJADORyentreelloslarelación
TRABAJARͲEN).
9 Relacionesmuchosamuchos.ͲCadaocurrencia,encualquieradelasdosentidadesde
larelación,puedeestarasociadaconmuchas(n)delaotrayviceversa(Ej.:laentidad
ALUMNO,laentidadEMPRESAyentreelloslarelaciónMATRÍCULA).
REPRESENTACIÓNGRÁFICADEENTIDADESYRELACIONES
Para asimilar fácilmente un diseño de datos cuando se emplea el modelo E/R se utilizan los
siguienteselementosgráficos:
EJEMPLO
1–1. Un hombre está casado con una y sólo
unamujer
1Ͳn. En una empresa pueden trabajar
muchas personas, pero un trabajador sólo
trabajaenunaempresa.
nͲn. Un alumno puede matricularse en
muchasasignaturasyademásesaasignatura
hayotrosmuchosalumnos.
EstaclasificacióndelasrelacionessellamaCardinalidad
10
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
Lasentidadesylasrelacionespuedentener:
ATRIBUTOS
WWW.ECLAP.JCYL.ES
9
9
9
9
WWW.ECLAP.JCYL.ES
Un atributo es un hecho o una unidad de información sobre una entidad que no se puede
descomponer.
Unatributodebeperteneceraunaentidadysóloauna.
Debentenervaloresparalasocurrenciasdelasentidades
Cadaatributodebetenerunsignificadoúnicoyconsistente.
No es necesario especificar los atributos que se obtienen mediante cálculos en el
modeloconceptual
Ejemplo:UnaentidadAlumnotienelosatributos:DNI,Nombre,Sexo,etc…
IDENTIFICADOR
9 Elidentificadordebetomarunoysólounvalorparacadaunadelasocurrenciasdela
entidad.
9 Paraunamismaentidadpuedenhaberdiferentesopciones de definiridentificadores
(Nota:enelmodeloE/Rseeligeunadeestasopcionesparadefinirlaclaveprimaria).
9 Esaconsejablequeseadecortalongitud,deusocomúnyfácilmentememorizable.
Ejemplo:ElidentificadordeunAlumnopodríasersuDNI.
PASOSPARADESARROLLARUNMODELOE/R
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
IDENTIFICARLASPRINCIPALESENTIDADES
Comenzaridentificandolosobjetosdeinterés(a partirdelosrequisitos)y analizarcadauno
paraversisondeinterésonoparaelsistema.
• Considerar algún ejemplo de ocurrencia para comprobar que tiene sentido • pensar en el
concepto que representa, una misma representación puede significar diferentes conceptos
paraanalistasdiferentes
•Nombrar,definirydocumentarlasentidadeseneldiccionariodedatosoeneldocumento
dediseñocorrespondiente.
Ͳ
Diccionariodedatos:Undiccionariodedatoscontienelascaracterísticaslógicasdelos
datosquesevanautilizar.
Ͳ
Documentodediseño:Básicamenterecogeunasíntesisdecreacióndelconceptoque
sedesarrollaosevaadesarrollar.
DETERMINARLASRELACIONESENTREENTIDADES
Lasrelacionessonloshechosdeinterésparaelsistemaqueproporcionanlaconexiónentrelas
ocurrenciasdedosomásentidades.
•ExistentesodePosesión(porejemplounempleadotienehijos)
11
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
•Funcionales(Elprofesorexplicaalosalumnos)
•Sucesos(Elclienterealizapedidos)
Reglas:
•Identificarlasrelacionesydarlesunnombre,documentarlaseneldiccionariodedatos
•Asignarcardinalidadoconectividad
DEFINIRIDENTIFICADORES
Elegircomomínimounidentificadorparacadaentidad.
•Establecerestándaresdenomenclatura,abreviaturas,etc.
•Usocomúnentrelosusuarios
AÑADIRATRIBUTOSALMODELODEDATOS.
Yahemosvistoladefinicióndeatributoanteriormente.
Básicamenteseusanpararepresentarunapropiedaddeinterésenunaentidad.
Porejemplo,unatributodeunAlumnopodríasersunombre.
RELACIONESCOMPLEJAS
RELACIONESDELTIPOM:N(MUCHOSAMUCHOS)
Siexisteunconceptoquepuedesustituirlarelación,tienesentidocomoentidadyaportauna
mejorcomprensiónalmodelo(parausuariosyanalistas)esconvenientedeshacerlasmediante
estaentidadylasrelacionesunoamuchosadecuadas.
12
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
RELACIONESENTRETRESOMÁSENTIDADES
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
Las relaciones entre tres
o más entidades se
reclasificaran mediante
una entidad relacionada
con cada una de ellas, si
existe un concepto que
puedeserrepresentadocomounaentidad,yaportamayorcomprensiónalproblema.
RELACIONESPOTENCIALMENTEREDUNDANTES(PUEDENSERLOONO,DEPENDEDELSIGNIFICADO
DELASRELACIONESYDELASCARDINALIDADES)
ENRESUMEN…
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
RELACIONESRECURSIVASOAUTORRELACIONES
Estasdebensereliminadas
Delmodeloconceptualdedatossabemosquesonlosorientadosaladescripcióndeestructuras
de datos y restricciones de integridad. Están orientados a representar los elementos que
intervieneneneseproblemaysusrelaciones.
ElmásimportanteyutilizadoeselmodeloEntidad/Relaciónquebasasufuncionamiento,como
su propio nombre indica, en localizar las entidades (objetos independientes) de una base de
datosysaberquérelacionessedanentreellas.
13
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
4. ELMODELORELACIONAL
ElModeloRelacionalfuedefinidoen1970porE.F.Codd.EnesteModelo,tantolasEntidades
como la Relación se presentan mediante tablas. Es tal vez el modelo más utilizado para la
creacióndelosSGBD.Analizaremosenprimerlugar,laParteEstáticadelModeloque,como
apuntábamos anteriormente, está constituida por los Objetos y las Restricciones. Entre los
Objetospasamosadefinir:
Relación:En este Modelo elconcepto de Relación noserefierealaasociaciónentre
Entidades,comoocurreenelModeloEntidadͲRelación,sinoqueestárelacionadocon
elconjuntodeocurrenciasvarioselementosestructuradosenformadetablas:
Atributos: Los atributos son las propiedades o características de las Entidades.
Correspondenaladenominaciónocabeceradeunacolumnaocampodeunatabla.
Dominio:ElDominioeselconjuntodedondelosAtributostomansusvalores.Puede
suceder que dos atributos distintos de una misma Relación tomen sus valore del
mismoDominio.
Tupla: La Tupla es una ocurrencia de la Entidad o conjunto de ítems de información
queformanunafiladeunatabla.
Grado:ElGradoesunaRelacióneselnúmerodeAtributosocolumnasqueposee.
Cardinalidad:SedenominaasíalnúmerodeTuplasofilasdeunaRelación.
Clave: Definimos como Clave de una relación a aquel o aquellos Atributos que nos
determinandeformaunívocaymínimaaunaTupladeesaRelación.
EntrelasRestriccionespodemosdiferenciar:
9 Restriccionesinherentes.ElModeloposeedos:
1. NopuedenaparecerdosfilasigualesenunamismaRelación
2. El atributo o Atributos, que es o forma parte de la clave, no puede tomar
valoresnulos(pornulosseinterpretavaloresdesconocidos).
9 Restricciones opcionales. Están formadas por las Dependencias Funcionales,
DependenciasTransitivas,DependenciasMultivaluadas,etc.
ConrespectoalaParteDinámica,diremosqueelModeloRelacionaltrabajaporEspecificación,
esdecir,seespecificaunacondiciónquedebecumplirunaseriedeTuplas(lasquequeremos
localizar). Es por tanto el lenguaje utilizado para la manipulación de datos un lenguaje NoͲ
Procedimental.
14
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
1) Una base de Datos Relacional está formada por un conjunto de datos agrupados en
Relaciones.
2) EstasRelacionessepresentanmediantetablasycontieneinformaciónhomogénea.
3) LosdistintosítemsdeinformaciónconformanTuplasycadaunadeellasseidentifican
deformaúnicamedianteunaClave.
4) Cada Tupla está formada por varios campos o Atributos cuyos valores no se pueden
descomponer.
5) Los atributos se asignan a Dominios, siendo un Dominio un conjunto de valores
posiblesdeunAtributo.
ENRESUMEN…
Una base de datos relacional es un conjunto de una o más tablas estructuradas en
registros(líneas)ycampos(columnas),quesevinculanentresíporuncampoencomún,
enamboscasosposeelasmismascaracterísticascomoporejemploelnombredecampo,
tipoylongitud;aestecampogeneralmenteseledenominaID,identificadoroclave.Aesta
maneradeconstruirbasesdedatosseledenominamodelorelacional.
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
Resumiendotodoloexpuesto,tenemos:
15
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
5. ESTÁNDARESDECONECTIVIDAD
Las2tecnologíasmásimportantesdeconectividadalabasededatossonADOyJDBC.
ADO
Existen varios niveles o interfaces para lograr la comunicación o acceso a la base de datos a
travésdelaaplicación.
Elsiguienteesquemamuestra2delosprincipalesniveles,dentrodeloscualesseencuentra
ADO.
Porlogeneral,lasinterfacesdeobjetosdedatossonmásfácilesdeusarquelasAPIS,aunque
lasAPIsofrecenmásfuncionalidades.ADO(ActiveXDataObjects)eslainterfazdeobjetosde
datosparaOLEDB,yRDO(RemoteDataObjects)eslainterfazparaelobjetoODBC.
ADO encapsula el API OLE DB en un modelo objeto simple que reduce el desarrollo,
mantenimientoycostodelaaplicación.Esmuyfácildeusar,utilizalenguajesdeprogramación
comoVisualBasic,Java,C++,VBScriptyJScript,puedeaccesardatosdesdecualquierrecurso
OLEDByademás,esextensible.EslainterfazutilizadaporMicrosoft.
El modelo ADO, basado en el modelo de objetos, define una jerarquía de objetos
programables que pueden ser usados por desarrolladores de páginas Web para acceder a la
información almacenada en una base de datos. Una jerarquía es un grupo de objetos
relacionadosquetrabajanjuntosparaunmismopropósito.
16
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
ADOpermitediseñarsitioswebquepuedenaccederrepetidamentealamismabasededatos
usandounamismabúsquedauotrasimilar.Sepuedencompartirconexionesyestosignifica
unamenorcargadetrabajoparaelservidordelabasededatos,untiempoderespuestamás
rápidaymásaccesosapáginaconéxito.
ExisteuncomponentellamadoRDS(RemoteDataService)queofreceelambientedeAcceso
UniversalaDatos,yaseadesdeInternetolaWorldWideWeb,creandounmarcodetrabajo
que permite una interacción fácil y eficiente con los datos fuente OLE DB tanto en Intranets
corporativasoenInternet.RDSofrecelaventajadeobtenerporelladodelclienteresultados
dedatos,actualizaciónysoporteparacontrolesADOyofreceelmodelodeprogramaciónOLE
DB/ADOparamanipulardatosdelasaplicacionesdelcliente.
JDBC
JDBCoJavaDataBaseConnectivity,creadoporlaempresaSun,eslaAPIestándardeaccesoa
basesdedatosconJava.SunoptóporcrearunanuevaAPIenlugardeutilizarODBC,porque
esta última presentaba algunos problemas desde ciertas aplicaciones Java. ODBC es una
interfaz escrita en lenguaje C, que al no ser un lenguaje portable, hacía que las aplicaciones
Javatambiénperdiesenlaportabilidad.Además,ODBChadeinstalarsemanualmenteencada
máquina, mientras que los controladores (drivers) JDBC que están escritos en Java son
automáticamente instalables y portables. El nivel de abstracción al que trabaja JDBC es más
altoqueeldeODBCy,deestaforma,sepuedencrearlibreríasdemásaltonivel,
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
ParatrabajarconJDBCesnecesariotenercontroladoresquepermitanaccederalasdistintas
basesdedatos.Sinembargo,ODBCsiguesiendohoyendíalaAPImáspopularparaaccesoa
BasesdeDatos,porloque:Sunsehavistoobligadaadiseñarunpuentequepermiteutilizarla
APIdeJDBCencombinaciónconcontroladoresODBC.
17
Promoción Interna de
Técnico de Soporte Informático
Técnico de Soporte informático
TEMA 19
Las tecnologías que se emplea para la conectividad entre los datos y la aplicación, se ha
convertidoenunfactormuyimportantealahoradedesarrollarunproyectowebquecuente
confuncionalidaddeaccesoadatos.Acontinuaciónsemuestrauncuadrocomparativodelas
dostecnologíasmásimportantesenestesentido:ActiveXDataObjects(ADO)yJavaDataBase
Connectivity(JDBC).
ADO
JDBC
TecnologíaelaboradaporMicrosoft
Tienelaprincipalfunciónderealizarlasolicitudde
losdatosalabasededatos.
Esta solicitud la realizará mediante la tecnología
OLE DB, la cual estará en contacto de manera
directaconlabasededatos.
LatecnologíaOLEDBsóloseemplearácuandoel
DBMS pertenece de igual manera a Microsoft,
comoesSQLServer.
ADO encapsulará a ciertos objetos de OLE DB,
para que de ésta manera se realice la conexión
conlabasededatos.
TecnologíahechaporSunMicrosistems.
Tiene la función de ser un gestor para la
aplicaciónconrespectoalabasededatos.
Por primera vez el JDBC fue empleado, tomando
comointermediarioentreélylabasededatosal
ODBC.
Como modelo cliente/servidor, el JDBC se
encontrará trabajando en el equipo cliente,
conectándosedirectamenteconlabasededatos.
Como modelo de tres capas, el JDBC se
encontraráenunacapaintermedia,dondetodos
losusuariospasaránporélparapoderaccesarala
basededatos.
Existen módulos JDBC que son propios de los
fabricantes de DBMS, que son utilizados para el
rápido acceso a la información de las bases de
datosdelosmismos.
JDBC no se encontrará ligado a trabajar con
algunatecnologíaenespecífica,yaqueseelaboró
conlafinalidaddeserportable.
En aplicaciones Web, JDBC se encontrará
laborando en conjunto con código HTML,
medianteelmecanismodelJavascript.
Pararealizarlagestióndeaccesoabasesdedatos
heterogéneasporpartedeADO,ésteharáusode
ciertos objetos de la tecnología RDO (Remote
DataObjects).
RDO dependerá de los ODBC’s para poder
efectuarlaconexiónalabasededatosyconesto
elaccesoalainformación.
ADOpodráencontrarsetrabajandoenunapágina
web en conjunto con código HTML; esto será
posible mediante un mecanismo de introducción
deinstruccionescomoeselVBscript.
Los objetos que conforman al ADO, no son
compatiblesconotroslenguajes,soloporaquellos
quepertenecenalaempresaMicrosoftcomoson:
VisualC++,VisualBasic,VisualJava,etc.
JDBC se elaboró con la finalidad de poder ser
compatible y portable para poder ser empleado
en aplicaciones y para la conexión con bases de
datos.
WEBDB
Por último, hay que destacar también una tecnología llamada Web DB utilizada por algunos
servidores de bases de datos, con la cual, un usuario puede solicitar la información que
requierayvisualizarlaamododerespuestaenunapáginaWeb,queserácreadayelaborada
porelpropioservidordebasededatos.
El proceso que comprende desde la solicitud a la visualización de la información, puede ser
representadodelasiguientemanera:
18
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
Navegador (browser): es la aplicación mediante la cual, se tiene acceso libre a los
servicios de Internet, y el medio que permite al usuario introducir la solicitud para
visualizar la información, empleando el URL para especificar detalladamente el
procesoquesedeseaejecutar.
InterfazdeWeb:proporcionaunainterfazparaqueunprogramaqueseejecuteenel
servidorgenerecomosalidaelcódigoHTML,enlugardeleersimplementeunarchivo
estático de texto. Con ésta interfaz se podrán crear las páginas Web de forma
dinámica y/o utilizar la implementación de formularios HTML. Esta interfaz permite
tecnologías como los CGI’s o aquellas otras que son propias del servidor de base de
datos.
AgentePL/SQL:eseleslabónfinaldelprocesoentreunnavegadorclienteyelservidor
debasededatos.Elagenteejecutaráunallamadaaunprocedimientoalmacenadoen
el servidor. Este procedimiento creará una página HTML dinámica como salida, y el
agente devolverá dicha salida al cliente a través del navegador empleando de igual
maneralaInterfazdeWeb.
BasedeDatos(BD).Enellasemantendráalmacenadalainformación;seencargaráde
proporcionar los datos que le hayan solicitado previamente, al momento de la
ejecucióndeunprocedimientoporpartedelAgentePL/SQL.
WWW.ECLAP.JCYL.ES
WWW.ECLAP.JCYL.ES
Enesteesquemaanteriordestacan:
Estaherramientaesunamuybuenaopciónparapequeñasomedianasempresas,enlascuales
llegaría a resultar muy costosa la implementación de otro tipo de tecnologías más caras y
avanzadas.
WWW.ECLAP.JCYL.ES
ENRESUMEN…
WWW.ECLAP.JCYL.ES
Los estándares de conectividad a Bases de Datos son en general, el conjunto de
aplicaciones,órdenesyreglasqueseutilizanparaconectarunaBasedeDatosalsistema
desdeelcualnecesitamosobtenerundato.Losmásconocidosyusadossondos:ADO,de
MicrosoftyJDBCdeSunMicrosistem
19
Promoción Interna de
Técnico de Soporte Informático
TEMA 19
Técnico de Soporte informático
BIBLIOGRAFÍA
Ͳ
Ͳ
Ͳ
Ͳ
ABADDOMINGOA.RedesdeÁreaLocal.McGrawHill
PASTORSÁNCHEZJ.A.CursodeSistemasdeGestiónDocumental.EnclaveFormación
NEVADOCABELLOM.V.IntroducciónalasBasesdeDatosRelacionales.VisiónLibros
ROBP,CORONELC.SistemasdeBasesdeDatos.CienciasIngenierías.
20