Sie sind auf Seite 1von 9

Modelo Racional

l modelo relacional es un modelo de datos , adecuado para ser el modelo subyacente de


un sistema de gestin de base de datos (DBMS), que se basa en el principio de que todos los
datos se almacenan en tablas (o, matemticamente hablando, las relaciones ). Toda su definicin
es terico y se basa en la lgica de predicados y la teora de conjuntos .
El concepto fue creado por Edgar Frank Codd en 1970 y se describe en el artculo "Modelo
relacional de datos para grandes de datos compartidos Bancos". De hecho, elmodelo relacional fue
el primer modelo de datos describe las bases de datos existentes en teora, a continuacin, lleg a
ser conocido como ( modelo jerrquico , el modelo de red o Codasyl y modelo de guas inversas ).
El modelo relacional para la gestin de bases de datos (DBMS) es un modelo de datos basado
en la lgica y la teora de conjuntos .
En definicin simplificada, el modelo se basa en dos conceptos: Concepto de entidad y relacin Una entidad es un elemento que se caracteriza por los datos que se recogen en la identificacin
comnmente se conoce como tabla. En la construccin la tabla identifica los datos de
entidad. Asignacin de valores a una entidad que acumula un registro de la tabla. La relacin
determina cmo cada fila de cada tabla est asociada con los registros de otras tablas.
Histricamente es el sucesor del modelo jerrquico y modelo de red . Estas antiguas arquitecturas
son hoy en da se utiliza en algunos centros de datos con un gran volumen de datos, donde la
migracin no es factible por el costo que requerira; Hay nuevos modelos basados en la orientacin
a objetos , los cuales en la mayora de los casos se encuentran como titular en un lenguaje formal.
El modelo relacional fue inventado por Frank Codd y posteriormente mantenida y reforzada
por Chris Fecha y Hugh Darwen como un modelo de datos general. En el Tercer Manifiesto (1995)
mostraron cmo el modelo relacional se puede ampliar con funciones de orientacin de oponerse
sin comprometer sus principios fundamentales.
El lenguaje estndar para bases de datos relacionales, SQL , slo vagamente recuerdan el modelo
matemtico . Actualmente es adoptada, a pesar de sus limitaciones, ya que es viejo y ms popular
que cualquier otro lenguaje de base de datos .
La principal proposicin del modelo relacional es que todos los datos se representan como
relaciones matemticas, es decir, un subconjunto de la producto cartesiano de nconjuntos . En el
modelo matemtico (a diferencia de SQL) anlisis de los datos se realiza en una lgica de
predicados de dos valores (es decir, sin el valor nulo); esto significa que hay dos valores posibles
para una propuesta : verdadero o falso. Los datos son procesados por el clculo relacional y el
lgebra relacional .
El modelo relacional permite al diseador para crear un modelo lgico consistente de la
informacin que se almacena. Este modelo lgico puede ser refinado a travs de un proceso
de normalizacin . Una base de datos construida puramente basado en el modelo relacional ser
totalmente normalizada. El plan de acceso , otras implementaciones y detalles operativos son
manejados por el sistema DBMS , y no debe ser reflejada en el modelo lgico. Esto contrasta con
la prctica comn para SQL DBMS en el que el ajuste de rendimiento a menudo requiere cambios
en el modelo lgico.

Los elementos bsicos del modelo relacional de construccin es el dominio o el tipo de


datos . Una tupla es un conjunto de atributos que estn ordenados pares de dominio y valor. Un
csped ( la variable relacional ) es un conjunto de pares ordenados que los nombres de dominio y
sirve como una cabecera de una relacin. Una relacin es un conjunto desordenado de tuplas. A
pesar de estos conceptos matemticos, que bsicamente corresponden a los conceptos
tradicionales de bases de datos. Una relacin es similar al concepto de mesa y tupla es similar al
concepto de lnea .
El principio bsico del modelo relacional es el principio de informacin: toda la informacin est
representada por los valores en las relaciones (relvars). Por lo tanto, relvars no estn relacionados
entre s en el momento del proyecto. Sin embargo, los diseadores utilizan el mismo dominio en
varios relvars, y un atributo es dependiente de otro, esta dependencia est asegurada por
la integridad referencial

Lenguaje SQL
El lenguaje de consulta estructurado o SQL (por sus siglas en ingls Structured Query Language)
es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar
diversos tipos de operaciones en ellas. Una de sus caractersticas es el manejo del lgebra y el
clculo relacional que permiten efectuar consultas con el fin de recuperar, de forma sencilla,
informacin de bases de datos, as como hacer cambios en ellas.
Caractersticas del SQL

El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y potencia de los
sistemas relacionales y permite as gran variedad de operaciones.
Es un lenguaje declarativo de "alto nivel" o "de no procedimiento" que, gracias a su fuerte
base terica y su orientacin al manejo de conjuntos de registros y no a registros
individuales permite una alta productividad en codificacin y la orientacin a objetos. De
esta forma, una sola sentencia puede equivaler a uno o ms programas que se utilizaran en
un lenguaje de bajo nivel orientado a registros. SQL tambin tiene las siguientes
caractersticas:

Lenguaje de definicin de datos: El LDD de SQL proporciona comandos para la


definicin de esquemas de relacin, borrado de relaciones y modificaciones de los
esquemas de relacin.

Lenguaje interactivo de manipulacin de datos: El LMD de SQL incluye lenguajes


de consultas basado tanto en lgebra relacional como en clculo relacional de tuplas.

Integridad: El LDD de SQL incluye comandos para especificar las restricciones de


integridad que deben cumplir los datos almacenados en la base de datos.

Definicin de vistas: El LDD incluye comandos para definir las vistas.


Control de transacciones: SQL tiene comandos para especificar el comienzo y el
final de una transaccin.

SQL incorporado y dinmico: Esto quiere decir que se pueden incorporar


instrucciones de SQL en lenguajes de programacin como: C++, C, Java, PHP, Cobol,
Pascal y Fortran.

Autorizacin: El LDD incluye comandos para especificar los derechos de acceso a las
relaciones y a las vistas.

Para crear nuestra base de datos bibliogrfica, usaremos pues la orden:


createdb biblio
Una vez creada la base de datos, se pueden crear las tablas que la componen. La instruccin SQL
propuesta para este fin es:
CREATE TABLE nombre_tabla (
nombre_columna tipo_columna [ clusula_defecto ] [ vnculos_de_columna ]
[ , nombre_columna tipo_columna [ clusula_defecto ] [ vnculos_de_columna ] ... ]
[ , [ vnculo_de tabla] ... ] )
nombre_columna: es el nombre de la columna que compone la tabla. Sera mejor no exagerar con
la longitud de los identificadores de columna, puesto que SQL Entry Level prev nombres con no
ms de 18 caracteres. Consltese, de todos modos, la documentacin de la base de datos
especfica. Los nombres tienen que comenzar con un carcter alfabtico.
tipo_columna: es la indicacin del tipo de dato que la columna podr contener. Los principales
tipos previstos por el estndar SQL son:

CHARACTER(n)
Una cadena de longitud fija con exactamente n caracteres. CHARACTER se puede
abreviar con CHAR

CHARACTER VARYING(n)
Una cadena de longitud variable con un mximo de n caracteres. CHARACTER VARYING
se puede abreviar con VARCHAR o CHAR VARYING.

INTEGER
Un nmero estero con signo. Se puede abreviar con INT. La precisin, es decir el tamao
del nmero entero que se puede memorizar en una columna de este tipo, depende de la
implementacin de la DBMS en cuestin.

SMALLINT
Un nmero entero con signo y una precisin que no sea superior a INTEGER.

FLOAT(p)
Un nmero con coma mvil y una precisin p. El valor mximo de p depende de la
implementacin de la DBMS. Se puede usar FLOAT sin indicar la precisin, empleando,
por tanto, la precisin por defecto, tambin sta dependiente de la implementacin. REAL y
DOUBLE PRECISION son sinnimo para un FLOAT con precisin concreta. Tambin en

este caso, las precisiones dependen de la implementacin, siempre que la precisin del
primero no sea superior a la del segundo.

DECIMAL(p,q)
Un nmero con coma fija de por lo menos p cifras y signo, con q cifras despus de la
coma. DEC es la abreviatura de DECIMAL. DECIMAL(p) es una abreviatura de
DECIMAL(p,0). El valor mximo de p depende de la implementacin.

INTERVAL
Un periodo de tiempo (aos, meses, das, horas, minutos, segundos y fracciones de
segundo).

DATE, TIME y TIMESTAMP


Un instante temporal preciso. DATE permite indicar el ao, el mes y el da. Con TIME se
pueden especificar la hora, los minutos y los segundos. TIMESTAMP es la combinacin de
los dos anteriores. Los segundos son un nmero con coma, lo que permite especificar
tambin fracciones de segundo.

CREATE TABLE Book (


ID INTEGER PRIMARY KEY REFERENCES Publication(ID),
title VARCHAR(160) NOT NULL,
publisher INTEGER NOT NULL REFERENCES Publisher(ID),
volume VARCHAR(16),
series VARCHAR(160),
edition VARCHAR(16),
pub_month CHAR(3),
pub_year INTEGER NOT NULL,
note VARCHAR(255)
);

Lenguaje de QBE
Query-by-Example (QBE, Consulta mediante ejemplos) se refiere a una familia de
lenguajes que implementan las ideas del clculo relacional de dominios, un lenguaje formal
desarrollado para las bases de datos relacionales. Es el nombre tanto de un lenguaje de
manipulacin de datos como el de un sistema de base de datos que incluy a este
lenguaje. El sistema QBE se desarroll en el Centro de desarrollo T.J. Watson, de IBM, a
principios de los aos setenta y el lenguaje de manipulacin de datos QBE se us ms
tarde en QMF (Query Management Facility, mecanismo de gestin de consultas) como
opcin de interfaz para DB2. Hay varias implementaciones de este lenguaje, entre las que
se incluyen el original de IBM (Sistema QBE), QBE de Microsoft (en Access) y QBE de
DB2. Aunque este lenguaje fue originalmente textual, las ltimas implementaciones, como
la de Access, ofrecen una interfaz grfica para la expresin de consultas.

Las consultas en QBE se expresa utilizando esqueletos de tablas. Estos presentan el


esquema de la relacin. En lugar de llenar la pantalla con esqueletos de tablas, el usuario
elige los esqueletos que necesita para una determinada consulta y rellena dichos
esqueletos con filas ejemplo. Una fila ejemplo est formada por constantes y elementos
ejemplo, las mismas que son variables de dominio. Para evitar confusiones, en QBE las
variables de dominio van precedidas por un carcter de subrayado ( _ ) como en _ x, y las
constantes que aparecen sin ninguna indicacin particular. Este es estndar con la mayora
de los lenguajes, en los que las constantes se encierran entre comillas y las variables
aparecen sin ninguna indicacin.
Posee dos caractersticas distintivas:
1

A diferencia de muchos lenguajes de consulta y de programacin, QBE presenta una


sintaxis bidimensional. Las consultas parecen tablas. Una consulta en el lenguaje
unidimensional (como SQL) se puede formular en una lnea (posiblemente larga). Un
lenguaje bidimensional necesita dos dimensiones para la formulacin de consultas.
Cabe recalcar que existe una versin unidimensional de QBE.

Las consultas en QBE se expresan << mediante un ejemplo>>. En lugar de incluir un


procedimiento para obtener la respuesta deseada, se usa un ejemplo de qu es lo
deseado. El sistema generaliza este ejemplo para obtener la respuesta a la consulta.
Tipos de Consultas QBE

Existen varios tipos de consultas QBE:


Consulta de Seleccin: Seleccionan registros de una o varias tablas.
Consultas de Accin: Modifican datos de una tabla (reemplazan datos, eliminan
registros o aaden registros).
Consultas de tabla de referencias cruzadas: Calculan totales para filas y columnas.
Consultas perimtricas: Aceptan valores proporcionados por el usuario para
personalizar la consulta.
Ejemplo de consultas QBE en Microsoft Access 2003
En este ejemplo presentara un caso practico de un sistema medico y puntualizara los tipos
de consultas QBE.

Consulta de seleccin:
Las consultas ms sencillas, las consultas de seleccin, permiten extraer datos de
la base de datos con el criterio que imponga el usuario. En su versin ms simple,

una consulta de seleccin mostrara todos los campos de todas las filas de una
tabla. Se puede elegir tanto los campos a mostrar como las filas que cumplan una
determinada condicin.
1

Listado de
mdicos por
especialidad:

En esta consulta estamos


interesados en obtener los
mdicos ordenados por
especialidad
y
por
apellidos, incluyendo los
campos
de
la
tabla
Mdicos:
Especialidad,
Apellidos, Nombre, Nmero de colegiado y Cargo.

Listado de pacientes por diagnstico


Proporciona un listado de pacientes ordenado por diagnstico y por los
apellidos del paciente. Para crear la consulta Listado de pacientes por
diagnstico hay que agregar las tablas Pacientes e Ingresos. Se aadir a
la cuadrcula QBE los siguientes campos de las siguientes tablas:
Campo

Tabla

Diagnstico

Ingresos

Apellidos del paciente

Pacientes

Nombre del paciente

Pacientes

Nmero de historial clnico

Pacientes

Normalizacin de bases de datos


El proceso de normalizacin de bases de datos consiste en designar y aplicar una serie de reglas a
las relaciones obtenidas tras el paso del modelo entidad-relacin al modelo relacional.
Las bases de datos relacionales se normalizan para:

Evitar la redundancia de los datos.

Disminuir problemas de actualizacin de los datos en las tablas.

Proteger la integridad de los datos.

En el modelo relacional es frecuente llamar tabla a una relacin, aunque para que una tabla sea
considerada como una relacin tiene que cumplir con algunas restricciones:

Cada tabla debe tener su nombre nico.

No puede haber dos filas iguales. No se permiten los duplicados.

Todos los datos en una columna deben ser del mismo tipo.

Figura 1.0: Trabajo (Cdigo, Nombre, Posicin, Salario), donde Cdigo es la Clave Primaria.

Relacin = tabla o archivo

Registro = registro, fila , rengln o tupla

Atributo = columna o campo

Clave = llave o cdigo de identificacin

Clave Candidata = superclave mnima

Clave Primaria = clave candidata elegida

Clave Ajena (o fornea) = clave externa o clave fornea

Clave Alternativa = clave secundaria

Dependencia Multivaluada = dependencia multivalor

RDBMS = Del ingls Relational Data Base Manager System que significa, Sistema Gestor
de Bases de Datos Relacionales.
1FN = Significa, Primera Forma Normal o 1NF del ingls First Normal Form.

Los trminos Relacin, Tupla y Atributo derivan del lgebra y clculo relacional, que constituyen la
fuente terica del modelo de base de datos relacional.
Todo atributo en una tabla tiene un dominio, el cual representa el conjunto de valores que el mismo
puede tomar. Una instancia de una tabla puede verse entonces como un subconjunto del producto
cartesiano entre los dominios de los atributos. Sin embargo, suele haber algunas diferencias con la
analoga matemtica, ya que algunos RDBMS permiten filas duplicadas, entre otras cosas.
Finalmente, una tupla puede razonarse matemticamente como un elemento del producto
cartesiano entre los dominios.

Bibliografa
http://es.wikipedia.org/wiki/Normalizaci%C3%B3n_de_bases_de_datos
http://www.alegsa.com.ar/Dic/qbe.php

http://www.htmlpoint.com/sql/sql_07.htm
http://es.wikipedia.org/wiki/SQL

Conclusin
Cada modo de base de datos tiene un modo de lenguaje especfico para la
creacin, el ms sencillo y ms utilizado es el SQL para la creacin de bases de
datos en NetBeans
Hay varios tipos de bases de datos para varias plataformas de programacin y
cada una sirve para alguna base de datos con diferentes, el uso es dependiendo
de lo que necesite hacer el usuario

Das könnte Ihnen auch gefallen