Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Introducción al modelo relacional en MySQL, Apuntes de Administración de Empresas

Una introducción básica al modelo relacional de bases de datos en mysql. Se explica la estructura de datos, el álgebra relacional y se presentan ejemplos prácticos de creación y manipulación de tablas en mysql. Además, se incluyen consejos sobre el uso de variables locales y la creación de bases de datos.

Tipo: Apuntes

2016/2017

Subido el 25/06/2017

amarco7
amarco7 🇪🇸

3.6

(28)

6 documentos

1 / 460

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Rafael Camps Paré
Software libre
U
Formación de Posgrado
Bases de datos
71Z799014MO
Oscar Pérez Mora
Carme Martín Escofet
Marc Gibert Ginestà
Dolors Costal Costa
Luis Alberto Casillas Santillán
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Vista previa parcial del texto

¡Descarga Introducción al modelo relacional en MySQL y más Apuntes en PDF de Administración de Empresas solo en Docsity!

Rafael Camps Paré

Software libre

U

F o r m a c i ó n d e P o s g r a d o

Bases de datos

71Z799014MO

Oscar Pérez Mora

Carme Martín Escofet

Marc Gibert Ginestà

Dolors Costal Costa

Luis Alberto Casillas Santillán

 FUOC • 71Z799014MO 2 Bases de datos

David Megías Jiménez Jordi Mas Hernández Rafael Camps Paré

Coordinador Coordinador Autor Ingeniero de Informática por la UAB. Magíster en Técnicas Avanzadas de Automatización de Procesos por la UAB. Doctor en Informática por la UAB. Profesor de los Estudios de Informática y Multimedia de la UOC.

Coordinador general de Softcatalà y desarrollador del procesador de textos libre Abiword. Miembro fundador de Softcatalà y de la red telemática RedBBS. En calidad de consultor, ha trabajado en empresas como Menta, Telépolis, Vodafone, Lotus, eresMas, Amena y Terra España.

Profesional informático en varias empresas. Ha sido profesor universitario en la Facultad de Informática de Barcelona de la Universidad Politécnica de Cataluña. Actualmente está adscrito a la Escuela Universitaria Politécnica de Vilanova i la Geltrú.

Luis Alberto Casillas Santillán Dolors Costal Costa Marc Gibert Ginestà

Autor Autora Autor Licenciado en Informática (1995), maestro en Sistemas (1998), doctorante en Ingeniería y Tecnología (2003), está estudiando el doctorado en la UOC. Profesor universitario desde marzo de

  1. Investigador en Inteligencia Artificial desde 1998. Consultor Universitario para cuestiones educativas.

Doctora en Informática por la Universidad Politécnica de Cataluña. Profesora titular del Departamento de Lenguajes y Sistemas Informáticos de la Universidad Politécnica de Cataluña, asignada a la Facultad de Informática de Barcelona.

Ingeniero en Informática por la Universidad Ramon Llull. Socio fundador y jefe de proyectos de Cometa Technologies, empresa dedicada a dar soluciones en tecnologías de la información, basadas en el uso de estándares y herramientas de código abierto. Profesor del Máster en Seguridad en Tecnologías de la Información en Enginyeria y Arquitectura La Salle y consultor del Master Internacional en Software Libre de la UOC.

Carme Martín Escofet Oscar Pérez Mora

Autora Autor Licenciada en Informática por la Universidad Politécnica de Cataluña. Profesora de la asignatura Introducción a las bases de datos en la Facultad de Informática de Barcelona, y de la asignatura Sistemas orientados a bases de datos en la Facultad de Matemáticas y Estadística. También ha sido profesora de las asignaturas Diseño de sistemas y Gestión de sistemas informáticos en la Escuela Universitaria Politécnica de Vilanova i la Geltrú.

Ingeniero en Comunicaciones y Electrónica por la Universidad de Guadalajara (México) y Maestro en Sistemas de Información. Ha participado en diversas publicaciones e impartido cursos especializados. Miembro Fundador del Marichi del SUTUdeG y del Grupo Linux de Occidente A. C. (www.glo.org.mx). Organizador del Festival GNU/Linux y Software Libre (http://www.festivaldesoftwarelibre.org).

Primera edición: mayo 2005 © Fundació per a la Universitat Oberta de Catalunya Av. Tibidabo, 39-43, 08035 Barcelona Material realizado por Eureca Media, SL © Autores: Rafael Camps Paré, Luis Alberto Casillas Santillán, Dolors Costal Costa, Marc Gibert Ginestà, Carme Martín Escofet, Oscar Pérez Mora Depósito legal: B-15.562- ISBN: 84-9788-269-

Se garantiza permiso para copiar, distribuir y modificar este documento según los términos de laVersion 1.2 o cualquiera posterior publicada por la Free Software Foundation , sin secciones invariantes ni textos de cubierta delantera GNU Free Documentation License , o trasera. Se dispone de una copia de la licencia en el apartado “GNU Free Documentation License” de este documento.

 FUOC • 71Z799014MO 5 Bases de datos

Introducción

Las bases de datos son el método preferido para el almacenamiento estructu- rado de datos. Desde las grandes aplicaciones multiusuario, hasta los teléfonos móviles y las agendas electrónicas utilizan tecnología de bases de datos para ase- gurar la integridad de los datos y facilitar la labor tanto de usuarios como de los programadores que las desarrollaron.

Desde la realización del primer modelo de datos, pasando por la administra- ción del sistema gestor, hasta llegar al desarrollo de la aplicación, los conceptos y la tecnología asociados son muchos y muy heterogéneos. Sin embargo, es im- prescindible conocer los aspectos clave de cada uno de estos temas para tener éxito en cualquier proyecto que implique trabajar con bases de datos.

En este curso trataremos de dar una visión completa de los conceptos relacio- nados con los sistemas gestores de bases de datos. En los primeros capítulos ve- remos los aspectos involucrados en los motores de estos almacenes de datos, su evolución histórica y los distintos tipos de organización y abs-tracción que han ido surgiendo desde su conceptualización hasta nuestros días.

A continuación profundizaremos en el modelo llamado relacional (el más usa- do en nuestros días), proporcionando los métodos y herramientas que nos per- mitan representar necesidades de almacenamiento y consulta de datos en este modelo. En el siguiente capítulo estudiaremos a fondo el lenguaje de consultas estructurado SQL, imprescindible para trabajar con bases de datos relacionales, ya sea directamente o a través de cualquier lenguaje de programación.

El diseño de bases de datos tiene también un capítulo dedicado a aprender a modelar y representar gráficamente una base de datos, a detectar los posibles problemas de diseño antes de que éstos afecten a la aplicación, y a construir ba- ses de datos óptimas para los distintos casos de relaciones entre entidades que formarán nuestra base de datos.

Una vez sentadas estas bases, estaremos en disposición de examinar detenida- mente dos de los sistemas gestores de bases de datos de software libre más usa- dos y populares actualmente. Así pues, aprenderemos el uso, administración y particularidades de MySQL y PostgreSQL mediante ejemplos y casos prácticos. También veremos las herramientas de consulta y administración gráficas para estos dos sistemas gestores de bases de datos, que nos permitirán mejorar nues- tra productividad en el trabajo diario con ellos.

A continuación, veremos los métodos de acceso a estos sistemas gestores de bases de datos desde algunos lenguajes de programación. En cada caso, comentaremos

 FUOC • 71Z799014MO 7 Bases de datos

Objetivos

Los objetivos que el estudiante deberá alcanzar al finalizar el curso Bases de datos son los siguientes:

  • Comprender los diferentes modelos de bases de datos, y en concreto do- minar el modelo relacional.
  • Ser capaz de realizar el modelo de una base de datos relacional, a partir de la especificación de requerimientos de un proyecto, comprendiendo y apli- cando los conceptos y transformaciones implicados.
  • Conocer el uso y administración de dos de los gestores de bases de datos relacionales más populares en el ámbito del software libre: PostgreSQL y MySQL.
  • Tener experiencia en el desarrollo de aplicaciones en conexión con bases de datos en varios lenguajes.

 FUOC • 71Z799014MO 8 Bases de datos

Contenidos

Módulo didáctico 1 Introducción a las bases de datos Rafael Camps Paré

  1. Concepto y origen de las BD y de los SGBD
  2. Evolución de los SGBD
  3. Objetivos y funcionalidad de los SGBD
  4. Arquitectura de los SGBD
  5. Modelos de BD
  6. Lenguajes y usuarios
  7. Administración de BD

Módulo didáctico 2 El modelo relacional y el álgebra relacional Dolors Costal Costa

  1. Introducción al modelo relacional
  2. Estructura de los datos
  3. Operaciones del modelo relacional
  4. Reglas de integridad
  5. El álgebra relacional

Módulo didáctico 3 El lenguaje SQL Carme Martín Escofet

  1. Sentencias de definición
  2. Sentencias de manipulación
  3. Sentencias de control
  4. Sublenguajes especializados

Módulo didáctico 4 Introducción al diseño de bases de datos Dolors Costal Costa

  1. Introducción al diseño de bases de datos
  2. Diseño conceptual: el modelo ER
  3. Diseño lógico: la transformación del modelo ER en el modelo relacional

Módulo didáctico 5 Bases de datos en MySQL Luis Alberto Casillas Santillán; Marc Gibert Ginestà; Oscar Pérez Mora

  1. Características de MySQL
  2. Acceso a un servidor MySQL
  3. Creación y manipulación de tablas

Introducción

a las bases

de datos

Rafael Camps Paré

 FUOC • 71Z799014MO Introducción a las bases de datos

  • Introducción Índice
  • Objetivos
    1. Concepto y origen de las BD y de los SGBD
    1. Evolución de los SGBD
    • 2.1. Los años sesenta y setenta: sistemas centralizados
    • 2.2. Los años ochenta: SGBD relacionales................................................
    • 2.3. Los años noventa: distribución, C/S y 4GL.......................................
    • 2.4. Tendencias actuales
    1. Objetivos y servicios de los SGBD
    • 3.1. Consultas no predefinidas y complejas.............................................
    • 3.2. Flexibilidad e independencia.............................................................
    • 3.3. Problemas de la redundancia
    • 3.4. Integridad de los datos
    • 3.5. Concurrencia de usuarios
    • 3.6. Seguridad
    • 3.7. Otros objetivos...................................................................................
    1. Arquitectura de los SGBD
    • 4.1. Esquemas y niveles
    • 4.2. Independencia de los datos
    • 4.3. Flujo de datos y de control
    1. Modelos de BD
    1. Lenguajes y usuarios
    1. Administración de BD
  • Resumen
  • Actividades
  • Ejercicios de autoevaluación
  • Solucionario
  • Glosario
  • Bibliografía

 FUOC • 71Z799014MO 7 Introducción a las bases de datos

1. Concepto y origen de las BD y de los SGBD

Las aplicaciones informáticas de los años sesenta acostumbraban a darse total- mente por lotes ( batch ) y estaban pensadas para una tarea muy específica rela- cionada con muy pocas entidades tipo.

Cada aplicación (una o varias cadenas de programas) utilizaba ficheros de mo- vimientos para actualizar (creando una copia nueva) y/o para consultar uno o dos ficheros maestros o, excepcionalmente, más de dos. Cada programa trata- ba como máximo un fichero maestro, que solía estar sobre cinta magnética y, en consecuencia, se trabajaba con acceso secuencial. Cada vez que se le quería añadir una aplicación que requería el uso de algunos de los datos que ya exis- tían y de otros nuevos, se diseñaba un fichero nuevo con todos los datos ne- cesarios (algo que provocaba redundancia) para evitar que los programas tuviesen que leer muchos ficheros.

A medida que se fueron introduciendo las líneas de comunicación, los termi- nales y los discos, se fueron escribiendo programas que permitían a varios usuarios consultar los mismos ficheros on-line y de forma simultánea. Más ade- lante fue surgiendo la necesidad de hacer las actualizaciones también on-line.

A medida que se integraban las aplicaciones, se tuvieron que interrelacionar sus ficheros y fue necesario eliminar la redundancia. El nuevo conjunto de fi- cheros se debía diseñar de modo que estuviesen interrelacionados; al mismo tiempo, las informaciones redundantes (como por ejemplo, el nombre y la di- rección de los clientes o el nombre y el precio de los productos), que figuraban en los ficheros de más de una de las aplicaciones, debían estar ahora en un solo lugar.

El acceso on-line y la utilización eficiente de las interrelaciones exigían estruc- turas físicas que diesen un acceso rápido, como por ejemplo los índices, las multilistas, las técnicas de hashing , etc.

Estos conjuntos de ficheros interrelacionados , con estructuras complejas y compartidos por varios procesos de forma simultánea (unos on-line y otros por lotes), recibieron al principio el nombre de Data Banks , y después, a inicios de los años setenta, el de Data Bases. Aquí los denominamos bases de datos (BD).

El software de gestión de ficheros era demasiado elemental para dar satisfac- ción a todas estas necesidades. Por ejemplo, el tratamiento de las interrelaciones no estaba previsto, no era posible que varios usuarios actualizaran datos simul- táneamente, etc. La utilización de estos conjuntos de ficheros por parte de los programas de aplicación era excesivamente compleja, de modo que, especial- mente durante la segunda mitad de los años setenta, fue saliendo al mercado

Aplicaciones informáticas de los años sesenta La emisión de facturas, el control de pedidos pendientes de servir, el mantenimiento del fichero de productos o la nómina del personal eran algunas de las aplicaciones informáticas habituales en los años sesenta.

Integración de aplicaciones Por ejemplo, se integra la aplicación de facturas, la de pedidos pendientes y la gestión del fichero de productos.

 FUOC • 71Z799014MO 9 Introducción a las bases de datos

2. Evolución de los SGBD

Para entender mejor qué son los SGBD, haremos un repaso de su evolución desde los años sesenta hasta nuestros días.

2.1. Los años sesenta y setenta: sistemas centralizados

Los primeros SGBD –en los años sesenta todavía no se les denominaba así– estaban orientados a facilitar la utilización de grandes conjuntos de datos en los que las interrelaciones eran complejas. El arquetipo de aplicación era el Bill of materials o Parts explosion , típica en las industrias del automóvil, en la cons- trucción de naves espaciales y en campos similares. Estos sistemas trabajaban exclusivamente por lotes ( batch ).

Al aparecer los terminales de teclado, conectados al ordenador central mediante una línea telefónica, se empiezan a construir grandes aplicaciones on-line tran- saccionales (OLTP). Los SGBD estaban íntimamente ligados al software de co- municaciones y de gestión de transacciones.

Aunque para escribir los programas de aplicación se utilizaban lenguajes de alto nivel como Cobol o PL/I, se disponía también de instrucciones y de subru- tinas especializadas para tratar las BD que requerían que el programador cono- ciese muchos detalles del diseño físico, y que hacían que la programación fuese muy compleja.

Puesto que los programas estaban relacionados con el nivel físico, se debían modificar continuamente cuando se hacían cambios en el diseño y la organi- zación de la BD. La preocupación básica era maximizar el rendimiento: el tiempo de respuesta y las transacciones por segundo.

2.2. Los años ochenta: SGBD relacionales

Los ordenadores minis , en primer lugar, y después los ordenadores micros , extendieron la informática a prácticamente todas las empresas e instituciones.

Los SGBD de los años sesenta y setenta (IMS de IBM, IDS de Bull, DMS de Univac, etc.) eran sistemas totalmente centralizados , como corres- ponde a los sistemas operativos de aquellos años, y al hardware para el que estaban hechos: un gran ordenador para toda la empresa y una red de terminales sin inteligencia ni memoria.

El Data Base / Data Comunications IBM denominaba Data Base/ Data Comunications (DB/DC) el software de comunicaciones y de gestión de transacciones y de datos. Las aplicaciones típicas eran la reserva/compra de billetes a las compañías aéreas y de ferrocarriles y, un poco más tarde, las cuentas de clientes en el mundo bancario.

 FUOC • 71Z799014MO 10 Introducción a las bases de datos

Esto exigía que el desarrollo de aplicaciones fuese más sencillo. Los SGBD de los años setenta eran demasiado complejos e inflexibles, y sólo los podía uti- lizar un personal muy cualificado.

Todos estos factores hacen que se extienda el uso de los SGBD. La estandariza- ción, en el año 1986, del lenguaje SQL produjo una auténtica explosión de los SGBD relacionales.

Los ordenadores personales Durante los años ochenta aparecen y se extienden muy rápidamente los ordenadores perso- nales. También surge software para estos equipos monousuario (por ejemplo, dBase y sus de- rivados, Access), con los cuales es muy fácil crear y utilizar conjuntos de datos, y que se denominan personal data bases. Notad que el hecho de denominar SGBD estos primeros sis- temas para PC es un poco forzado, ya que no aceptaban estructuras complejas ni interrela- ciones, ni podían ser utilizados en una red que sirviese simultáneamente a muchos usuarios de diferentes tipos. Sin embargo, algunos, con el tiempo, se han ido convirtiendo en autén- ticos SGBD.

2.3. Los años noventa: distribución, C/S y 4GL

Al acabar la década de los ochenta, los SGBD relacionales ya se utilizaban prác- ticamente en todas las empresas. A pesar de todo, hasta la mitad de los noven- ta, cuando se ha necesitado un rendimiento elevado se han seguido utilizando los SGBD prerrelacionales.

A finales de los ochenta y principios de los noventa, las empresas se han en- contrado con el hecho de que sus departamentos han ido comprando orde- nadores departamentales y personales, y han ido haciendo aplicaciones con BD. El resultado ha sido que en el seno de la empresa hay numerosas BD y varios SGBD de diferentes tipos o proveedores. Este fenómeno de multiplica- ción de las BD y de los SGBD se ha visto incrementado por la fiebre de las fusiones de empresas.

Esta distribución ideal se consigue cuando las diferentes BD son soportadas por una misma marca de SGBD, es decir, cuando hay homogeneidad. Sin em-

La aparición de los SGBD relacionales* supone un avance importante para facilitar la programación de aplicaciones con BD y para conseguir que los programas sean independientes de los aspectos físicos de la BD.

La necesidad de tener una visión global de la empresa y de interrelacio- nar diferentes aplicaciones que utilizan BD diferentes, junto con la fa- cilidad que dan las redes para la intercomunicación entre ordenadores, ha conducido a los SGBD actuales, que permiten que un programa pue- da trabajar con diferentes BD como si se tratase de una sola. Es lo que se conoce como base de datos distribuida.

*** Oracle aparece en el año 1980.**