Download sistemas gestores de bases de datos

Document related concepts

Modelo de base de datos wikipedia , lookup

Base de datos relacional wikipedia , lookup

Modelo relacional wikipedia , lookup

SQL wikipedia , lookup

Sistema de gestión de bases de datos relacionales wikipedia , lookup

Transcript
DEPARTAMENTO DE INFORMÁTICA
CICLO FORMATIVO DE GRADO SUPERIOR
ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS
MÓDULO:
SISTEMAS GESTORES DE BASES DE DATOS
PROFESOR:
IGNACIO IZQUIERDO NAVAS
CURSO: 2010-2011
DISEÑO CURRICULAR
Este módulo se encuentra encuadrado en el segundo curso del ciclo formativo
correspondiente al título de Técnico Superior de Administración de Sistemas
Informáticos. El desarrollo curricular de este módulo tiene como referencias de partida
el Currículo del Ciclo Formativo, que establece los contenidos del módulo para la
C.A.A. y el decreto ley que establece los aspectos de partida para este desarrollo, el
perfil de la profesión, las capacidades terminales y los contenidos mínimos de cada
módulo.
1.- CAPACIDADES TERMINALES.



Obtener diseños conceptuales y lógicos normalizados para representar datos y
relaciones en un sistema de base de datos relacional.
Manejar información almacenada en el sistema con la ayuda de sistemas
gestores de datos definiendo, actualizando, consultando y exportando e
importando información.
Organizar y aplicar procedimientos en la administración de un sistema gestor de
base de datos relacional en un entorno multiusuario.
2.- DISTRIBUCIÓN Y DESARROLLO DE LOS CONTENIDOS.
La programación está constituida por seis temas donde se pretende conocer, comprender
y evaluar cada una de las técnicas objeto del proceso de aprendizaje. Los temas son los
siguientes:
Tema 1.- Sistema de información. Sistemas clásicos de gestión de ficheros.
1.
2.
3.
4.
5.
6.
7.
8.
9.
Sistema de información.
Cualidades de la información.
Conceptos básicos sobre ficheros. Definiciones.
Magnitudes características de los ficheros.
Clasificación de los ficheros según su uso.
Ficheros con organización secuencial.
Ficheros con organización secuencial indexada.
Ficheros con organización indexada.
Ficheros con organización directa.
Tema 2.- Sistemas gestores de bases de datos. Modelos jerárquico y en red.
1.
2.
3.
4.
5.
6.
Objetivos de los SGBD.
Definición de base de datos.
Elementos de una base de datos.
Arquitectura en tres niveles. Referencia ANSI-SPARC.
El diccionario de datos.
El sistema gestor de base de datos.
7. Lenguajes de un SGBD.
8. Funcionamiento de un SGBD.
9. Un sistema jerárquico – IMS.
10. Un sistema en red – IDMS.
Tema 3.- Modelo de datos relacional.
1. Origen, objetivos y evolución del modelo relacional.
1.1 Origen y objetivos del modelo relacional.
1.2 Evolución del modelo relacional.
2. Modelo relacional básico.
3. Estructura.
3.1 Ejemplo introductorio.
3.2 Dominio y atributo.
3.3 Definición formal de relación.
3.4 Propiedades de las relaciones.
3.5 Tipos de relaciones.
3.6 Información faltante. Valor nulo. Lógica trivaluada.
3.7 Lógica cuatrivaluada.
4. Reglas de integridad relacional.
4.1 Reglas de integridad relacional.
4.2 Regla de integridad de entidades.
4.3 Regla de integridad referencial
4.4 Reglas para claves ajenas.
5. Álgebra relacional.
5.1. Álgebra relacional.
5.2. Una gramática BNF para el álgebra relacional.
5.3. Compatibilidad. Operador Rename.
5.4. Operaciones relacionales de conjuntos.
5.4.1. Unión.
5.4.2. Intersección.
5.4.3. Diferencia.
5.4.4. Producto cartesiano ampliado.
5.5. Operaciones relacionales especiales.
5.5.1. Restricción.
5.5.2. Proyección.
5.5.3. Reunión.
5.5.4. División.
5.6. Ejemplos de álgebra relacional.
5.7. Operadores adicionales.
5.7.1. Cálculo y cálculo de agregados.
5.7.2. Asignación, inserción, actualización y borrado.
5.7.3. Operaciones externas.
5.7.4. Operaciones quizá.
5.7.5. Operaciones de anulación semántica.
6. Cálculo relacional.
6.1. Introducción al cálculo relacional.
6.2. Cálculo relacional orientado a tuplas.
6.2.1. Una gramática BNF para el cálculo relacional orientado a tuplas.
6.2.2. Variables de tuplas. Listas objetivo. Expresiones.
6.2.3. Ejemplos de expresiones de cálculo relacional orientado a tuplas.
6.2.4. Algoritmo de reducción de Codd: Paso de expresión de cálculo a
Álgebra relacional.
6.3. Cálculo relacional orientado hacia los dominios.
6.3.1. Una gramática BNF para el cálculo relacional orientado a
Dominios.
6.3.2. Variables de dominio. Condiciones de pertenencia.
6.3.3. Ejemplos de Expresiones de cálculo relacional orientado a
Dominios.
7. Otros modelos relacionales.
7.1. Modelo ampliado Codd.
7.2. Modelo ampliado Date.
7.3. Modelo relacional Versión 2 (MR/V2).
Tema 4. Diseño de bases de datos relacionales.
1. Fases de diseño de una base de datos relacional.
2. Diseño conceptual de datos. Modelo Entidad/Intrerrelación.
2.1. Objetivo del diseño conceptual.
2.2. Modelo Entidad/Interrelación.
2.2.1. Conceptos y representación.
2.2.1.1. Entidades.
2.2.1.2. Interrelaciones.
2.2.1.3. Atributos.
2.2.1.4. Dominios.
2.2.2. Tipos de correspondencias y cardinalidades.
2.2.3. Clases de interrelaciones.
2.2.4. Generalización y herencia.
3. Diseño lógico de las bases de datos en el modelo relacional.
3.1. Objetivo.
3.2. Transformación del esquema conceptual al relacional.
3.3. Las opciones de clave ajena en la trasformación del ME/R al relacional.
3.4. Transformación de tipos y subtipos.
4. Normalización.
4.1. Dependencia funcional.
4.2. Diagramas de dependencia funcional.
4.3. Dependencia funcional completa.
4.4. Formas normales.
4.5. Normalización de relaciones.
Tema 5.- SQL
1. Bases de datos y tablas.
1.1. Creación de bases de datos, tablas e índices
1.2. Restricciones.
1.2.1. Primary key y unique.
1.2.2. Foreign key.
1.2.3. Check.
2.
3.
4.
5.
6.
7.
8.
1.2.4. Default.
1.2.5. Null/NotNull.
1.3. Modificar tablas.
1.4. Tablas temporales.
Consultas.
2.1. Instrucción Select.
2.2. Reuniones (Join).
2.2.1. Internas.
2.2.2. Externas.
2.3. Funciones de agregados.
2.4. Top y Percent.
2.5. Select anidados: subconsultas.
2.5.1. No correlacionadas.
2.5.2. Correlacionadas.
2.6. Select con Union, Intersect y Minus.
Vistas.
3.1. Definición.
3.2. Consulta.
3.3. Encriptación.
3.4. Opción de chequeo.
3.5. Modificación.
Modificación.
4.1. Insert.
4.1.1. Insert.
4.1.2. Insert/Select. Insert/Exec.
4.1.3. Select Into.
4.1.4. Bulk Insert.
4.2. Update.
4.3. Delete.
Programación con Transat-SQL.
5.1. Declaración de variables.
5.2. Asignación.
5.2.1. Set.
5.2.2. Select de asignación.
5.3. Instrucciones de control de flujo del programa y funciones.
Procesos por lotes.
6.1. Ámbito del proceso. Partícula GO.
6.2. Errores sintácticos y en tiempo de ejecución.
Transacciones.
7.1. Declaración de transacciones. Confirmación y anulación.
7.2. Transacciones implícitas y explicitas.
7.3. Comprobación de errores.
7.4. Niveles de aislamiento.
7.4.1. Read Uncommitted (Lectura no confirmada).
7.4.2. Read Committed (Lectura confirmada).
7.4.3. Repeatable Read (Lectura repetible).
7.4.4. Serializable (Serializable).
Prodecimientos almacenados.
8.1. Creación.
8.2. Parámetros de entrada y salida.
8.3. Ejecución.
8.4. Encriptación.
8.5. Modificación.
8.6. Procedimientos almacenados del sistema.
8.7. Procedimiento almacenado de arranque automático (autostart).
8.8. Procedimientos almacenados extendidos.
9. Desencadenadores (Triggers).
9.1. Creación
9.2. Tablas inserted y deleted.
9.3. Borrado en cascada, integridad referencial y desencadenadores.
Tema 6.- Control y administración de un sistema relacional.
1. Introducción.
2. El Administrador de la base de datos.
3. Técnicas y procedimientos para la seguridad de los datos.
3.1. Control de accesos
3.2. Integridad de la base de datos.
3.2.1. Técnicas preventivas.
3.2.2. Técnicas curativas.
4. Administración de la seguridad en el acceso a los datos.
4.1. Capas de Seguridad.
4.1.1. Seguridad del sistema operativo.
4.1.2. Seguridad del Sistema Gestor de Bases de datos.
4.1.3. Seguridad de la Base de Datos.
4.1.4. Seguridad del objeto.
4.2. Gestión de identificadores de inicio de sesión.
4.3. Gestión de usuarios de las bases de datos.
4.4. Gestión de funciones de una base de datos.
4.5. Gestión de permisos a objetos.
4.6. Gestión de permisos a sentencias.
5. Copias de seguridad.
5.1. Archivos de una base de datos.
5.2. Registro de transacciones.
5.3. Copias de seguridad.
5.4. Realización de copias de seguridad.
5.5. Restauración y recuperación.
Tema 7.- Bloqueos.
1. Bloqueo.
1.1. El Administrador de bloqueos.
1.2. El administrador de bloqueos y los niveles de aislamiento.
1.3. Interbloqueos (deadlocks).
2. Tipos de bloqueo para los datos de usuario.
2.1. Modos de bloqueo
2.2. Granularidad del bloqueo
2.3. Duración del bloqueo.
2.4. Propiedad del bloqueo.
2.5. Examinar bloqueos
2.6. Sugerencias de bloqueos.
Tema 8.- Interfases de acceso a las Bases de Datos.
1. SQL Server y Visual Basic 6.0/Visual Basic .NET
2. SQL Server y ASP/ASP .NET
3.- ELEMENTOS CURRICULARES DE CADA TEMA.








El TEMA 1 trata de dar una visión general de los sistemas clásicos de gestión de
ficheros.
El TEMA 2 realiza un estudio general de los sistemas gestores de bases de datos
y se hacen las pertinentes comparaciones con los sistemas clásicos de ficheros,
presentando las ventajas de los primeros respecto a estos últimos.. También se
hace un desarrollo pormenorizado de dos de los modelos existentes: jerárquico y
de red.
El TEMA 3 se centra en los sistemas gestores de bases de datos relacionales,
dando a conocer su terminología, reglas de integridad y lenguajes relacionales.
El TEMA 4 trata el análisis de datos de un sistema informático, es decir, el
diseño conceptual de datos y el diseño lógico de datos para un sistema de base
de datos relacional.
El TEMA 5 presenta el lenguaje de consulta estructurado SQL y el manejo de
este desde un lenguaje anfitrión.
El TEMA 6 trata los procedimientos y técnicas que garanticen el control, la
seguridad, la integridad y confidencialidad en una base de datos relacional, en un
entorno multiusuario.
El TEMA 7 trata de concurrencia y bloqueos.
El TEMA 8 trata la creación y uso de interfases gráficos mediante lenguajes
como Visual Basic y ASP.
Todos los temas contienen una serie de actividades prácticas.
4.- TEMPORIZACIÓN.
TEMAS
1
2
3
4
5
6
TRIMESTRE 1 TRIMESTRE 2
TRIMESTRE 3
FORMACIÓN
EN
CENTROS
DE
TRABAJO
X
X
X
X
X
X
X
X
7
8
TOTAL HORAS MÓDULO : 220
5.- MATERIALES Y RECURSOS DIDÁCTICOS A UTILIZAR
Para conseguir los objetivos planteados inicialmente se debe disponer de los recursos
didácticos adecuados. En concreto, el planteamiento propuesto en esta memoria incluye
los siguientes recursos didácticos.














Pizarra sintética con rotuladores.
Apuntes de clase.
Bibliografía indicada en la programación.
Ordenadores del aula (uno por alumno).
Cañón de proyección.
Fotocopias y listados de impresora.
Disquetes magnéticos y CDs.
Herramienta CASE.
S.G.B.D. Relacional.
Lenguaje de programación anfitrión para el SQL..
Visual Basic 6 y Visual Basic .NET
Servidor ASP y ASP .NET
Servidor WEB
Manuales.
6.- CRITERIOS DE EVALUACIÓN.
Los criterios a seguir en el proceso de evaluación de los alumnos estarán relacionados
con las capacidades terminales enunciadas al principio.
En lo referente a las dos evaluaciones que han de hacerse, aplicaremos los
siguientes criterios:
1ª Evaluación:




Identificar las utilidades para la definición y manejo de información en un
sistema gestor de ficheros, su finalidad y modos de operación.
Citar las ventajas de un sistema gestor de base de datos sobre un sistema gestor
de ficheros.
Describir la arquitectura de un sistema gestor de base de datos y conceptos tales
como: esquema, subesquema y esquema interno, diccionario de datos, lenguajes
de definición y manipulación de datos.
Explicar los aspectos básicos de los modelos jerárquico y en red. Definición de
esquemas, subesquemas, lenguaje de manipulación de datos e implementación
física.





Explicar los aspectos básicos del modelo relacional, tales como los conceptos
asociados a la representación de la información y las operaciones básicas que
proporciona el álgebra y el cálculo relacional.
Justificar la importancia del análisis y diseño de datos y relaciones normalizado.
Describir un procedimiento y las fases de normalización de un diseño de base
de datos.
Describir la sintaxis de un lenguaje gráfico de representación de diseño
conceptual y lógico de datos y relaciones.
En un supuesto práctico obtener el diseño conceptual y lógico de una base de
datos relacional.
2ª Evaluación:








Describir las órdenes básicas del lenguaje SQL para la definición, consulta,
actualización y exportación/importación de datos. Su función y sintaxis.
Identificar utilidades que proporciona un gestor de base de datos relacional
concreto para la definición, actualización, consulta, y exportación de datos y
explicar su finalidad y modo de operación básico.
En un supuesto práctico en el que se dispone de un sistema gestor de base de
datos relacional y su documentación de usuario:
o Definir a partir del diseño lógico las estructuras de datos mediante el
lenguaje de definición de datos.
o Realizar operaciones de actualización y consulta de información
mediante el SQL.
o Realizar operaciones de importación/exportación de datos entre el SGBD
y otros sistemas, seleccionando las utilidades e instrucciones adecuadas y
un formato de datos común.
Dado un supuesto práctico, realizar el diseño conceptual, lógico y físico de la
base de datos e implementar la aplicación haciendo uso de un lenguaje de
programación anfitrión y el SQL inmerso.
Justificar la necesidad de la administración de una base de datos en entornos
multiusuario y describir las funciones típicas del administrador de bases de
datos.
Describir procedimientos y técnicas que garanticen la integridad y
confidencialidad de la información en una base de datos, tales como: definición
de vistas, definición de privilegios acceso y utilización, control de concurrencias
y bloqueos, definición de unidades lógicas de tratamiento, etc...
Describir las órdenes de SQL relacionales con el control, la seguridad,
integridad y confidencialidad de la información, su función y sintaxis.
En un supuesto práctico en el que se dispone de un sistema multiusuario con un
SGBD relacional y el manual de administración y uso del citado SGBD:
o Interpretar la información que contiene la documentación.
o Reconocer variables de entorno y configuración del SGBD, ficheros de
auditoría, y control de transacciones, estructura del diccionario de datos
y su finalidad.
o Elegir las utilidades adecuadas, su orden de aplicación y las condiciones
idóneas del sistema para realizar funciones de administración de la base
de datos tales como: creación de la base de datos, gestión de privilegios,
mantenimiento del diccionario de datos, copia de seguridad, recuperación
de información, etc...
o Proponer un esquema de vistas y de privilegios de acceso que garanticen
la confidencialidad de la información para los usuarios propuestos.
o Proponer las índices que se deben crear para mejorar el rendimiento del
sistema en tiempo de acceso a unos datos propuesto.
7.- CRITERIOS DE CALIFICACIÓN.
La asistencia a clase es obligatoria. Las faltas reiteradas, ocasionarán la pérdida de la
evaluación continua del alumno.
Para cada tema se propondrán una serie de ejercicios. La realización correcta de estos
así como la adecuada presentación, se valorará a la hora de la calificación de alumno.
La actitud y el grado de participación del alumno en clase también tendrá incidencia en
la calificación.
La base para la calificación se obtendrá de la realización de exámenes correspondientes
a las respectivas evaluaciones. Los alumnos que no superen estas realizarán una prueba
final.
8.- BIBLIOGRAFIA.
1. Gardarin, G.- Bases de Datos.- Paraninfo.- 1989.- ISBN: 84-283-1554-X.
2. De Miguel, Adoración y Piattini, Mario.- Fundamentos y modelos de Bases de
Datos.- RA-MA.- 1997.- ISBN: 84-7897-283-8.
3. De Miguel, Adoración y otros.- Diseño de Bases de Datos Relacionales.- RAMA.- 1999.- ISBN:84-7897-385-0.
4. De Miguel, Adoración y otros.- Diseño de Bases de Datos. Problemas resueltos.RA-MA.- 2001.- ISBN: 84-7897-436-9.
5. Grau, Luis y López, Ignacio.- Problemas de Bases de Datos.- Editorial Sanz y
Torres.- 1998.- ISBN: 84-88667-36-1.
6. Date, C.J..- Introducción a los Sistemas de Bases de Datos.- Volumen 1.- Quinta
Edición.- Addison Wesley Iberoamericana.- 1993.- ISBN: 0-201-51859-7.
7. Lucas, Angel.- Diseño y Gestión de Sistemas de Bases de Datos.- Paraninfo.1993.- ISBN: 84-283-2011-X.
8. Delgado, Alberto.- Microsoft SQL Server 7.- Prentice Hall.- 1999.- ISBN: 848322-133-0.
9. Soukup, Ron y Delaney, Kalen.- A fondo Microsoft SQL Server 7.0.- McGrawHill.- 1999.- ISBN:84-481-2514-2.
10. García, Reding, Whalen y DeLuca. Guía completa de Microsoft SQL Server
2000.- McGraw-Hill.- 2001.- ISBN.84-481-3147-9.
11. Dalton, Patrick y Whitehead, Paul.- La Biblia de SQL Server 2000.- Anaya
Multimedia.- 2001.- ISBN: 84-415-1211-6.
12. Pérez, Cesar.- Domine Microsoft SQL Server 2000.- Ra-ma.- 2003.- ISBN: 847897-546-2.
13. Ceballos, Fco. Javier.- Enciclopedia de Microsoft Visual Basic 6.- RA-MA.1999.- ISBN: 84-7897-386-9.
14. Ceballos, Fco. Javier.- Microsoft Visual Basic 6. Curso de Programación.
Segunda Edición.- RA-MA.- 1999.- ISBN: 84-7897-357-5.
15. Charte, Francisco.- Programación con Visual Basic 6.- Anaya Multimedia.1998.- ISBN: 84-415-0590-X.