Está en la página 1de 52

Tema:

Modelo Relacional
Sustentado por:

Rosanna Valdez .DF-3319 Angelina Hernandez.DD-4432 Lourdes Vidal..DC-0276 William M. Garca.......DF7990


Materia:

Base De Datos.
Profesor:

Jos Manuel Amado


Fecha:

02/03/2013

Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo ms utilizado en la actualidad para implementar bases de datos ya planificadas. Permiten establecer interconexiones (relaciones) entre los datos (que estn guardados en tablas), y a travs de dichas conexiones relacionar los datos de ambas tablas, de ah proviene su nombre: "Modelo Relacional".

Una base de datos relacional se compone de varias tablas o relaciones. No pueden existir dos tablas con el mismo nombre ni registro.

Cada tabla es a su vez un conjunto de registros (filas y columnas). La relacin entre una tabla padre y un hijo se lleva a cabo por medio de las claves primarias y ajenas (o forneas). Las claves primarias son la clave principal de un registro dentro de una tabla y stas deben cumplir con la integridad de datos. Las claves ajenas se colocan en la tabla hija, contienen el mismo valor que la clave primaria del registro padre; por medio de stas se hacen las relaciones.

Un

diagrama o modelo entidad-relacin: es una herramienta para el modelado de datos que permite representar las entidades relevantes de un sistema de informacin as como sus interrelaciones y propiedades. modelo relacional para la gestin de una base de datos es un modelo de datos basado en la lgica de predicados y en la teora de conjuntos. Es el modelo ms utilizado en la actualidad para modelar problemas reales y administrar datos dinmicamente.

El

El

modelo entidad relacin se est utilizando por los programas de diseos para modelar las bases de datos ya que hay mltiples similitudes con el modelo relacional y el otro modelo es mas ampliamente utilizado por los diferentes DBMS existentes en el mercado.

Su idea fundamental es el uso de relaciones. Estas relaciones podran considerarse en forma lgica como conjuntos de datos llamados tuplas. Esta es la teora de las bases de datos relacionales creadas por Edgar Frank Codd, la mayora de las veces se conceptualiza de una manera ms fcil de imaginar, esto es, pensando en cada relacin como si fuese una tabla que est compuesta por registros (cada fila de la tabla sera un registro o tupla), y columnas (tambin llamadas campos).

Toda Todo

Entidad se transforma en una TABLA.

Atributo se transforma en una COLUMNA dentro de la Tabla. Atributo Identificador Principal (AIP) de cada Entidad se convierte en la Clave Primaria de la Tabla. Los atributos edificadores alternativos pasaran a ser Columnas dentro de la Tabla, con carcter Unique

El

El

esquema de una base de datos 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. esquema es generalmente almacenado en un Diccionario de Datos. Aunque generalmente el esquema es definido en un lenguaje de Base de datos, el trmino se usa a menudo para referirse a una representacin grfica de la estructura de base de datos.

El

Esquema

Conceptual, un mapa de conceptos y sus relaciones. Lgico, un mapa de las entidades y sus atributos y las relaciones. Fsico, una aplicacin de un esquema lgico.

Esquema

Esquema

Una

instancia de Motor de base de datos es una copia del ejecutable de SQLSERVR.EXE que se ejecuta como un servicio de sistema operativo. Cada instancia administra varias bases de datos del sistema y una o varias bases de datos de usuario. Cada equipo puede ejecutar varias instancias de Motor de base de datos. Las aplicaciones se conectan a la instancia para realizar el trabajo en una base de datos administrada por la instancia.

Una instancia de motor de base de datos funciona como un servicio que controla todas las solicitudes de aplicacin para trabajar con datos de cualquiera de las bases de datos administradas por dicha instancia. Es el destino de las solicitudes de conexin (inicios de sesin) de aplicaciones. La conexin se ejecuta en una conexin de red si la aplicacin y la instancia estn en equipos independientes. Si la aplicacin y la instancia estn en el mismo equipo, la conexin de SQL Server se puede ejecutar como una conexin de red o una conexin en memoria.

Nombre de la instancia: Es el nombre del


conjunto de procesos tanto del SO como las estructuras que se guardan en memoria las cuales se utilizan para abrir o montar una base de datos. En un entorno RAC (cluster) podemos tener varias instancias que abren una sola base de datos y cada una de estas instancias tendr un nombre. En entornos simples (sin RAC), el nombre de la base de datos y el nombre de la instancia suele ser el mismo ya que no hay ninguna razn para distinguirlos porque nos encontramos con una relacin 1 a 1.

Ej. Supongamos que quiero recoger informacin sobre los cursos en el que esta matriculado un alumno. Alumno sera una entidad, cursos sera otra entidad y matriculado una relacin entre ambas entidades. Una instancia de una entidad (no de una base de datos), sera cada uno de los valores que puede tomar esa entidad, (cada tupla en el ME/R, o fila en el modelo relacional).

Las Restricciones de Integridad, en sus diferentes tipologas, son la base fundamental para un diseo de una Base de Datos . Los distintos tipos de Restricciones de Integridad cubren aspectos tanto dentro de una relacin r dada, como entre un conjunto de varias relaciones R.

Las Restricciones de integridad proporcionan un medio de asegurar que las modificaciones hechas a la base de datos por los usuarios no provoquen una prdida de la consistencia de los datos.

Las Restriccin de integridad son predicados arbitrarios para las relaciones de la base de datos.
Restricciones de Integridad vistas anteriormente: Declaracin de claves: Conjunto de atributos que definen una tupla de la base de datos de forma nica Forma de la relacin: varios a varios, uno a varios, uno a uno.

Una relacin tiene un nombre, un conjunto de atributos que representan sus propiedades y un conjunto de tuplas que incluyen los valores que cada uno de los atributos toma para cada elemento de la relacin. La relacin es el elemento fundamental del modelo relacional (de ah el nombre del modelo), y se puede representar en forma de tabla de dos dimensiones, donde las columnas son los atributos de la relacin y las filas son las tuplas.

Los conjunto de entidades fuerte: se representa por medio de una tabla que generalmente se la denomina con el mismo nombre del conjunto de entidades correspondiente y sus columnas corresponden a cada uno de los atributos del conjunto. Cada rengln de esta tabla hace referencia a una entidad del conjunto de entidades cuenta.

Un conjunto de entidades dbiles: no tienen una llave primaria sin embargo es preciso tener una forma de distinguir entre todas las entidades del conjunto, aquella que depende de una entidad fuerte de otro conjunto relacionado. El discriminador de un conjunto de entidades dbiles es un conjunto de atributos que permite hacer esta distincin. Por lo tanto para nuestro ejemplo el discriminador es numtransac ya que para cada cuenta estos nmeros identifican en forma nica cada una de las transacciones.

Atributos simples: no estn divididos en subpartes. Atributos compuestos: Los atributos compuestos se manejan creando un atributo separado para cada uno de los atributos componentes; no se crea una columna separada para el propio atributo compuesto, se pueden dividir en subpartes (es decir, en otros atributos).

Por ejemplo: nombre-cliente podra estar estructurado como un atributo compuesto consistente en nombre, primer-apellido y segundo-apellido. Usar atributos compuestos en un esquema de diseo es una buena eleccin si el usuario desea referirse a un atributo completo en algunas ocasiones y, en otras, a algn componente del atributo.

Atributos monovalorados y multivalorados. Los atributos que se han especificado en los ejemplos tienen todos un valor slo para una entidad concreta. Por ejemplo, el atributo nmero-prstamo para una entidad prstamo especfico, referencia a un nico nmero de prstamo. Tales atributos se llaman monovalorados. Puede haber ocasiones en las que un atributo tiene un conjunto de valores para una entidad especfica.

Considrese un conjunto de entidades empleado con el atributo nmero-telfono. Cualquier empleado particular puede tener cero, uno o ms nmeros de telfono. Este tipo de atributo se llama multivalorado. En ellos, se pueden colocar apropiadamente lmites inferior y superior en el nmero de valores en el atributo multivalorado.

Las claves candidatas: son el conjunto de atributos que identifican unvoca y mnimamente cada tupla de la relacin. De la propia definicin de relacin se deriva que siempre existe, al menos, una clave candidata (al ser una relacin un conjunto y no existir dos tuplas iguales, el conjunto de todos los atributos siempre tiene que identificar unvocamente a cada tupla). La propiedad de minimalidad implica que no se incluye ningn atributo innecesario. Una relacin puede tener ms de una clave candidata.

Clave Primaria (Primary Key): _ Es la clave candidata que el usuario escoge para identificar las tuplas de la relacin. _ Cuando slo existe una clave candidata, sta es la clave primaria (siempre existe clave primaria). Clave primaria para denotar una clave candidata que es elegida por el diseador de la base de datos como elemento principal para identificar las entidades dentro de un conjunto de entidades.

Una clave (primaria, candidata y superclave) es una propiedad del conjunto de entidades, ms que de las entidades individuales. Cualesquiera dos entidades individuales en el conjunto no pueden tener el mismo valor en sus atributos clave al mismo tiempo. La designacin de una clave representa una restriccin en el desarrollo del mundo real que se modela.

Un conjunto de entidades puede no tener suficientes atributos para formar una clave primaria. Tal conjunto de entidades se denomina conjunto de entidades dbiles. Un conjunto de entidades que tiene una clave primaria se denomina conjunto de entidades fuertes.

La generalizacin: Es el resultado de la unin de dos o ms conjuntos de entidades, de bajo nivel, para producir un conjunto de entidades de ms alto nivel. La especializacin: es el resultado de tomar un subconjunto de un conjunto de entidades de alto nivel, para formar un conjunto de entidades de ms bajo nivel.

Del conjunto de entidades cuenta (alto nivel), clasificamos cada una de estas en cuentaahorros (con atributo tasa-inters) y cuentas-cheques (con atributo importe-sobregiro), ambas de bajo nivel. Hay poca diferencia entre la generalizacin y la especializacin. En la primera, cada entidad de alto nivel debe ser una entidad de bajo nivel. La especializacin no tiene esta limitante. Por ejemplo, la generalizacin exigira que cada cuenta sea una entidad cuentacheque o una entidad cuenta-ahorros. La especializacin permite la posibilidad de que una entidad cuenta no sea ni una entidad cuenta-cheque ni una entidad cuenta-ahorros (podra ser una cuenta de mercado de valores).

La generalizacin: se utiliza para hacer resaltar las semejanzas entre los tipos de entidades de bajo nivel y para ocultar sus diferencias.
La especializacin: es lo inverso, hace resaltar las diferencias entre los conjuntos de entidades de alto nivel y de bajo nivel. Los atributos son lo que los distinguen. Esto se realiza mediante la herencia de atributos. Los conjuntos de bajo nivel heredan los atributos de los conjuntos de entidades de alto nivel.

En el diagrama ER tanto la generalizacin como la especializacin se representan por medio de un tringulo ISA (is a, en ingls, significa es un). La generalizacin se distingue de la especializacin en un diagrama ER por el mayor grosor de las lneas que conectan el tringulo ISA y cada una de las entidades.

El lgebra relacional es un lenguaje de consulta procedimental. Consta de un conjunto de operaciones que toman como entrada una o dos relaciones y producen como resultado una nueva relacin.

Las operaciones del lgebra relacional son: Seleccionar Proyectar Producto cartesiano Renombrar Unin Diferencia de conjuntos Interseccin de conjuntos Divisin Asignacin Insercin Eliminacin Actualizacin

Operacin seleccionar.

La operacin seleccin selecciona tuplas que satisfacen un predicado dado. Se utiliza la letra griega sigma minscula () para denotar la seleccin. El predicado aparece como subndice de . La relacin del argumento se da entre parntesis a continuacin de . Por tanto, para seleccionar las tuplas de la relacin prstamo en que la sucursal es Navacerrada hay que escribir
nombre-sucursal = Popular.La Vega (prstamo)

Operacin proyectar.

La operacin proyeccin es una operacin unaria que devuelve su relacin de argumentos, excluyendo algunos argumentos. Dado que las relaciones son conjuntos, se eliminan todas las filas duplicadas. La proyeccin se denota por la letra griega mayscula pi (). Se crea una lista de los atributos que se desea que aparezcan en el resultado como subndice de . La relacin de argumentos se escribe a continuacin entre parntesis. Por tanto, la consulta para crear una lista de todos los nmeros de prstamo y del importe de los mismos puede escribirse como nmero-prstamo, importe (prstamo)

Operacin renombrar. La operacin redenominar, que denotaremos con el smbolo :=, permite asignar un nombre R a la relacin que resulta de una operacin del lgebra relacional; lo hace de la forma siguiente: R := E,

Ejemplo, para dar el nombre EMPLEADOS a la relacin resultante de la operacin EMPLEADOS_ADM EMPLEADOS_PROD, haramos: EMPLEADOS := EMPLEADOS_ADM EMPLEADOS_PROD.

Operacin producto cartesiano. El producto cartesiano es una operacin que, a partir de dos relaciones, obtiene una nueva relacin formada por todas las tuplas que resultan de concatenar tuplas de la primera relacin con tuplas de la segunda. El producto cartesiano es una operacin binaria. Siendo T y S dos relaciones que cumplen que sus esquemas no tienen ningn nombre de atributo comn, el producto cartesiano de T y S se indica como T S.

Operacin unin.
La unin es una operacin que, a partir de dos relaciones, obtiene una nueva relacin formada por todas las tuplas que estn en alguna de las relaciones de partida. La unin es una operacin binaria, y la unin de dos relaciones T y S se indica T S. La unin de las relaciones EMPLEADOS_ADM y EMPLEADOS_PROD proporciona una nueva relacin que contiene tanto a los empleados de administracin como los empleados de produccin; se indicara as: EMPLEADOS_ADM EMPLEADOS_PROD. Slo tiene sentido aplicar la unin a relaciones que tengan tuplas similares.

Operacin diferencia de conjuntos . La operacin diferencia de conjuntos, denotada por , permite buscar las tuplas que estn en una relacin pero no en la otra. La expresin r s da como resultado una relacin que contiene las tuplas que estn en r pero no en s. Se pueden buscar todos los clientes del banco que tienen abierta una cuenta pero no tienen concedido ningn prstamo escribiendo nombre-cliente (impositor) nombre-cliente (prestatario)

Operacin interseccin de conjuntos


La interseccin es una operacin que, a partir de dos relaciones, obtiene una nueva relacin formada por las tuplas que pertenecen a las dos relaciones de partida. La interseccin es una operacin binaria; la interseccin de dos relaciones T y S se indica T S. La interseccin de las relaciones EMPLEADOS_ADM y EMPLEADOS_PROD obtiene una nueva relacin que incluye a los empleados que son al mismo tiempo de administracin y de produccin: se indicara como EMPLEADOS_ADM EMPLEADOS_PROD. La interseccin, como la unin, slo se puede aplicar a relaciones que tengan tuplas similares.

Operacin divisin.
La operacin divisin, denotada por , resulta adecuada para las consultas que incluyen la expresin para todos. Supngase que se desea hallar a todos los clientes que tengan abierta una cuenta en todas las sucursales ubicadas en La Vega. Se pueden obtener todas las sucursales de La Vega mediante la expresin r1 = nombre-sucursal (ciudad-sucursal = La Vega (sucursal))

Operacin asignacin.
En ocasiones resulta conveniente escribir una expresin del lgebra relacional por partes utilizando la asignacin a una variable de relacin temporal. La operacin asignacin, denotada por , acta de manera parecida a la asignacin de los lenguajes de programacin.

Operacin de insercin. Para insertar datos en una relacin hay que especificar la tupla que se va a insertar o escribir una consulta cuyo resultado sea un conjunto de tuplas que vayan a insertarse. En el lgebra relacional las inserciones se expresan mediante r r E donde r es una relacin y E es una expresin del lgebra relacional. La insercin de una sola tupla se expresa haciendo que E sea una relacin constante que contiene una tupla.

Operacin de eliminacin.
Las solicitudes de borrado se expresan bsicamente igual que las consultas. Sin embargo, en lugar de mostrar las tuplas al usuario, se eliminan de la base de datos las tuplas seleccionadas. Slo se pueden borrar tuplas enteras; no se pueden borrar valores de atributos concretos. En el lgebra relacional los borrados se expresan mediante r r E donde r es una relacin y E es una consulta del lgebra relacional.

Operacin de actualizacin.
Puede que, en algunas situaciones, se desee modificar un valor de una tupla sin modificar todos los valores de la tupla. Se puede utilizar el operador proyeccin generalizada para realizar esta tarea

Cuando

escribimos una expresin en lgebra relacional, damos una secuencia de procedimientos que genera la respuesta a nuestra consulta. El clculo relacional de tuplas, en cambio, es un lenguaje de consultas no procedimental.
la informacin deseada sin dar un procedimiento especfico para obtener esa informacin. Una consulta en el clculo relacional de tuplas se expresa como {t|P(t)} es decir, el conjunto de todas las tuplas t, tal que el predicado P es verdadero para t. Usamos t[A] para representar el valor de la tupla t en el atributo A, y usamos tr para indicar que la tupla t est en la relacin r.

Describe

Una expresin del clculo relacional de tuplas es de la forma: {t|P(t)} donde P es una frmula. En una frmula pueden aparecer varias variables de tuplas. Se dice que una variable de tupla es una variable libre a menos que este cuantificada por un $ o por un ", que entonces se dice variable limite.
Una frmula en el clculo relacional de tuplas se compone de tomos. Un tomo tiene una de las siguientes formas: 1.- sr, donde s es una variable de tupla y r es una relacin. No se permite la operacin .

2.- s[x]Qu[y], donde s y u son variables de tuplas, x e y son atributos sobre los que estn definidos s y u respectivamente, y Q es un operador de comparacin (<, ,=, , >). Se requiere que los atributos x e y tengan dominios cuyos miembros puedan compararse por medio de Q. 3.- s[x] Qc, donde s es una variable de tupla, x es una atributo sobre el que s esta definida, Q es un operador de comparacin, y c es una constante en el dominio del atributo x

Las frmulas se construyen a partir de tomos usando las siguientes reglas:


1.- Un tomo es una frmula. 2.- Si P1 es una frmula, entonces tambin lo son P1 y (P1). 3.- Si P1 y P2 son frmulas, entonces tambin lo son P1P2, P1P2 y P1P2. 4.- Si P1(s) es una frmula que contiene una variable de tupla libre, entonces $sr(P1(s)) y "sr(P1(s)) tambin101 lo son. Como en el lgebra relacional, es posible escribir expresiones equivalentes que en apariencia no son idnticas, como estas tres: 1.- P1P2 es equivalente a (P1P2). 2.- "tr(P1(t)) es equivalente a $tr(P1(t)). 3.- P1P2 es equivalente a P1P2

El clculo relacional de dominios.

Existe una segunda forma de clculo relacional llamada clculo relacional de dominios. Esta forma usa variables de dominio que toman valores del dominio de un atributo ms que valores de una tupla completa, y esta ntimamente relacionado con el clculo relacional de tuplas.

Una expresin en el clculo relacional de dominios es de la forma {<x1, x2, ,xn>|P(x1, x2, , xn)}, donde x1, x2, , xn reprsentan variables de dominio. P representa una frmula compuesta por tomos, siendo un tomo una expresin con una de estas formas: 1.- <x1, x2, , xn>r, donde r es una relacin de n atributos, y x1, x2, , xn son variables de dominio o constantes de dominio.102 2.- xQy, donde x e y son variables de dominio, y Q es un operador de comparacin (<, , =, , >). Es requisito de los atributos x e y tengan dominios que puedan compararse. 3.- xQc, donde x es una variable de dominio, Q es un operador de comparacin, y es una constante en el dominio del atributo para el cual x es una variable de dominio.

Una vista se define usando la sentencia create view de la forma create view v as <expresin de consulta> donde <expresin de consulta> es cualquier expresin legal de consulta enlgebra relacional. El nombre de la vista se representa por v. Considerse la vista que consta de sucursales y sus clientes: create view todos_clientes as nombre_sucursal, nombre_cliente (depsito) nombre_sucursal, nombre_cliente (prstamo) Una vez que se ha definido la vista, el nombre de la vista puede usarse para referirse a la relacin virtual que genera la vista. Los nombres de vistas pueden aparecer en cualquier lugar que pueda aparecer el nombre de una relacin.

También podría gustarte