Professional Documents
Culture Documents
BASES DE DATOS
TABLA DE CONTENIDO
2013
La importancia e impacto de las bases de datos es incuestionable a medida que las orga-
nizaciones ya sean gubernamentales, instituciones educativas, universidades, entidades
comerciales, entre otras, crean y mantienen bases de datos en la cuales estn conteni-
das todo tipo de informacin, desde documentos, tablas estadsticas, datos financieros,
objetos multimediales y datos de diferente naturaleza. Por tal motivo, las tecnologas en
base de datos, incluyendo mtodos de arquitectura y acceso, se estn desarrollando r-
pidamente para mantenerse al da con esta demanda de mecanismos de administracin
de la informacin.
Unidad I: Introduccin a las bases de datos, en la cual se exponen los conceptos bsi-
cos manejados en las bases de datos, se incluye un poco de historia sobre los sistemas
de base de datos, donde se aplican, los tipos de almacenamiento de base de datos, los
tipos segn su uso, las ventajas de los SGBD y las bases de datos en el contexto de la
educacin.
Unidad II: Modelo Entidad Relacin, es una de las partes principales a tratar dentro
del mdulo ya que en ella se efecta el anlisis de cmo se disea una base de datos,
los temas a tratar abarcan los conceptos bsicos de entidades, relaciones, atributos; las
correspondencia de cardinalidades, restricciones de participaciones, claves, diagramas
del modelo entidad relacin y diseo del esquema del modelo Entidad Relacin.
Unidad III: Modelo Relacional, el cual es un marco formal de los modelos de datos, en
este captulo se trata la estructura de las bases de datos relacionales, esquema de la
bases de datos relacional, uso de las claves, lenguaje de consulta y transformacin del
modelo E-R al modelo relacional.
Unidad IV: Esta ltima unidad, es dedicada al manejo del lenguaje SQL, en el cual se
presentan las caractersticas generales del SQL, su estructura bsica, utilizacin de las
clausulas select, from y where y modificacin de la base de datos utilizando las expresio-
nes Insert, Delete, Update.
Al finalizar la ltima unidad, est la seccin de anexos en la cual se encuentra los manua-
les de usuarios de las herramientas utilizadas para la diagramacin del modelo entidad
relacin y el modelo relacional, direcciones electrnicas correspondientes para que el
estudiante pueda descargar estas herramientas freeware, tambin se dispone de una
serie de link para profundizar los temas tratados en el mdulo.
METACOGNITIVA
Conoce y utiliza herramientas informticas para el diseo e implantacin de una base de
datos en el mbito escolar.
RELACIONAL
Aplica los conocimientos obtenidos a situaciones laborales concretas utilizando los pro-
cedimientos adecuados, para solucionar problemas de manera autnoma y transferir las
situaciones adquiridas a situaciones novedosas.
TECNOLGICA
Utiliza los principios bsicos de los sistemas de base de datos, para utilizarlos en el con-
texto educativo.
ARGUMENTATIVA
Argumenta y justifica el porqu de los modelos a utilizar en la solucin de problemas prc-
ticos especficos de las diferentes reas de actividad de su profesin utilizando lenguaje
y simbologa apropiados para las representaciones que requiera.
Tambin cabe destacar, que la informacin consignada en el mdulo puede ser ampliada
para que usted enriquezca los conceptos que se desarrollan a lo largo del mdulo, por lo
tanto se le recomienda que consulten las citas referenciadas en la bibliografa.
Considere el mdulo como una herramienta que le permitir fortalecer sus conoci-
mientos sobre las Bases de Datos.
Lea y estudie cada uno de los temas con anticipacin a la sesin con el tutor, para
que llegue con inquietudes y se genere la discusin a partir de estas.
En el desarrollo de las unidades del mdulo se ejemplificar la base de datos del ob-
servador del estudiante, este ejemplo de base de datos se retomar en un mdulo
de semestres prximos.
Las conceptualizaciones del mdulo estn fundamentadas en los aportes tericos que
se han compilado por la autora en la fundamentacin del diseo de base de datos, como
lo son:
Silberschatz, Korth y Sudarshan (2007), con temas ms actuales sobre los fundamentos
de bases de datos, y la ejemplificacin de los modelos Entidad relacin, relacional y el
lenguaje estructurado de consulta.
Gonzlez (2011), en su libro Gestin de base de datos, en el cual destaca los aspectos
ms importantes que encierran los sistemas gestores de base de datos relacionales.
PRESENTACIN
PROBLEMA
COMPETENCIAS ESPECFICAS
cin.
base de datos.
13
ACTIVIDAD EN GRUPO
Reunidos en sus grupos confronte sus saberes previos con los de sus compaeros.
Socializar en el grupo los diferentes temas tratados en la Unidad I.
Desarrollar la actividad propuesta al final de la unidad.
S egn diccionario de la real academia, los datos son la Informacin dispuesta de ma-
nera adecuada para su tratamiento por un ordenador. A nivel de la terminologa de
base datos, un dato es una representacin simblica (numrica, alfabtica, algortmica,
entre otros) de un atributo o caracterstica de una entidad. Estos se pueden representar
bien mediante variables o mediante constates.
Los tipos de datos se utilizan generalmente para declarar variables y son necesarios
para que el intrprete o compilador conozca de antemano que tipo de informacin va a
contener una variable.
Existen cinco tipos de datos atmicos, los cuales son: carcter, entero, coma flotante,
coma flotante doble precisin y sin valor (char, int, float, double y void, respectivamente).
El tamao y el rango de estos tipos de datos varan con cada tipo de procesador.
BINARY 1 byte Para consultas sobre tabla adjunta de productos de bases de datos
que definen un tipo de datos Binario.
DATETIME 8 bytes Un valor de fecha u hora entre los aos 100 y 9999.
BINARY VARBINARY
BIT BOOLEAN
LOGICAL
LOGICAL1
YESNO
BYTE INTEGER1
COUNTER AUTOINCREMENT
CURRENCY MONEY
DATETIME DATE
TIME
TIMESTAMP
SINGLE FLOAT4
IEEESINGLE
REAL
DOUBLE FLOAT
FLOAT8
IEEEDOUBLE
NUMBER
NUMERIC
SHORT INTEGER2
SMALLINT
LONG INT
INTEGER
INTEGER4
LONGBINARY GENERAL
OLEOBJECT
LONGTEXT LONGCHAR
MEMO
NOTE
TEXT ALPHANUMERIC
CHAR - CHARACTER
STRING - VARCHAR
Las bases de datos han evolucionado contantemente y es difcil dar una definicin, esto
se debe al amplio mbito de aplicaciones y los avances en la tecnologa.
Una definicin adecuada puede ser :
Coleccin o depsito de datos, donde los datos estn lgicamente relacionados
entre s, tienen una definicin y descripcin comunes y estn estructurados de
una forma particular. Una base de datos es tambin un modelo del mundo real y,
como tal, debe poder servir para toda una gama de usos y aplicaciones. Citada
en Gonzlez (2011).
Otra definicin es la dada por Date (2001), el cual enuncia que una base de datos es una
coleccin de datos relacionados que representa un cierto modelo o abstraccin del mun-
do real, y a su vez esta es diseada, construida y llenada con datos para un propsito
especfico.
Al mismo tiempo las bases de datos tienen propiedades especficas las cuales son:
Representa algn aspecto del mundo real, del cual provienen los datos.
Es un conjunto de datos lgicamente coherente, con significado implcito.
Toda base de datos se disea, crea y se carga con datos con un objetivo determinado
y est dirigida a un grupo de usuarios interesados en el contenido de la base de datos.
1.3.2 Qu es el DBMS?
El DBMS (Data Base Management Sywstem) o SGBS (Sistema Gestor de Bases de da-
tos), consiste en una coleccin de datos interrelacionados y un conjunto de programas
para acceder a dichos datos. El objetivo del DBMS es crear un ambiente en que sea po-
sible almacenar y recuperar informacin en forma eficiente y conveniente.
La gestin de los datos implica tanto la definicin de estructuras para almacenar la infor-
macin como la provisin de los mecanismos para la manipulacin de la informacin, al
mismo tiempo deben proporcionar la fiabilidad de esta a pesar de las cadas del sistema
o los intentos de acceso sin autorizacin. Ahora bien, si los datos van a ser compartidos
entre varios usuarios, el sistema debe evitar los resultados anmalos.
Podemos apreciar cmo es el funcionamiento de un DBMS en la figura 1.
19
figura 1.
DDL, Data Definition Language: define los elementos de los datos en la Base de da-
tos. Permite crear tablas, modificarlas y eliminarlas.
DML, Data Manipulation Languaje: manipula los datos para aplicaciones. Permite dar
de alta filas, modificar contenido de columnas y borrar filas y columnas.
DCL, Data Control Language: lenguaje de control de datos. Permite administrar la
seguridad de quien puede leer, escribir o borrar datos en una tabla; quin puede crear
o eliminar tablas, etc.
El esquema de una base de datos (en ingls, Database Schema) describe la estructura
de una Base de datos, en un lenguaje formal soportado por un Sistema administrador de
Base de datos (DBMS). En una Base de datos Relacional, el Esquema define sus tablas,
sus campos en cada tabla y las relaciones entre cada campo y cada tabla.
1.3.4 Independencia de los datos las nminas, como por ejemplo el aumen-
Es la libertad que puede existir para modifi- to de salario. Consista en leer una cinta o
car algunos de los esquemas sin que exista ms y pasar los datos a otra, y tambin se
la necesidad de reescribir los programas de podan pasar desde las tarjetas perforadas.
aplicacin. Existen bsicamente dos tipos
Simulando un sistema de Backup.
de independencia:
1.5 APLICACIONES DE LOS SIS- Por tanto, podemos afirmar que los siste-
mas de bases de datos forman una parte
TEMAS DE BASES DE DATOS.
importante en casi todas las empresas ac-
tuales.
Las bases de datos son ampliamente usa-
das. Las aplicaciones ms representativas
de bases de datos segn Silberschatz, Kor-
th, Sudarshan (2002) son:
En el Campo de la Educacin podemos utilizar diversas Bases de Datos para buscar in-
formacin. En este apartado hemos reseado tan slo aquellas que son accesibles des-
de Internet y las presentamos clasificadas en dos grupos: las que proporcionan informa-
cin directa sobre Sistemas Educativos y las que nos proporcionan informacin menos
especfica aunque valiosa para los docentes e investigadores en este campo.
ten que los accesos a los registros de un Base de datos documentales: Se en-
archivo basado en campos alternativos, carga de almacenar documentos de di-
sean ms eficientes que los que han sido versas naturalezas (predominantemen-
utilizados para la organizacin primaria de te textos, pero tambin planos, hojas
archivos. de clculos, fotografas, documentos
digitalizados mediante escner, etc.).
Base de datos geogrficas o sistemas
1.8 VENTAJAS DE UN GESTOR de informacin geogrfica (SIG): alma-
DE BASE DE DATOS. cena datos vectoriales sobre puntos
geogrficos, superficies regulares o
Dentro de las ventajas que ofrece el SGBD irregulares, volmenes, etc., asocia-
encontramos: dos a valores estadsticos empleando
Datos compartidos actualizados: los sistemas de coordenadas geogrficas
datos estn disponibles para todos los o UTM (propias de los sistemas de po-
usuarios y cuando alguno actualiza, los sicionamiento global o GPS). Este tipo
cambios se ven reflejados inmediata- de base de datos ofrecen informacin
mente. sobre territorios, tales como estads-
Flexibilidad: para nuevas necesidades, ticas, demogrficas, meteorolgica,
los cambios de estructura no afectan ventas de productos o clculos sobre
los datos. terrenos, tales como solapamiento de
Rpida creacin de nuevas aplicacio- superficies, distancias entre puntos,
nes: una vez creada la BD y funcionan- clculo de rutas, etc. 25
do, crear una nueva aplicacin necesita Base de datos OOP (orientada a ob-
menos tiempo. jetos): nuevas bases de datos relacio-
Independencia de los datos: ocultan nales para establecer mecanismos de
detalles de implementacin. almacenamiento de objetos de longitu-
des indeterminadas que sean capaces
1.9 TIPO DE BASE DE DATOS SE- de encapsular mtodos en su interior.
Minera de datos: son bases de datos
GN SU USO.
pensadas para obtener estadsticas y
tendencias de negocios. La finalidad
Las bases de datos estn en continua de estas bases de datos es la detec-
evolucin tecnolgica y lo que antes re- cin de tendencias para agrupar tipos
quera tecnologa separada de las pro- de clientes y utilizar de forma retroali-
pias bases de datos, ahora se integra mentada esta informacin para mejorar
dentro de las presentaciones normales el negocio.
de las bases de datos relacionales de Base de datos transaccionales (OLTP):
mayor auge en el mercado Gonzlez son bases de datos orientadas a bloques
(2011). de transacciones masivas, para clien-
tes tales como entidades bancarias,
A continuacin algunos tipos de base de instituciones burstiles o mayoristas de
datos segn su uso: ventas. Se caracterizan por su alto ren-
dimiento, alta disponibilidad y prepara-
cin contra contingencias catastrficas.
ACTIVIDAD
AUTOEVALUACIN
2. Se utilizan generalmente para declarar variables y son necesarios para que e interprete
o compilador conozca de antemano que tipo de informacin va a contener una variable.
a) Base de datos
b) Datos
c) Tipo de datos
6. Es la libertad que puede existir para modificar algunos de los esquemas sin que exista
la necesidad de reescribir los programas de aplicacin.
a) Esquema de datos
b) Independencia lgica
c) Independencia fsica
7. Se presenta cuando es posible la modificacin del esquema fsico sin afectar a los
esquemas restantes. Acta en los contenidos de la base de datos.
a) Independencia lgica
b) Esquema de datos
c) Independencia fsica
8. Ocurre cuando se modifica el esquema conceptual sin afectar al resto de los esquemas.
Bsicamente se modifica el esquema conceptual cuando cambia las caractersticas de
los datos a almacenar. Acta sobre la estructura de la base de datos.
a) Esquema de base de datos
b) Independencia lgica
c) Independencia fsica
30
PRESENTACIN
PROBLEMA
COMPETENCIAS ESPECFICAS
33
Modelo de datos.
Qu es una entidad, atributo y relacin?
Qu es cardinalidad?
Qu es una clave?
Qu entiendes por modelo entidad relacin?
Reunidos en sus grupos confronte sus saberes previos con los de sus compaeros.
Socializar en el grupo los diferentes temas tratados en la Unidad II.
Desarrollar las actividades propuestas en cada apartado.
proceso complejo que abarca decisiones miento y los mtodos utilizados para tener
a muy distintos niveles. La complejidad se un acceso eficiente a los datos. Por ellos el
controla mejor si se descompone el proble- diseo fsico depende del SMBD concreto y
ma en subproblemas y se resuelve cada del esquema fsico se expresa mediante su
uno de estos subproblemas independiente- lenguaje de definicin de datos.
mente, utilizando tcnicas especficas. As,
el diseo de una base de datos se descom- MODELO DE DATOS
pone en diseo conceptual, diseo lgico
y diseo lgico. Para describir la estructura de una base de
datos es necesario definir el concepto de
A continuacin se describe cada uno de los modelo de datos, el cual es:
diseos: una coleccin de herramientas concep-
Diseo conceptual parte de las especifica- tuales para describir datos, relaciones
ciones de requisitos de usuarios y su resul- entre ellos, semntica asociada a los
tados es el esquema conceptual de la base datos y restricciones de consistencia
de datos. Un modelo conceptual es una (Korth & Silberschatz, p. 6).
descripcin de alto nivel de la estructura
de la base de datos, independientemente Tomando lo dicho por Castao & Piattini
del SMBD que se vaya a utilizar para mani- (2000) Los modelos de datos soportados
pularla. Este modelo es un lenguaje que se por los SGBD no suelen ofrecer, dado su
36 utiliza para describir esquemas conceptua- bajo nivel de abstraccin, los mecanis-
les; tiene por objetivo, describir el conteni- mos suficientes para captar la semntica
do de informacin de la base de datos y no del mundo real, por lo que surgen modelos
las estructuras de almacenamiento que se conceptuales, ms ricos semnticamente,
necesitarn para manejar esta informacin. que facilitan la labor del diseador ayudn-
dole en su comunicacin con el usuario.
Diseo lgico parte del esquema concep- Estos modelos conceptuales se utilizan
tual y da como resultado un esquema l- para representar la realidad a un alto nivel
gico, el cual es una descripcin de las ba- de abstraccin, al mismo tiempo se pueden
ses de datos en trminos de las estructuras construir una descripcin de la realidad f-
de datos que puede procesar un tipo de cil de entender.
SMBD. Este modelo es un lenguaje usado
para especificar esquemas lgicos (modelo En el diseo de base de datos se usan pri-
relacional, modelo de red). El diseo lgico mero los modelos conceptuales para lograr
depende del tipo de SMBD que se vaya a una descripcin de alto nivel de la realidad.
utilizar, no depende del producto en con-
creto.
MODELO ENTIDAD-RELACIN
(E-R)
Diseo fsico parte del esquema lgico y
da como resultado un esquema fsico, es Est basado en una percepcin del mundo
cual es una descripcin de la implemen- real consistente en objetos bsicos llama-
tacin de una base de datos en memoria dos entidades y de relaciones entre obje-
secundaria: las estructuras de almacena- tos. Se desarroll para facilitar el diseo de
Los modelos de datos soportados por los SGBD debido a su bajo nivel de abstraccin,
no suelen ofrecer mecanismos para captar el mundo real, por lo que surgen los modelos
conceptuales, entre los cuales encontramos el modelo entidad - relacin.
El modelo entidad-relacin (E-R) propuesto por Peter Chen en 1970 presenta el modelo
como una vista unificada de datos. Este modelo se centra en la estructura lgica y abs-
tracta de los datos, como representacin del mundo real, independiente de las caracte-
rsticas fsicas.
Originalmente el modelo E-R solo incluan los conceptos de entidad, relacin y atributos,
ms tarde, se aadieron otros conceptos, como los atributos compuestos y las jerarquas
de generalizacin, en lo que se ha denominado modelo entidad relacin extendido.
Hay tres nociones bsicas que emplea el modelo de datos E-R: conjunto de entidades,
conjunto de relaciones y atributos. 37
2.1.1 Entidades
Una Entidad es cualquier tipo de objeto o concepto sobre el que se recoge informacin:
cosa, persona, concepto abstracto o suceso. Una entidad tiene un conjunto de propie-
dades y valores para algn conjunto de propiedades pueden identificar una entidad de
formas unvoca. Por ejemplo, el cdigo 1.102.345.678 que representa a un estudiante
de una institucin educativa. Anlogamente, el cdigo 6B que representa el grado al
que pertenece un estudiante es una entidad que identifica a que grado pertenece ese
estudiante. Una entidad puede ser concreta, como una persona o un libro o puede ser
abstracta, como un prstamo, unas vacaciones, o una anotacin.
Figura 2.1
Dbil: Es una entidad cuya existencia depende de la existencia de otra entidad. Si eli-
mina una ocurrencia del tipo de entidad regular, desaparecen tambin con ella todas las
ocurrencias de la entidad dbil dependiente de la misma. Un tipo de entidad dbil se
representa con dos rectngulos concntricos con su nombre en el interior (ver figura 2.2)
Por ejemplo si se borra un estudiante, con el desaparece las anotaciones registradas, ya
que la existencia de una anotacin de un estudiante pierde sentido si este estudiante no
est en la base de datos.
Figura 2.2
2.1.2 Relaciones
38 Es una correspondencia o asociacin entre dos o ms entidades. Cada relacin tiene un
nombre que describe su funcin. Por ejemplo, se puede definir una relacin que asocie
a un estudiante Mara con la anotacin A-1. Esta relacin especifica que Mara tiene una
anotacin con cdigo A-1. La forma de representar las relaciones es mediante un rombo
en el cual se escribe el nombre de la relacin. En la figura 2.3 se observa la relacin entre
ESTUDIANTE y ANOTACIN.
Figura 2.3
Figura 2.3
Las relaciones se caracterizan por tener un nombre, con el cual identificamos de forma
nica el tipo de relacin y mediante el cual la referenciamos; y grado, que es el nme-
ro de entidades que participan en el tipo de relaciones. Puede ser de grado 2 (binaria)
cuando se asocian dos tipos de entidades, de grado 3 (ternarias) cuando se asocian tres
tipos de entidades o en general de grado n. La relacin mostrada en la figura 2.3 es de
grado 2.
2.1.3 Atributos.
Describen las propiedades que posee cada miembro de un conjunto de entidades. Gr-
ficamente los atributos se representan mediante el texto descriptivo dentro de las en-
tidades o relaciones a las que pertenecen. As el tipo de entidad ESTUDIANTE tiene
como atributos el IDEstudiante, Nombre, FechadeNacimiento, LugarNacimiento, Genero
GradoEscolar, Jornada, DirectordeGrupo, etc.; y los atributos de la entidad ANOTACIN
IdAnotacion, IdEstudiante, Fecha, Observacion, etc.
Cada atributo tiene un conjunto de valores asociados denominados dominio, el cual se
define como los valores posibles que puede tomar un atributo. Puede haber varios atribu-
tos definidos sobre un mismo dominio. Los atributos pueden ser simples o compuestos.
Los atributos simples solo tiene un componente, que no se puede dividir en partes pe-
queas que tengan un significado propio y un atributo compuesto son aquellos con varios
componentes, cada uno con un significado por s mismo. Y grficamente se representan
por medio de una elipse.
39
Figura 2.4
Recuerde que: las lneas son las que unen los atributos con las entidades y las entidades
con las relaciones.
ACTIVIDAD 1
Identifica las posibles entidades de una base de datos de una biblioteca escolar, luego
mira la relaciones que existen entre cada una de las entidades que identificaste y por
ultimo escribe los atributos de esas entidades.
Figura 2.4
2.2.1 Correspondencia de cardina-
lidades Uno a Varios (1 a N): Una entidad en A
se asocia con cualquier nmero de enti-
Las correspondencias de cardinalidades dades en B (ninguna o varios). Una en-
tambin denominada razn de cardinalida- tidad en B, sin embargo, se puede aso-
des, expresa el nmero de entidades a las ciar con cualquier nmero de entidades
que otra entidad puede estar asociada. (ninguna o varias) en A. Figura 2.5
ACTIVIDAD 2
Por tal motivo como lo expresan: Silberschatz, Korth & Sudarshan (2000), los valo-
res de los atributos de una entidad deben ser tales que permitan identificar un-
vocamente a la entidad, esto quiere decir que, no se permite que ningn par de
entidades tengan exactamente los mismos valores de sus atributos.
Por lo que el concepto de clave nos permite hacer estas distinciones. Una clave, permite
identificar un conjunto de atributos suficientes para distinguir las entidades entre s. Las
claves tambin ayudan a identificar a las relaciones y as distinguir las relaciones entre s.
ACTIVIDAD 3
Defina cada una de las claves que identifican cada una de las entidades de la base de
datos de una biblioteca escolar.
Figura 2,8
Figura 2,9
Ahora veamos el siguiente ejemplo, varios escritores se juntan para escribir un libro, Juan
ha escrito dos libros por separado y Pedro ha escrito tres. Juan y Pedro deciden unirse
para escribir un solo libro entre los dos. La relacin se representa de la siguiente forma:
Figura 2,10
En este caso tenemos una relacin de M a N (muchos a muchos), un escritor pudo haber
escrito uno o ms libros y un libro puede estar escrito por uno o ms escritores. En este
caso es una relacin dbil, no directa.
Puede haber relaciones de cardinalidad cero. Este caso lo podemos observar en el si-
guiente ejemplo, una empresa vende palos de golf y decide abrir mercado en Francia
y obtiene una lista de empresarios y directivos de compaas petroleras. Esta empresa
fabricante de palos de golf pretende aadir a sus clientes actuales (clientes que ya han
comparado productos) un grupo de posibles clientes potenciales que an no han compra-
do nada, por tanto, an o han enviado pedidos. Entonces estos son clientes potenciales.
Se representa de la siguiente forma:
45
Figura 2,11
Esta relacin indica que un cliente puede tener cero, uno o ms pedidos.
Figura 2,12
Aunque los conceptos bsicos de E-R pueden modelar la mayora de las caractersticas
de las bases de datos, algunos aspectos de una base de datos pueden ser ms adecua-
damente expresados mediante ciertas extensiones del modelo E-R bsico. En este apar-
tado se discuten las caractersticas E-R extendidas de especializacin, generalizacin,
46 conjuntos de entidades de nivel ms alto y ms bajo, herencia de atributos y agregacin.
2.5.1 Especializacin
Figura 2,13
Se debe tener en cuenta que las entidades se pueden especializar por ms de una carac-
terstica distintiva. Por ejemplo, la caracterstica distintiva entre una entidad empleado es
el trabajo que realiza el empleado. Otra especializacin coexistente podra estar basada 47
en si la persona es un trabajador temporal o fijo, resultado en los conjuntos de entidades
empleado-temporal y empleado-fijo. Cuando se forma ms de una especializacin de un
conjunto de entidades, una entidad en particular puede pertenecer a varias especializa-
ciones. Por ejemplo, una empleada dada puede ser una empleada temporal y secretaria.
En trminos de un diagrama E-R, la especializacin se representa mediante un compo-
nente triangular etiquetado ES. La etiqueta ES representa, por ejemplo, que un cliente
es una persona. La relacin ES se puede llamar tambin relacin superclase-subclase.
Los conjuntos de entidades de nivel ms alto y ms bajo se representan como conjuntos
de entidades regulares, es decir, como rectngulos que contienen el nombre del conjunto
de entidades.
ACTIVIDAD 4
1. Diagrame el ejemplo del prrafo anterior.
2. De la base de datos biblioteca escolar determine una entidad y describa que espe-
cializacin tiene, luego grafquela.
2.5.2 Generalizacin
48
Figura 2,14
ACTIVIDAD 5
2.5.3 Agregacin
Una limitacin del modelo E-R es que no resulta posible expresar relaciones entre rela-
ciones. Para ilustrar la necesidad de tales construcciones tomemos como ejemplo el si-
guiente enunciado, Queremos gestionar partidos de un deporte. Cada partido tiene lugar
entre dos equipos (el que juega en casa y el que juega fuera) y tiene un resultado.
49
Figura 2,15
Si es necesario incluir las empresas que publicitan sus productos en un partido, sera
necesario introducir un tipo de entidad Empresas y un tipo de relacin Anuncia. Anuncia
debera relacionar Empresas con Partidos, pero no existe esta entidad. La posibilidad,
es crear una nueva entidad ternaria entre Equipos y Empresas, pero esto dara lugar a
redundancia en los atributos de Partido. Esto se soluciona realizando una agregacin
denominada Partidos, que se tratara como un tipo de entidad y que puede relacionarse
con Empresas. Ver Figura 2,16.
Figura 2,16
50 ACTIVIDAD 6
En la figura 2,17 se resume el conjunto de smbolos que usan para el diseo de los dia-
gramas del modelo E-R. Cabe aadir que no hay un estndar universal para la diagra-
macin del modelo E-R, en la figura 2,17, se muestra los smbolos utilizados en el modelo
E-R.
51
Figura 2,17
Tomada del libro Fundamentos de base de datos, cuarta edicin.
Para las restricciones de cardinalidad se pueden indicar de varias formas, ver figura 2,18.
Las etiquetas * y 1 en los arcos que salen de las relaciones se usan a menudo para deto-
nar relaciones varios a varios, uno a uno y varios a uno. En otra notacin alternativa de la
figura los conjuntos de relaciones se representan por lneas entre conjuntos de entidades
sin rombos; solo se pueden modelar de formas relaciones binarias. Las restricciones de
cardinalidad en esta notacin se muestran por la notacin pata de gallo, como se puede
observar en la figura.
Figura 2,18
que se encuentra. A partir de unas especi- Una vez identificadas todas las relaciones,
ficaciones de usuario es posible que no se hay que determinar la cardinalidad mnima
pueda deducir un conjunto nico de entida- y mxima con la que participa cada enti-
des, pero despus de varias iteraciones del dad en cada una de ellas. De este modo,
proceso de anlisis, se llegar a obtener un el esquema representa de un modo ms
conjunto de entidades que sean adecuadas explcito la semntica de las relaciones.
para el sistema que se ha de modelar. La cardinalidad es un tipo de restriccin
Conforme se van identificando las entida- que se utiliza para comprobar y mantener
des, se les dan nombres que tengan un sig- la calidad de los datos. Estas restricciones
nificado. Los nombres de las entidades y son aserciones sobre las entidades que se
sus descripciones se anotan en el dicciona- pueden aplicar cuando se actualiza la base
rio de datos. Cuando sea posible, se debe de datos para determinar si las actualiza-
anotar tambin el nmero aproximado de ciones violan o no las reglas establecidas
ocurrencias de cada entidad. Si una enti- sobre la semntica de los datos.
dad se conoce por varios nombres, stos
se deben anotar en el diccionario de datos Conforme se van identificando las relacio-
como alias o sinnimos. nes, se les van asignando nombres que
tengan significado para el usuario. En el
2.6.2.2 Identificar relaciones diccionario de datos se anotan los nombres
de las relaciones, su descripcin y las car-
Una vez definidas las entidades, se de- dinalidades con las que participan las enti-
54 ben definir las relaciones existentes entre dades en ellas.
ellas. Del mismo modo que para identificar
las entidades se buscaban nombres en las
especificaciones de requisitos, para iden- 2.6.2.3 Identificar los atributos y
tificar las relaciones se suelen buscar las asociarlos a las entidades
expresiones verbales (por ejemplo: Estu-
diante tiene docente director de grupo, do- Al igual que con las entidades, se buscan
cente realiza anotaciones, estudiante tiene nombres en las especificaciones de re-
anotaciones). Si las especificaciones de re- quisitos. Son atributos los nombres que
quisitos reflejan estas relaciones es porque identifican propiedades, cualidades, identi-
son importantes para el modelo que se est ficadores o caractersticas de entidades o
desarrollando y, por lo tanto, se deben re- relaciones, lo ms sencillo es preguntarse,
flejar en el esquema conceptual. para cada entidad y cada relacin, qu in-
formacin se quiere saber de...?.
Es muy importante repasar las especifi-
caciones para comprobar que todas las
relaciones, explcitas o implcitas, se han Al identificar los atributos, hay que tener
encontrado. Si se tienen pocas entidades, en cuenta si son simples o compuestos.
se puede comprobar por parejas si hay al- Por ejemplo, el atributo direccin puede
guna relacin entre ellas. De todos modos, ser simple, teniendo la direccin completa
las relaciones que no se identifican ahora como un solo valor: `La Selva calle 7, Sin-
se suelen encontrar cuando se valida el celejo; o puede ser un atributo compuesto,
esquema con las transacciones que debe formado por la calle (`Nario), el nmero
soportar. (`7) y ciudad (`Sincelejo). El escoger entre
2. Identificar de relaciones
Aqu identificamos las relaciones existentes entre las entidades previamente identifica-
das, las relaciones para la situacin planteada son:
Los dominios corresponden al conjunto de valores que pueden tomar cada atributo.
Los identificadores deben identificar de manera nica un objeto dentro del conjunto per-
teneciente a la entidad o a la relacin.
Entidad Identificador
Estudiante IdEstudainte 59
DatosFamiliares IdDatosFlia
Acudiente IdAcudiente
InformacinAcadmica IdEstudiante
SeguridadSocial IdSeguridadSocial
Anotacin IdAnotacion
DocenteDirectorGrupo IdDocente
Para realizar el diagrama E-R del ejemplo observador del alumno, nos ayudaremos con la
aplicacin Dia, la cual es una aplicacin informtica de propsito general para la creacin
de diagramas, desarrollada como parte del proyecto GNOME. Est concebido de forma
modular, con diferentes paquetes de formas para diferentes necesidades.
Dia est diseado como un sustituto de la aplicacin comercial Visio de Microsoft. Se pue-
de utilizar para dibujar diferentes tipos de diagramas. Actualmente se incluyen diagramas
entidad-relacin, diagramas UML, diagramas de flujo, diagramas de redes, diagramas de
circuitos elctricos, etc. Nuevas formas pueden ser fcilmente agregadas, dibujndolas
con un subconjunto de SVG e incluyndolas en un archivo XML. En el anexo A, encuen-
tras manual de usuario de la aplicacin y link de descarga.
En la figura 2,19 se muestra la representacin grfica del modelo conceptual del obser-
vador del estudiante, expresado en trminos de los conceptos E-R. El diagrama incluye
las entidades, atributos, relaciones.
60
Figura 2,19
AUTOEVALUACIN
1. Explique las diferencias entre los trminos clave primaria, clave candidata y supercla-
ve.
2. Cul de estas relaciones es de cardinalidad 1 a N?
a.
b.
c.
a.
61
b.
c.
4. Tenemos una entidad llamada perifricos y otra entidad llamada tipos. Dentro de los
perifricos tenemos impresora, escner, disco duro y modem. Dentro de los tipos tene-
mos entrada y salida. Dibuja el diagrama E-R que permita vincular perifricos con tipos.
5. Utiliza la metodologa de diseo conceptual del modelo E-R y disea una base de da-
tos de la biblioteca escolar.
6. Construir un diagrama E-R para la oficina de registros de una universidad. La oficina
mantiene datos sobre cada clase, incluyendo el profesor, la matrcula y la hora y lugar de
las clases. Para cada clase-estudiante se registra una calificacin.
7. Un restaurante posee una serie de mesas en las que se sientan clientes y que a
su vez son atendidas por camareros. Los camareros van tomando nota de los distintos
platos que piden los clientes que son preparados por los cocineros. modelar el sistema
de informacin para que se puedan emitir facturas de la forma ms detallada posible.
Considerar que habrn clientes de los cuales conozcamos sus preferencias (es decir
que tendrn un IdCliente, y otros que quieran permanecer annimos en el restaurante.
8. Una oficina de registro de una universidad mantiene datos acerca de las siguientes
entidades: (a) asignaturas, incluyendo el nmero, ttulo, programa, y prerrequisitos; (b)
ofertas de asignaturas, incluyendo nmero de asignatura, ao, semestre, nmero de sec-
cin, profesor(es), horarios y aulas; (c) estudiantes, incluyendo IdEstudiante, nombre y
programa; y (d) profesores, incluyendo nmero de identificacin, nombre, departamento
y ttulo. Adems, la matrcula de los estudiantes en asignaturas y las notas concedidas a
estudiantes en cada asignatura en la que estn matriculados se deben modelar adecua-
damente. Constryase un diagrama E-R para la oficina de registro. Documntense todas
las decisiones que se hagan acerca de restricciones de correspondencia.
62
Modelo Relacional
Modelo Relacional
PRESENTACIN
PROBLEMA
COMPETENCIAS ESPECFICAS
65
ACTIVIDAD EN GRUPO
Reunidos en sus grupos confronte sus saberes previos con los de sus compaeros.
Socializar en el grupo los diferentes temas tratados en la Unidad III.
Desarrollar las actividades propuestas al final de la unidad.
lgica. Pero detrs de esa simple estruc- Dominio: es un conjunto de valores atmi-
tura hay un fundamento terico importante cos. Por atmico queremos decir que cada
del que carecen los SMBD de la primera valor del dominio es indivisible en lo que se
generacin, lo que constituye otro punto a refiere al modelo relacional. Un mtodo co-
su favor. mn de especificacin de los dominios con-
siste en especificar un tipo de datos al cual
pertenecen los valores que constituyen el
En los ltimos aos, se han propuesto algu- dominio. Es muy especificar un nombre
nas extensiones al modelo relacional para para el dominio que ayude a interpretar sus
capturar mejor el significado de los datos, valores. Estos son algunos ejemplos de do-
para disponer de los conceptos de la orien- minio.
tacin a objetos y para disponer de capaci-
dad deductiva. NumeroSeguridadSocial: es el conjun-
to de nmeros del seguro social vlidos
formados por nueve dgitos.
El modelo relacional, como todo modelo de NombreApellido: es el conjunto de nom-
datos, tiene que ver con tres aspectos de bres y apellidos de personas.
los datos: Estructura de datos, integridad Telfonos: Es el conjunto de nmeros
de datos, manejo de datos. telefnicos de siete dgitos clidos den-
tro de un rea especfica.
FechaNacimiento: conjunto de fechas
3.1 ESTRUCTURA DE LAS BASES de nacimientos de personas.
68 DE DATOS RELACIONALES
datos y un formato. Tambin puede incluirse informacin adicional para interpretar los
valores de un dominio; por ejemplo, un dominio numrico como Peso, deber especificar
las unidades de medicin (libra o kilogramos).
Es importante sealar que es usual dar el mismo nombre al atributo y al dominio subya-
cente. En el caso de que sean varios los atributos de una misma tabla definidos sobre el
mismo dominio, habr que darles nombres distintos, ya que en una tabla no puede haber
dos atributos con el mismo nombre.
Figura 3,0
Tener en cuenta que, es posible que varios atributos tengan el mismo dominio. Los atri-
butos indican diferentes papeles.
Hay ciertas caractersticas a tener en cuenta en las relaciones de una tabla. A continua-
cin se muestran algunas de ellas.
Orden de las tuplas en una relacin: los elementos no estn ordenados, por tanto, las
70 tuplas de una relacin no tienen un orden especfico.
El ordenamiento de las tuplas no forma parte de la definicin de una relacin, porque la
relacin interna representa los hechos a nivel lgico o abstracto.
Orden de los valores dentro de una tupla: una n-tupla es una lista de n-valores, as que el
orden de los valores de una tupla es importante. No obstante, en un nivel lgico, el orden
de los atributos y de sus valores en realidad no es importante en tanto se mantenga la
correspondencia entre atributos y valores.
Valores en las tuplas: cada valor en una tupla es un valor atmico; esto es, no es divisible
en componentes en lo que respecta al modelo relacional.
Para representar el esquema de una base de datos relacional se debe dar el nombre de
sus relaciones, los atributos de estas, los dominios sobre los que se definen estos atribu-
tos, las claves primarias.
El esquema de la base de datos del observador del estudiante es el siguiente:
71
En el esquema anterior, los nombres de las relaciones aparecen seguidos de los nom-
bres de los atributos. Las claves primarias son los atributos subrayados.
3.3 Claves
de entidades dbiles incluyen: los atributos del conjunto de entidades dbiles y la clave
primaria del conjunto de entidades fuertes del que depende el conjunto de entidades d-
biles.
Conjunto de relaciones: la unin de las claves primarias de los conjuntos de entidades
relacionadas de los conjuntos de entidades relacionadas se transforma en una supercla-
ve de la relacin. Si la relacin es de varios a varios, esta superclave es tambin la clave
primaria.
A continuacin se presentan los pasos a tener en cuenta para convertir el modelo E-R al
esquema de base de datos relacional correspondiente.
Paso 1: por cada tipo normal de entidades E del esquema E-R, se crea una relacin
R que contenga los atributos simples de E. Se elige uno de los atributos clave de E
como clave primaria de R. Para el ejemplo del Observador del estudiante se crean
las relaciones: ESTUDIANTE, FAMILIAR, INFORMACIONACADEMICA, SEGURI-
DADSOCIAL, DOCDIRGRUPO, ANOTACION Y DETALLE.
74
Figura 3,2
ACTIVIDAD
76
AUTOEVALUACIN
1. Disee una base de datos relacional para la oficina de registro de una universi-
dad. La oficina conserva datos sobre cada curso, incluyendo el profesor, el nme-
ro de estudiantes matriculados y la hora y el lugar de las clases. Por cada pareja
estudiante-curso se guarda una calificacin.
77
3. Disee un modelo relacional para una base de datos para una pequea empre-
sa debe contener informacin acerca de clientes, artculos y pedidos. Hasta el
momento se registran los siguientes datos en documentos varios:
Para cada cliente: Nmero de cliente (nico), Direcciones de envo (varias
por cliente), Saldo, Lmite de crdito (depende del cliente, pero en ningn caso
debe superar los 3.000.000 de pesos), Descuento.
Para cada artculo: Nmero de artculo (nico), Fbricas que lo distribuyen,
Existencias de ese artculo en cada fbrica, Descripcin del artculo.
Para cada pedido: Cada pedido tiene una cabecera y el cuerpo del pedido. La
cabecera est formada por el nmero de cliente, direccin de envo y fecha del
pedido. El cuerpo del pedido son varias lneas, en cada lnea se especifican el
nmero del artculo pedido y la cantidad. Adems, se ha determinado que se
debe almacenar la informacin de las fbricas. Sin embargo, dado el uso de
distribuidores, se usar: Nmero de la fbrica (nico) y Telfono de contacto.
Y se desean ver cuntos artculos (en total) provee la fbrica. Tambin por
informacin estratgica, se podra incluir informacin de fbricas alternativas
respecto de las que ya fabrican artculos para esta empresa.
Nota: Una direccin se entender como N, Calle, Comuna y Ciudad. Una fecha
incluye hora.
78
Lenguaje Estructurado
de Consulta
Lenguaje Estructurado de Consulta
PRESENTACIN
Usando SQL es posible definir la estructura de los datos, modificar los datos de
la base de datos y especificar las restricciones de seguridad.
PROBLEMA
COMPETENCIAS ESPECFICAS
81
Una vez leda la unidad, confronte sus saberes previos con lo aprendido en la unidad.
Analice detenidamente los temas tratados en la unidad y elabore un anlisis general
82 sobre esta.
Lea detenidamente el manual de usuario de la aplicacin MySql Workbench e instale el pro-
grama, ya que en este se realizaran las actividades propuestas de esta unidad.
ACTIVIDAD EN GRUPO
Reunidos en sus grupos confronten sus saberes previos con los de sus compaeros.
Socializar en el grupo los diferentes temas tratados en la Unidad IV.
Desarrollar las actividades propuestas en la unidad.
Existen dos tipos de comandos SQL: los DLL que permiten crear y definir nuevas bases
de datos, campos e ndices y los DML que permiten generar consultas para ordenar, filtrar
y extraer datos de la base de datos.
Comandos DLL
Comando Descripcin
CREATE Utilizado para crear nuevas tablas, campos e ndices
DROP Empleado para eliminar tablas e ndices
Utilizado para modificar las tablas agregando campos o cambiando la definicin de
ALTER
los campos.
Comandos DML
Comando Descripcin
Utilizado para consultar registros de la base de datos que satisfagan un criterio
SELECT
determinado.
Utilizado para insertar o adicionar datos en la base de datos en una nica opera-
INSERT
cin
UPDATE Utilizado para modificar los valores de los campos y registros especificados.
DELETE Utilizado para eliminar registros de una tabla de una base de datos.
Clausulas: son condiciones de modificacin utilizadas para definir los datos que desea seleccionar
o manipular.
Clausula Descripcin
FROM Utilizada para especificar la tabla de la cual se van a seleccionar los registros
Utilizada para especificar las condiciones que deben reunir los registros que se van
WHERE
a seleccionar
GROUP BY Utilizada para separar los registros seleccionados en un grupo especifico
HAVING Utilizada para expresar la condicin que debe satisfacer cada grupo
Utilizada para ordenar los registros seleccionados de acuerdo con un orden
ORDER BY
especifico.
OPERADORES LGICOS
Operador Uso
Es el Y lgico. Evala dos condiciones y devuelve un valor de verdad slo si am-
AND
bas son ciertas.
Es el O lgico. Evala dos condiciones y devuelve un valor de verdad si alguna de
OR
las dos es cierta.
NOT Negacin lgica. Devuelve el valor contrario de la expresin.
OPERADORES DE COMPARACIN
Operador Uso
< Menor que
> Mayor que
85
<> Distinto de
<= Menor igual que
>= Mayor igual que
= Igual que
BETWEEN Utilizado para especificar un intervalo de valores.
LIKE Utilizado en la comparacin de un modelo
IN Utilizado para especificar registros de una base de datos
Figura 4.0
Miremos el siguiente ejemplo, obtener los nombre de las instituciones de donde proceden 87
los estudiantes, la consulta se realiza de la siguiente forma:
select NomColeProce
from INFOACADEMICA
Figura 4.1
En esta consulta se pueden generar datos duplicados ya que varios estudiantes pueden
proceder de la misma institucin educativa, si deseamos que no halla duplicados utiliza-
mos la palabra distinct despus del select, es decir:
88
Figura 4.2
Si queremos consultar todos los datos de una tabla utilizamos el smbolo asterisco *,
como se expresa a continuacin:
Select *
from DocenteDirGrupo
Figura 4.3
Se utiliza para seleccionar aquellos registros que cumplen una o ms condiciones. Ob-
servemos el siguiente ejemplo: obtener todos los estudiantes que pertenezcan al grado
6A, la consulta se escribe de la siguiente forma:
select GradoGrupo
from ESTUDIANTE
where GradoGrupo = 6A
Figura 4.4
Ahora observemos el siguiente ejemplo en el cual se utilizan los operadores lgicos y
operadores de comparacin: obtener todos los estudiantes que pertenezcan al grado 6
90 y tengan ms de 12 aos de edad
select GradoGrupo
from ESTUDIANTE
where GradoGrupo = 6A and Edad > 12
Figura 4.4
91
Figura 4.5
ACTIVIDAD
Considerando el ejemplo del observador del estudiante realice las siguientes consultas y
escriba las clausulas SQL:
En el apartado anterior se estudi como realizar consultas, ahora se estudiara cmo aa-
dir, eliminar y modificar informacin utilizando SQL, este tipo de consultas son llamadas
de accin, porque no devuelven ningn registro.
4.3.1 Borrado
Crea una consulta de elimina registros de una o ms de las tablas listadas en las clausula
from que satisfagan la clusula where. Las solicitudes de borrado se expresan casi igual
que las consultas. Solo se pueden borrar tuplas completas y no se puede borrar solo va-
lores de atributos concretos. La sintaxis utilizada es la siguiente:
delete from r
where P;
Donde P representa el criterio y r la relacin. Se puede utilizar delete para eliminar regis-
tros de una nica tabla o desde carios lados de una relacin uno a muchos. Si se desea
borrar tuplas de varias relaciones hay que utilizar una orden delete por cada relacin.
Una vez que se ha eliminado los registros no se puede deshacer la operacin. Se reco-
92 mienda realizar una copia de seguridad de la base de datos en caso de que se elimine
un registro equivocadamente.
A continuacin se muestran unos ejemplos utilizando la consulta delete:
Borra todas las tuplas de la relacin DETALLE
delete from DETALLE
Borrar todas las profesiones que sean iguales a Administracin de la tabla DOCENTE-
DIRGRUPO.
delete from DocenteDirGrupo
where Profesion = Adminsitracion
4.3.2 Insercin
Por medio de esta consulta se agrega un registro en una tabla. Se le conoce como una
consulta de datos aadidos. Esta consulta puede ser de dos tipos: insertar un nico re-
gistro o insertar en una tabla los registros contenidos en otra tabla.
Para insertar los registros en una relacin, se especifica la tupla que se desea insertar, se
debe tener encuenta que los valores de los atributos de las tuplas que se inserten deben
pertenecer al dominio de los atributos y deben estar en el mismo orden en que fueron
registrados en las tablas.
La sintaxis es la siguiente:
insert into tabla
values (valaor1, valor2, valorN)
Realicemos una instruccin insert sencilla, supngase que se desea insertar la informa-
cin acadmica de un nuevo estudiante, la identificacin del estudiante es 11002247858,
colegio de procedencia Institucin Educativa San Juan Bautista, ultimo grado realizado
sptimo (7) de secundaria, jornada matinal, colegio pblico, el retiro se debi a traslado
de los padres, no repiti ningn grado y se retir en el ao 2012. La consulta queda de la
siguiente forma:
En caso dado que no se recuerde el orden de los atributos SQL permite que los atributos 93
se especifiquen en la clusula insert tomando el ejemplo anterior la instruccin quedara:
Es posible dar valores a algunos de los atributos del esquema para las tablas insertadas,
a los atributos restantes se les asigna un valor nulo, que se denota por null, por ejemplo:
4.3.3 Actualizacin
Update DOCENTEDIRGRUPO
94 Set GrupoAcargo = 6A
Where NombreApellido = Leyla Ruiz
Update es muy til cuando se desea cambiar un gran nmero de registros o cuando estos
se encuentran en mltiples tablas. Otro dato a tener encuenta es que la instruccin no
genera ningn resultado, para saber que registros se van a cambiar, hay que examinar
primero, el resultado de una consulta de seleccin que utilice el mismo criterio y despus,
ejecutar la consulta de actualizacin. Si en una consulta de actualizacin suprimimos la
clusula where todos los registros se la tabla sealada sern actualizados.
ACTIVIDAD
Existen versiones para Windows, Linux y Mac. Hay que tener en cuen-
ta que para los dos ltimos sistemas las versiones son Betas. Los links de
descarga son los siguientes: Windows y Linux: http://dev.mysql.com/down-
loads/workbench/5.1.html y Mac: http://dev.mysql.com/workbench/?p=182
Figura 1
Para crear el diagrama del esquema relacional necesario en la prctica, debemos hacer
doble clic sobre el icono Add Diagram, como si lo que cresemos fuera un nuevo diagra-
ma ER. Esto nos conducir al siguiente interfaz:
Figura 2
2.- Clic en la posicin del lienzo en la que queremos ver la tabla. Obtenemos lo
siguiente:
Figura 3
3.- Haciendo doble clic sobre la tabla se desplegar un men en la parte inferior del
interfaz.
Figura 4
En la pestaa Table, en el campo Name se indicar el nombre de la tabla. Los campos
Collation y Engine son relativos a MySQL y pueden obviarse.
Figura 5
Column Name: nombre del atributo.
Datatype: tipo de dato del atributo. Como la aplicacin est pensada para MySQL y la
prctica se realizar sobre Oracle, puede que existan tipos de datos vlidos para Oracle
que no lo son para el otro gestor. En este caso se elegir un tipo de dato similar y se
cambiar a mano en el script con las sentencias. Se recomienda ser lo ms coherente
posible al realizar esta tarea, es decir, para cada tipo de dato no disponible en MySQL,
elegir siempre el mismo tipo de dato de sustitucin.
NN: aade la restriccin NOT NULL para ese atributo.
98 AI: Auto Incremento. No se debe marcar ya no es una caracterstica de Oracle.
Default: valor por defecto para el atributo.
ColumnDetails.Flags: se utiliza para aadir la restriccin de clave primaria (PRIMARY
KEY).
Para aadir una nueva columna solo es necesario hacer doble click en la fila que
va a continuacin de la ltima aadida (sealada con un punto rojo en la imagen).
4.5.7 Cmo indicar que uno o varios atributos son clave primaria?
A continuacin se muestra el men para crear los tipos de relacin (1:1, 1:N y N:M) en un
ER. En la prctica se usarn solo los 1:N y 1:N, pues son las vinculaciones que hay entre
tablas en el modelo relacional:
Figura 6
El calificativo identificadora indica si los atributos que forman parte de la clave fornea
(lado N de la relacin) deben formar parte tambin de la clave primaria de dicha entidad,
lo que ocurre si una tabla proviene de un tipo de entidad dbil o en el caso de atributos
de tablas que provienen de tipos de relacin N:M.
Existen, al menos, dos formas diferentes de crear relaciones entre tablas: a travs del
men de tabla o usando el men antes propuesto.
a) A travs del men de tabla (recomendado):
1.- Doble clic sobre la entidad del lado N de la relacin.
2.- Crear los atributos que van a hacer la funcin de clave fornea (si no estn definidos
ya).
3.- Comprobar que existen los atributos en la tabla referenciada por la clave fornea. Si 99
no existen deben crearse antes de continuar.
4.- En el men de tabla , desplegar la pestaa Foreing Keys. Obtendremos lo
siguiente:
Figura 7
Referenced Column: columna o columnas que van a ser referenciadas por la clave
fornea.
b) Usando el men:
1. Las tablas deben estar creadas.
2. Se elige en el men de la izquierda el tipo de relacin que se desea.
3.Los retoques que se deseen hacer sobre la clave fornea se hacen siguiendo el
apartado 4.- del punto a).
Para crear un ndice haremos doble clic sobre la tabla que contiene los atributos y, una
vez en el men de tabla, desplegaremos la pestaa Indexes.
100
Figura 8
Index Name: nombre del ndice.
Type: en el men desplegable elegiremos INDEX.
Column: marcamos las columnas que formaran parte del ndice.
Order: ndice ascendente o descendente.
Index Options. Storage Type: podemos elegir entre BTREE, RTREE, HASH o ninguno de
los anteriores.
NOTA: la aplicacin crea ndices automticamente tanto para las claves primarias como
para las forneas.
101
ACTIVIDAD
102
AUTOEVALUACIN
Claudio (2006). Tipos de datos que hay en SQL. Desarrolloweb. Recuperado de:
http://www.desarrolloweb.com/articulos/2336.php
Baixauli, V., Grau, N., Snchez, A. (2012). Historia de las bases de datos. Slideshare.
Recuperado de: http://www.slideshare.net/da4equipo3/historia-de-las-bases-de-datos
Storti, G., Ros, G., Campodnico, G. (2007). Base de datos: Modelo Entidad Re-
lacin. Recuperado de: http://www.belgrano.esc.edu.ar/matestudio/carpeta_de_access_intro-
duccion.pdf
Gutmann, J. (2011). Introduccin a las bases de datos relacionales (II). Pixels & Code,
volumen 2, 11-15. Recuperado de: http://pixelscode.com/mayo-2011/#/10/zoomed
BASES DE DATOS