Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Contenido
1. INTRODUCCIÓN ........................................................................................................... 2
2. BASES DE DATOS RELACIONALES ........................................................................... 2
Diseño ............................................................................................................................... 3
3. LENGUAJE SQL ............................................................................................................ 4
Características generales de SQL..................................................................................... 4
4. DISEÑO DE PROGRAMAS ........................................................................................... 5
En el diseño conceptual .................................................................................................... 6
El diseño lógico ................................................................................................................. 6
El diseño físico .................................................................................................................. 6
5. IMPORTACIÓN / EXPORTACION DE DATOS ............................................................. 6
6. CONCLUSIONES .......................................................................................................... 7
7. BIBLIOGRAFÍA .............................................................................................................. 7
1
1. INTRODUCCIÓN
No cabe duda que la información es la base de nuestra sociedad, recibimos y manejamos
volúmenes enormes de información y el ordenador es la herramienta que nos permite
almacenar y tratar esa información.
El objetivo de este tema es analizar las bases de datos relacionales, centrándonos tanto en
su definición y diseño como en el lenguaje que utiliza y la importación/exportación de
datos.
En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a
diferencia de otros modelos como el jerárquico y el de red). Esto tiene la considerable
ventaja de que es más fácil de entender y de utilizar para un usuario esporádico de la base
2
de datos. La información puede ser recuperada o almacenada mediante "consultas" que
ofrecen una amplia flexibilidad y poder para administrar la información.
El lenguaje más habitual para construir las consultas a bases de datos relacionales es
SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estándar
implementado por los principales motores o sistemas de gestión de bases de datos
relacionales.
Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce
como normalización de una base de datos.
Diseño
El diseño de una base de datos consiste en definir la estructura de los datos que debe
tener un sistema de información determinado. Para ello se suelen seguir por regla general
unas fases en el proceso de diseño, definiendo para ello el modelo conceptual, el lógico y
el físico.
El diseño lógico parte del resultado del diseño conceptual y da como resultado una
descripción de la estructura de la base de datos en términos de las estructuras de datos
que puede procesar un tipo de SGBD.
El diseño físico parte del lógico y da como resultado una descripción de la implementación
de una base de datos en memoria secundaria: las estructuras de almacenamiento y los
métodos utilizados para tener un acceso eficiente a los datos.
En el modelo relacional las dos capas de diseño conceptual y lógico, se parecen mucho.
Generalmente se implementan mediante diagramas de Entidad/Relación (modelo
conceptual) y tablas y relaciones entre éstas (modelo lógico). Este es el modelo utilizado
por los sistemas gestores de datos más habituales (SQL Server, Oracle, MySQL...).
Nota: Aunque mucha gente no lo sabe, a las bases de datos relaciones se les denomina
así porque almacenan los datos en forma de “Relaciones” o listas de datos, es decir, en lo
que llamamos habitualmente “Tablas”. Muchas personas se piensan que el nombre viene
porque además las tablas se relacionan entre sí utilizando claves externas. No es así, y es
un concepto que debemos tener claro. (Tabla = Relación).
Todos los datos se representan en forma de tablas (también llamadas “relaciones”, ver
nota anterior). Incluso los resultados de consultar otras tablas. La tabla es además la
unidad de almacenamiento principal.
3
Las tablas están compuestas por filas (o registros) y columnas (o campos) que almacenan
cada uno de los registros (la información sobre una entidad concreta, considerados una
unidad).
Las filas y las columnas, en principio, carecen de orden a la hora de ser almacenadas.
Aunque en la implementación del diseño físico de cada SGBD esto no suele ser así. Por
ejemplo, en SQL Server si añadimos una clave de tipo "Clustered" a una tabla haremos
que los datos se ordenen físicamente por el campo correspondiente.
El orden de las columnas lo determina cada consulta (que se realizan usando SQL).
Cada tabla debe poseer una clave primaria, esto es, un identificador único de cada registro
compuesto por una o más columnas.
Para establecer una relación entre dos tablas es necesario incluir, en forma de columna, en
una de ellas la clave primaria de la otra. A esta columna se le llama clave externa. Ambos
conceptos de clave son extremadamente importantes en el diseño de bases de datos.
3. LENGUAJE SQL
SQL (por sus siglas en inglés Structured Query Language) es un lenguaje declarativo de
acceso a bases de datos relacionales que permite especificar diversos tipos de
operaciones en ellas.
SQL se usa para describir conjuntos de datos que pueden ayudarle a responder preguntas.
Cuando usa SQL, debe emplear la sintaxis correcta (La sintaxis es el conjunto de reglas
mediante las cuales se combinan los elementos de un lenguaje correctamente). La sintaxis
de SQL se basa en la sintaxis del inglés y usa muchos de los mismos elementos que la
sintaxis de Visual Basic.
Por ejemplo, una simple instrucción SQL que recupera una lista de los apellidos de
contactos cuyo nombre es María podría ser similar a esto:
SELECT Apellidos
FROM Contactos
WHERE Nombre = 'María';
Una de sus características es el manejo del álgebra y el cálculo relacional que permiten
efectuar consultas con el fin de recuperar, de forma sencilla, información de bases de
datos, así como hacer cambios en ellas.
4
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 teórica y
su orientación al manejo de conjuntos de registros (y no a registros individuales) permite
una alta productividad en codificación y la orientación a objetos. De esta forma, una sola
sentencia puede equivaler a uno o más programas que se utilizarían en un lenguaje de
bajo nivel orientado a registros.
SQL incorporado y dinámico: Esto quiere decir que se pueden incorporar instrucciones
de SQL en lenguajes de programación como: C++, C, Java, PHP, Cobol, Pascal y Fortran.
Autorización: El LDD incluye comandos para especificar los derechos de acceso a las
relaciones y a las vistas.
4. DISEÑO DE PROGRAMAS
Según Thomas H. Grayson, un buen diseño de base de datos debe poseer siempre las
siguientes cualidades,
5
El diseño de una base de datos consiste en definir la estructura de los datos que debe
tener un sistema de información determinado. Para ello se suelen seguir por regla general
unas fases en el proceso de diseño, definiendo para ello el modelo conceptual, el lógico y
el físico.
El diseño lógico parte del resultado del diseño conceptual y da como resultado una
descripción de la estructura de la base de datos en términos de las estructuras de datos
que puede procesar un tipo de SGBD. El diseño lógico depende del tipo de SGBD que se
vaya a utilizar, se adapta a la tecnología que se debe emplear, pero no depende del
producto concreto. En el caso de bases de datos convencionales relacionales (basadas en
SQL para entendernos), el diseño lógico consiste en definir las tablas que existirán, las
relaciones entre ellas, normalizarlas, etc...
Cada uno de los programas está creado para fines específicos: generar documentos,
realizar operaciones con números, almacenar datos, dar formato a texto e imágenes, etc…
Cada uno de los programas posee uno o varios métodos para realizar una importación o
exportación de información.
Para que un programa pueda operar con la información generada por otro, precisa de
“convertidores”. Un convertidor es un programa incluido dentro del procesador de texto, de
la hoja de cálculo o el programa correspondiente, que cambia el formato del fichero
generado por un programa determinado al formato del programa que lo va a utilizar.
Esta posibilidad de trabajar con datos generados por otros programas se conoce como
“integración” de programas y se basa en la importación y exportación de datos con
intercambio de información.
6
Cuando hablamos de compartir datos debemos diferenciarlos en función del origen de los
mismos. Si los datos a compartir son generados por nuestra aplicación hablaremos de
“exportar” datos. Si los datos a compartir han sido generados por otra aplicación
hablaremos de “importar” datos.
6. CONCLUSIONES
Como hemos visto en este tema, una base de datos es una colección de datos
operacionales utilizados por todas las aplicaciones de una organización, una serie de
tablas que contienen informacion ordenada en alguna estructura que facilita el acceso a
esas tablas, ordenarlas y seleccionar filas y columnas de las tablas según criterios
específicos.
Se entiende por interoperación con otras aplicaciones a la posibilidad que tiene una
aplicación de compartir sus datos o documentos con otros programas del mismo tipo o con
otras aplicaciones.
7. BIBLIOGRAFÍA
http://www.campusmvp.es/recursos/post/Disenando-una-base-de-datos-en-el-
modelo-relacional.aspx
https://es.wikipedia.org/wiki/SQL
7
8