Herramientas CASE

Desarrollo de Aplicaciones en Entornos de Cuarta Generación y con Herramientas CASE Tercero de Bachillerato Técnico en C

Views 167 Downloads 3 File size 6MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Desarrollo de Aplicaciones en Entornos de Cuarta Generación y con Herramientas CASE Tercero de Bachillerato Técnico en Comercio y Administración Especialidad Aplicaciones Informáticas. Alumn@:

2

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

Lcdo. Wilver E. Cevallos O ...Porque no es lo mismo instruir que formar para la vida..."

44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

CONTENIDO TEMÁTICO.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

Contenido

Contenido Temático..........................................................................................................2 Campo Ocupacional del Estudiante de Bachillerato Técnico Informática.......................4 Iconografía.........................................................................................................................5 Unidad N°1: Introducción. Ventajas De La Utilización De Bases De Datos......................6 Competencia....................................................................................................................6 Importancia y Características de la base de datos............................................................6 Conceptos básicos de archivos computacionales..............................................................6 Objetivos de los sistemas de bases de datos.....................................................................9 Abstracción de la información........................................................................................10 Modelos de Base de Datos.............................................................................................12 Arquitectura de los sistemas..........................................................................................20 Acceso a Sistemas de Bases de Datos............................................................................21 Unidad Nº2: Diseño de Bases de Batos Relacionales......................................................24 Competencia..................................................................................................................24 bases De Datos Relacionales..........................................................................................24 El Diagrama de Entidad - Relación................................................................................27 Metodología de diseño conceptual..................................................................................30 Metodología del diseño lógico de datos...........................................................................30 Ejercicio resuelto de DER...............................................................................................33 Unidad N° 3: Optimización de las Bases de Datos Relacionales.....................................38 Competencia..................................................................................................................38 Teoría de la Normalización.............................................................................................39 Primera Forma Normal (1FN).........................................................................................42 Segunda Forma Normal (2FN)........................................................................................42 Tercera Forma Normal (3FN)..........................................................................................44 Unidad N°4: Organizacion de un Sistema Gestor de Base de Datos Relacional.............53 Competencia..................................................................................................................53 Sistema de Gestión de Bases de Datos...........................................................................53 Ventajas de los SGBD....................................................................................................54 Estructura de un SGBD................................................................................................55 Usuarios relacionados con los Sistemas de Bases de Datos............................................58 Unidad N° 5: Lenguaje de Consulta Estructurado. SQL..................................................60 Competencia..................................................................................................................60 Reseña histórica del SQL...............................................................................................60 Característica del SQL...................................................................................................61

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

UNIDAD N° 6: Lenguaje de Definicion de Datos. LDD.....................................................64 Competencia..................................................................................................................64 Misión del LDD..............................................................................................................64 Objetos de un Sistema de Bases de Datos......................................................................64 Tablas...........................................................................................................................65 Índices..........................................................................................................................74 UNIDAD N° 7: Lenguaje De Manipulación De Datos........................................................81 Competencia..................................................................................................................81 INSERT..........................................................................................................................81 SELECT.........................................................................................................................83 UPDATE........................................................................................................................85 DELETE........................................................................................................................86 UNIDAD N° 8: Desarrollo de una Aplicación De Gestión.................................................90 Competencia..................................................................................................................90 Informe de especificación de requisitos..........................................................................91

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

CAMPO OCUPACIONAL DEL ESTUDIANTE DE BACHILLERATO TÉCNICO INFORMÁTICA. Desarrollo de Aplicaciones.

 

Información sobre simbología para la elaboración de diagramas. Información sobre diseño de bases de datos relacionales. Información sobre accesos a bases de datos (lenguaje SQL).

 

Documentación sobre herramientas CASE. Información sobre diseño de interfaces de usuario (pantallas, menús, informes, etc.).

Procesos, métodos y procedimientos:

 

Procedimientos de elaboración de diagramas para la resolución de problemas. Procedimientos de manejo de herramientas CASE para la generación de bases de datos y otras aplicaciones (pantallas, menús, formatos de impresión,...).

Principales resultados del trabajo:

   

Obtención de código ejecutable por el computador.



Adaptación de aplicaciones existentes para que satisfagan nuevos requerimientos

Pruebas del funcionamiento del programa. Instrucciones de uso de las aplicaciones desarrolladas. Integración y enlace de programas y rutinas.

Personas y/u organismos destinatarios del servicio:

   

Usuarios finales. Programadores. Analistas de sistemas. Técnicos de sistemas. Clientes.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

ICONOGRAFÍA.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

7

44 *

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

UNIDA D N°1: INTRODUCCIÓN. VENTAJAS DE LA UTILIZACIÓN DE BASES DE DATOS.

Competencia. Relaciona los modelos de bases de datos más comunes a partir de sus componentes para realizar el diseño contextual de datos de una empresa de una manera ágil y precisa.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

8

1. 2. 3. 4. 5. 6. 7. 8. 9.

¿Qué es un sistema de Información? ¿Cuáles son los elementos de un sistema de información? ¿Cuál es el papel que cumple el analista de sistemas? ¿Quiénes son los participantes en el análisis de sistemas de información? Realizar una explicación breve sobre las faces de definición, desarrollo y mantenimiento en el análisis de los sistemas de información. Nombre los modelos de planificación de ciclo de vida del Software y explique uno de ellos. Reflexione: ¿Qué es una base de datos? Reflexione: ¿Para qué se aplica una base de Datos? Reflexione: ¿En donde se utilizan las bases de datos?

I 44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

10.

Importancia y Características de la base de datos.

11.

12.

Desde el inicio de la informática los sistemas han necesitado trabajar con grandes volúmenes de información, es así que nacieron los sistemas de información gestionados con lenguajes de programación.

13.

Rápidamente los sistemas se fueron complicando, en donde fue evidente la necesidad de que en la parte en donde se administre los datos fuese más eficiente y sobre todo con un control confiable de los datos administrados, es aquí en donde se hacen presentes los Sistemas Gestores de Bases de Datos (SGBD)

14.

15.

Dato.

16.

Es la información concerniente al mundo real, así por ejemplo: Nombre del Estudiante, Cedula de Identidad, etc.

17.

Información:

18. Es un conjunto ordenado de datos los cuales son manejados según la necesidad del usuario, para que un conjunto de datos pueda ser procesado eficientemente y pueda dar lugar a información, primero se debe guardar lógicamente en archivos.

19. 20. 21.

Conceptos básicos de archivos computacionales. Campo:

22. Es la unidad más pequeña a la cual uno puede referirse en un programa. Desde el punto de vista del programador representa una característica de un individuo u objeto.

23. 24. 25. 26.

Registro:

Colección de campos de iguales o de diferentes tipos. 27.

28.

Archivo:

29. Colección de registros almacenados siguiendo una estructura homogénea. 30.

31.

Base de Dato.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

9

32.

Conjunto de Datos que están organizados entre sí, estos pueden estar almacenados en procesadores de Texto o en hoja electrónica, y además lo pueden estar en un papel, es decir en un medio no lógico.

33.

Es una colección de archivos interrelacionados, son creados con un SGDB. El contenido de una base de datos engloba a la información concerniente (almacenadas en archivos) de una organización, de tal manera que los datos estén disponibles para los usuarios, una finalidad de la base de datos es eliminar la redundancia o al menos minimizarla. Los tres componentes principales de un sistema de base de datos son el hardware, el software SGDB y los datos a manejar, así como el personal encargado del manejo del sistema, por ejemplo:

44*

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

9

34.

35.

Sistemas de Información.

36.

37.

Están relacionados con archivos planos que gestionan la información, en este tipo de estructura trabajan programas de desarrollo como: Pascal, C, etc. En la cual si se utiliza archivos planos, al momento de la modificación de la estructura de datos, cambiaria además gran parte de código o programas de aplicación que utilice este código

44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

38. 39. 40. 41. 42.

Sistemas de Base de datos.

43.

Conjunto de datos inter relacionados y organizados de tal forma que pueden ser administrados por un SGBD.

44.

Mientras un archivo plano solo tiene datos a gestionar, un SGBD gestiona datos y Meta-Datos, que podría ser restricciones al momento de ingresar un dato, es decir, al ingresar el sexo de la persona el SGBD solo tiene que permitir Masculino o Femenino, mas no otro dato, otro meta dato son los Índices, etc.

Lcdo. Wilver E. Cevallos O.

45.

Sistema de Gestión de Bases de Datos.

46.

Un sistema de gestión de bases de datos SGBD o (DBMS Data Base Management System, “Sistema Manejador de Base de Datos), es un Software de aplicación que permite extraer y almacenar información de un sistema de Bases de Datos, proporcionándolos seguridad, organización, independencia, integridad y consistencia en los datos, recuperación ante fallos del sistema, administración de la información.

47.

Analizando todas las ventajas que proporcionan los SGBD, podríamos decir que son de gran utilidad, pero consideremos, que trabajar con SGBD resultaría costoso y complejo, es por ello que para aplicaciones pequeñas que no requieren se seguridades altas, etc., lo mas conveniente es utilizar sistemas que trabajen con archivos planos.

48.

A finales de los 80 y principios de los 90 se han realizado algunos avances en el área de los SGBD, y quizás lo más significante, podría decirse, la incursión de los SGBD en la Internet, en la que sistemas como los de Bancos, Instituciones de Seguridad Social, entre otros, utilizan este sistema.

44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

49.

El objetivo primordial de un sistema manejador base de datos es proporcionar un contorno que sea a la vez conveniente y eficiente para ser utilizado al extraer, almacenar y manipular información de la base de datos. Todas las peticiones de acceso a la base, se manejan centralizadamente por medio del DBMS, por lo que este paquete funciona como interfase entre los usuarios y la base de datos.

50. 51. 52.

Esquema de base de datos:

53.

Es la estructura por la que esta formada la base de datos, se especifica por medio de un conjunto de definiciones que se expresa mediante un lenguaje especial llamado lenguaje de definición de datos. (DDL)

54. 55.

Administrador de base de datos (DBA):

56.

Es la persona o equipo de personas profesionales responsables del control y manejo del sistema de base de datos, generalmente tiene(n) experiencia en DBMS, diseño de bases de datos, Sistemas operativos, comunicación de datos, hardware y programación.

57.

Los sistemas de base de datos se diseñan para manejar grandes cantidades de información, la manipulación de los datos involucra tanto la definición de estructuras para el almacenamiento de la información como la provisión de mecanismos para la manipulación de la información, además un sistema de base de datos debe de tener implementados mecanismos de seguridad que garanticen la integridad de la información, a pesar de caídas del sistema o intentos de accesos no autorizados.

58.

Un objetivo principal de un sistema de base de datos es proporcionar a los usuarios finales una visión abstracta de los datos, esto se logra escondiendo ciertos detalles de como se almacenan y mantienen los datos.

59. 60.

Objetivos de los sistemas de bases de datos.

61.

Los objetivos principales de un sistema de base de datos es disminuir los siguientes aspectos:

 Redundancia e inconsistencia de datos. 62.

Puesto que los archivos que mantienen almacenada la información son creados por diferentes tipos de programas de aplicación existe la posibilidad de que si no se controla detalladamente el almacenamiento, se pueda originar un duplicado de información, es decir que la misma información sea más de una vez en un dispositivo de almacenamiento. Esto aumenta los costos de almacenamiento y acceso a los datos, además de que puede originar la inconsistencia de los datos - es decir diversas copias de un mismo dato no concuerdan entre si, por ejemplo: que se

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

actualiza la dirección de un cliente en un archivo y que en otros archivos permanezca la anterior.

 Dificultad para tener acceso a los datos. 63.

Un sistema de base de datos debe contemplar un entorno de datos que le facilite al usuario el manejo de los mismos. Supóngase un banco, y que uno de los gerentes necesita averiguar los nombres de todos los clientes que viven dentro del código postal 78733 de la ciudad. El gerente pide al departamento de procesamiento de datos que genere la lista correspondiente. Puesto que esta situación no fue prevista en el diseño del sistema, no existe ninguna aplicación de consulta que permita este tipo de solicitud, esto ocasiona una deficiencia del sistema. Aislamiento de los datos.



64.

Puesto que los datos están repartidos en varios archivos, y estos no pueden tener diferentes formatos, es difícil escribir nuevos programas de aplicación para obtener los datos apropiados.

65.  Anomalías del acceso concurrente. 66.

Para mejorar el funcionamiento global del sistema y obtener un tiempo de respuesta más rápido, muchos sistemas permiten que múltiples usuarios actualicen los datos simultáneamente. En un entorno así la interacción de actualizaciones concurrentes puede dar por resultado datos inconsistentes. Para prevenir esta posibilidad debe mantenerse alguna forma de supervisión en el sistema.

 Problemas de seguridad. 67.

La información de toda empresa es importante, aunque unos datos lo son más que otros, por tal motivo se debe considerar el control de acceso a los mismos, no todos los usuarios pueden visualizar alguna información, por tal motivo para que un sistema de base de datos sea confiable debe mantener un grado de seguridad que garantice la autentificación y protección de los datos. En un banco por ejemplo, el personal de nóminas sólo necesita ver la parte de la base de datos que tiene información acerca de los distintos empleados del banco y no a otro tipo de información.



Problemas de integridad.

68.

Los valores de datos almacenados en la base de datos deben satisfacer cierto tipo de restricciones de consistencia. Estas restricciones se hacen cumplir en el sistema añadiendo códigos apropiados en los diversos programas de aplicación.

69. 70.

Abstracción de la información.

71.

Una base de datos es en esencia una colección de archivos relacionados entre sí, de la cual los usuarios pueden extraer información sin considerar las fronteras de los archivos.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

72.

Un objetivo importante de un sistema de base de datos es proporcionar a los usuarios una visión abstracta de los datos, es decir, el sistema esconde ciertos detalles de cómo se almacenan y mantienen los datos. Sin embargo para que el sistema sea manejable, los datos se deben extraer eficientemente.

73.

Existen diferentes niveles de abstracción para simplificar la interacción de los usuarios con el sistema; Interno, conceptual y externo, específicamente el de almacenamiento físico, el del usuario y el del programador.

74. 75.  Nivel físico. 76.

Es la representación del nivel más bajo de abstracción, en éste se describe en detalle la forma en cómo se almacenan los datos en los dispositivos de almacenamiento (por ejemplo, mediante señaladores o índices para el acceso aleatorio a los datos).

 Nivel conceptual. 77.

El siguiente nivel más alto de abstracción, describe que datos son almacenados realmente en la base de datos y las relaciones que existen entre los mismos, describe la base de datos completa en términos de su estructura de diseño. El nivel conceptual de abstracción lo usan los administradores de bases de datos, quienes deben decidir qué información se va a guardar en la base de datos.

78.

Consta de las siguientes definiciones:

1. Definición de los datos: Se describen el tipo de datos y la longitud de campo todos los elementos direccionables en la base. Los elementos por definir incluyen artículos elementales (atributos), totales de datos y registros conceptuales (entidades).

2. Relaciones entre datos: Se definen las relaciones entre datos para enlazar tipos de registros relacionados para el procesamiento de archivos múltiples.

79.

En el nivel conceptual la base de datos aparece como una colección de registros lógicos, sin descriptores de almacenamiento. En realidad los archivos conceptuales no existen físicamente. La transformación de registros conceptuales a registros físicos para el almacenamiento se lleva a cabo por el sistema y es transparente al usuario.

 Nivel de visión. 80.

Nivel más alto de abstracción, es lo que el usuario final puede visualizar del sistema terminado, describe sólo una parte de la base de datos al usuario acreditado para verla. El sistema puede proporcionar muchas visiones para la misma base de datos.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

81.

La interrelación entre estos tres niveles de abstracción se ilustra en la siguiente figura.

82.

83. 84. 85.

Modelos de Base de Datos.

86.

Para introducirnos en este tema, empezaremos definiendo que es un modelo.

87. Modelo: 88. Es una representación de la realidad que contiene las características generales de algo que se va a realizar. En base de datos, esta representación la elaboramos de forma gráfica.

89. 90. 91.

¿Qué es modelo de datos?

Es una colección de herramientas conceptuales para describir los datos, las relaciones que existen entre ellos, semántica asociada a los datos y restricciones de consistencia.

92. 93. 94.

Los modelos de datos se dividen en tres grupos:

 Modelos lógicos basados en objetos. 95.  Modelos lógicos basados en registros. 96.  Modelos físicos de datos. 97.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

98.  Modelos lógicos basados en objetos. 99.

Se usan para describir datos en los niveles conceptual y de visión, es decir, con este modelo representamos los datos de tal forma como nosotros los captamos en el mundo real, tienen una capacidad de estructuración bastante flexible y permiten especificar restricciones de datos explícitamente. Existen diferentes modelos de este tipo, pero el más utilizado por su sencillez y eficiencia es el modelo Entidad-Relación.

100.

Modelo Entidad-Relación.

101.

Denominado por sus siglas como: E-R; Este modelo representa a la realidad a través de entidades, que son objetos que existen y que se distinguen de otros por sus características, por ejemplo: un alumno se distingue de otro por sus características particulares como lo es el nombre, o el numero de control asignado al entrar a una institución educativa, así mismo, un empleado, una materia, etc. Las entidades pueden ser de dos tipos:



Tangibles: Son todos aquellos objetos físicos que podemos ver, tocar o sentir. 102.



Intangibles: Todos aquellos eventos u objetos conceptuales que no podemos ver, aun sabiendo que existen, por ejemplo: la entidad materia, sabemos que existe, sin embargo, no la podemos visualizar o tocar. Las características de las entidades en base de datos se llaman atributos, por ejemplo el nombre, dirección teléfono, grado, grupo, etc. son atributos de la entidad alumno; Clave, número de seguro social, departamento, etc., son atributos de la entidad empleado. A su vez una entidad se puede asociar o relacionar con más entidades a través de relaciones.

103.

104. 105. 106. 107.

Pero para entender mejor esto, veamos un ejemplo:

Consideremos una empresa que requiere controlar a los vendedores y las ventas que ellos realizan; de este problema determinamos que los objetos o entidades principales a estudiar son el empleado (vendedor) y el artículo (que es el producto en venta), y las características que los identifican son:

108.

Empleado:

109. Puesto Salario R.F.C.

110. 111. 112.

Artículo:

Nombre Descripción Costo Clave

La relación entre ambas entidades la podemos establecer como Venta.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

113.

Bueno, ahora nos falta describir como se representa un modelo E-R gráficamente, la representación es muy sencilla, se emplean símbolos, los cuales son:

114. 115.

Símbolo

Representa

116.

117.

Así nuestro ejemplo anterior quedaría representado de la siguiente forma:

118.

119.

Existen más aspectos a considerar con respecto a los modelos entidad relación, estos serán considerados en el tema Modelo Entidad Relación.



Modelos lógicos basados en registros.

120. 121. 122.

Se utilizan para describir datos en los niveles conceptual y físico.

Estos modelos utilizan registros e instancias para representar la realidad, así como las relaciones que existen entre estos registros (ligas) o apuntadores. A diferencia de los modelos de datos basados en objetos, se usan para especificar la estructura lógica global de la base de datos y para proporcionar una descripción a nivel más alto de la implementación.

123. 124. 125. 126. 127. -

Los tres modelos de datos más ampliamente aceptados son:

Modelo Jerárquico

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

-

Modelo de Red

-

Modelo Relacional

128. Bases de datos Jerárquicos.

129.

Entre los primeros modelos de datos que surgieron en los SGBD comerciales se encuentran las estructuras en árbol, propias de los productos jerárquicos.

130. 131.

132. 133. 134. Los árboles, como instrumentos para la representación de estructuras de datos, presentan problemas por su poca flexibilidad, lo que da origen a una falta de adaptación a muchas organizaciones reales.

135. La implementación del modelo Jerárquico en los productos se lleva a cabo en base a punteros; estructura física que varía según los productos, e incluso un mismo producto proporciona distintas organizaciones físicas a fin de que el usuario pueda conseguir una mayor eficiencia en el diseño físico de la base de datos.

136. Los segmentos, en función de su situación en el árbol y de sus características, pueden denominarse como: 137. 138.

1. SEGMENTO PADRE: Es aquél que tiene descendientes, todos ellos localizados en el mismo nivel. 139.

2.

3.

140. 141. 142. 143. 144. 145. SEGMENTO HIJO: Es aquél que depende de un segmento de nivel superior. Todos los hijos de un 146. mismo padre están en el mismo nivel del árbol. 147. 148. 149. 150. 151. 152. SEGMENTO RAÍZ: El segmento raíz de una base de datos jerárquica es el padre que no tiene 153. padre. La raíz siempre es única y ocupa el nivel superior del árbol. 154.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

155. 156. 157. 158.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

159.

Ilustración 1 Modelo Jerárquico.

160.

161.

Bases de Datos de Red.

162.

Es similar a la jerárquica, es decir que poseen registros conectados entre si por medio de enlaces o ligas y cada registro es una colección de campos (atributos), cada uni de los cuales tiene solamente un valor de un dato y un enlace es una asociación de dos registros exclusivamente.

163.

Ejemplo:

164. 165.

Ilustración 2 Modelo de Red

I Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

166.

167.

Bases de datos Relacionales.

168. Este modelo representa los datos y las relaciones entre los datos, mediante un conjunto de tablas conocidas también como relaciones, cada una de las cuales tiene un numero de columnas o atributos con nombres únicos, cada uno de los campos poseen un dato que se identifica un tipo común de datos a almacenar, las tablas tienen a su vez filas que se conocen como tuplas, que contienen información de un registro en particular. Cada tabla está asociada habitualmente con otra(s) tablas como resultado de la relación representada en el

Ilustración 3 Modelo Relaciona! diagrama conceptual.

169. Considerando nuestro ejemplo del empleado y el artículo: 170.

Tabla del empleado 171.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

172.

173. Ahora te preguntaras ¿cómo se representan las relaciones entre las entidades en este modelo?

174.

Existen dos formas de representarla; pero para ello necesitamos definir que es una llave primaria: Es un atributo el cual definimos como atributo principal, es una forma única de identificar a una entidad. Por ejemplo, el RFC de un empleado se distingue de otro por que los RFC no pueden ser iguales.

175.

Ahora si, las formas de representar las relaciones en este modelo son:

176. 1. Haciendo una tabla que contenga cada una de las llaves primarias de las entidades involucradas en la relación.

177.

Tomando en cuenta que la llave primaria del empleado es su RFC, y la llave primaria del artículo es la Clave.

178. 2. Incluyendo en alguna de las tablas de las entidades involucradas, la llave de otra tabla.

179. la

180.

181. 182.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

183. Estructura general del sistema. 184.

Un sistema de base de datos se encuentra dividido en módulos cada uno de los cuales controla una parte de la responsabilidad total de sistema. En la mayoría de los casos, el sistema operativo proporciona únicamente los servicios más básicos y el sistema de la base de datos debe partir de esa base y controlar además el manejo correcto de los datos. Así el diseño de un sistema de base de datos debe incluir la interfaz entre el sistema de base de datos y el sistema operativo.

185. Los componentes funcionales de un sistema de base de datos, son: Gestor de archivos.

186.

187. Gestiona la asignación de espacio en la memoria del disco y de las estructuras de datos usadas para representar información. 188.

Manejador de base de datos.

189.

Sirve de interfaz entre los datos y los programas de aplicación.

190.

Procesador de consultas.

191. Traduce las proposiciones en lenguajes de consulta a instrucciones de bajo nivel. Además convierte la solicitud del usuario en una forma más eficiente. 192.

Compilador de DDL.

193. Convierte las proposiciones DDL en un conjunto de tablas que contienen metadatos, estas se almacenan en el diccionario de datos. 194.

Archivo de datos.

195. organización. 196. 197. 198.

En él se encuentran almacenados físicamente los datos de una

Diccionario de datos. Contiene la información referente a la estructura de la base de datos. Índices.

199. Permiten un rápido acceso a registros que contienen valores específicos. 200. Una forma gráfica de representar los componentes antes mencionados y la relación que existe entre ellos sería la siguiente. 201. 202. 203. 204. 205.

206. Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

207.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223.

224. 225. 226. 227. 228.

Arquitectura de los sistemas. 229. 230. I l u s t r a c i ó n

4 Programa Centralizada.

de aplicación Bosquejo de una arquitectura

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247.

Ilustración 5 Bosquejo de una arquitectura Distribuida.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

248.

15

I 44*

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

249. 250.

15

251. 1.

Realizar la técnica del diagrama de VENN en la que relacione las ilustraciones 4 y 5 referente a las arquitectura de los sistemas.

I 44*

252. 253. 254.

255.

Acceso a Sistemas de Bases de Datos.

256. 257.

258. 1. 2.

Para el acceso a los datos desde un SGBD se puede realizar en dos configuraciones:

Arquitectura Maestro - Esclavo. Arquitectura Cliente - Servidor.

I 44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

3. 4. Arquitectura Maestro - Esclavo. 5. Es aquel en el cual un PC que está integrada a la red accede al servidor y ejecuta una aplicación que reposa en el mismo. Este modelo se caracteriza por tener terminales no-Inteligentes, ya que todas las tareas "Principales" la realiza el servidor central, esto permite de que como todos los procesos son ejecutados por el servidor, un tráfico enorme si se considerase una red grande, es por ello que se necesitaría una maquina potente como servidor para que puedan atender a todos los nodos. 6.

7. Arquitectura Cliente - Servidor. 8. Es el cual en que las tareas de una aplicación se dividen entre computadoras servidor - cliente a través de la red de computadoras.

9. En este caso los clientes se instala y ejecuta los programas de aplicación, este software realiza tareas como verificar que los datos ingresados por el usuario sean correctos, etc. Y solo envía la petición cuando desee acceder a la información u otra cosa. 10.

11. 1. 2. 3.

La arquitectura Cliente - Servidor consiste en tres capas lógicas:

Capa de Presentación. Capa de Aplicación. Capa de Datos.

12.

Como resultado de esta descomposición se puede tener sistemas de 2capas, 3-capas o Multicapas (n-capas).

13.

14.

ServidorWeb Servidor de datos

15.

16.

Ilustración 6 Bosquejo de una arquitectura de 3 capas en una aplicación Web.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

1. Conocimiento. 17. 1.1. ¿Cuáles son las formas de acceso a un Sistema gestor de bases de datos?

2. Comprensión. 18. 2.1. Listar 3 causas por la que surgen los SGBD. 3. Análisis. 19. 3.1. Listar 3 diferencias entre un sistema de bases de

datos y un Sistema gestor de bases de datos. 4. Síntesis. 4.1. Realizar un cuadro en la que muestre las diferencias entre los modelos de bases de datos. 4.2. Realiza una pequeña base de dato en Excel sobre alumnos. 21. 5. Aplicación. 5.1. Explique mediante un cuadro descriptivo las estructuras de información relativas a los gestores de datos (Dato, Base de dato, Sistema de base de datos, sistema de información, Sistema de gestión de Bases de datos). 5.2. Realizar un socio-drama en la que describa el funcionamiento de la arquitectura Maestro - Esclavo. 5.3. Realiza una pequeña base de dato relacional en Excel sobre control de Notas de un alumno. 5.4. Realizar un debate referente al los modelos de bases de datos, cuyo tema será "Ventajas y desventajas del uso de un modelo de bases de datos en particular" Para el desarrollo del debate siga los siguientes pasos. 22. a. Enunciar el tema. 20.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec" 23.

16

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

b. Presentar a los participantes. c. Señalar las normas de desarrollo del evento. d. Realizar el debate. e. Formular conclusiones por parte del moderador. f. Desarrollar el foro g. Ratificar, rectificar o completar los contenidos expuestos por parte del docente. 6. Valoración.

6.1. ¿Por qué cree usted se implementaron las bases de datos? 6.2. ¿Cuáles cree usted, son los beneficios de los Sistemas de bases de datos 24.

6.3.

en las empresas? ¿Qué modelos de bases de datos se utilizan mayormente?

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.4.

6.5.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.6.

UNIDAD 2: DISEÑO DE BASES DE DATOS RELACIONALES.

6.7. 6.8.

6.9.

Competencia.

6.10.

6.11.

Diseña diagramas conceptuales y lógicos de los sistemas de información aplicando las metodologías de diseño con agilidad, orden y pulcritud.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

18

1. 2. 3. 4.

Realizar un esquema conceptual referente a los elementos de las bases de datos (Dato, base de dato, sistema de base de dato y Sistema de gestión de bases de datos) Mencione tres modelos de bases de datos. Mencione 3 características referentes a las bases de datos relacionales. Mencione 3 ventajas del uso de las bases de datos relacionales

44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

5.

6. BASES DE DATOS RELACIONALES 7. 8. Introducción 9.

10.

En 1970 Codd publicó un artículo en ACM, proponiendo un nuevo modelo de estructuras datos que tenía como objetivo fundamental aislar al usuario de las físicas de los datos, consiguiendo así la independencia de las aplicaciones respecto de los datos.

11.

– Este objetivo fundamental es expresado explícitamente por Codd:

12.

"... se propone un modelo relacional de datos como una base para proteger a los usuarios de sistemas de datos formateados de los cambios que potencialmente pueden alterar la representación de los datos, causados por el crecimiento del banco de datos y por los cambios en los caminos de acceso“.

13.

– El nuevo modelo se basa en la teoría matemática de las relaciones. Los datos se estructuran lógicamente en forma de relaciones (muy parecido al concepto de tabla).

14. 15.

Definición

16.

El modelo relacional se basa en el concepto matemático de relación, que gráficamente se representa mediante una tabla. Codd, que era un experto matemático, utilizó una terminología perteneciente a las matemáticas, en concreto de la teoría de conjuntos y de la lógica de predicados.

17.

Una relación es una tabla con columnas y filas. Un SGBD sólo necesita que el usuario pueda percibir la base de datos como un conjunto de tablas.

18.

Los avances más importantes que el modelo de datos relacional incorpora respecto a los anteriores son: Sencillez y uniformidad: los usuarios ven la base de datos relacional como una colección de tablas, y al ser la tabla la estructura fundamental del modelo, éste goza de una gran uniformidad, lo que unido a unos lenguajes no navegacionales y muy orientados al usuario final, da como resultado la sencillez de los sistemas relacionales.

19.

Sólida fundamentación teórica: al estar el modelo definido con rigor matemático, el diseño y la evaluación del mismo puede realizarse por métodos sistemáticos basados en abstracciones.

20.

Independencia de la interfaz de usuario: los lenguajes relacionales, al manipular conjuntos de registros, proporcionan una gran independencia respecto a la forma en la que los datos están almacenados.

21.

22. 23. 24.

Características

Las características más importantes de los modelos relacionales son:

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

a. Es importante saber que las entradas en la tabla tienen un solo valor (son atómicos); no se admiten valores múltiples, por lo tanto la intersección de un renglón con una columna tiene un solo valor, nunca un conjunto de valores.

b. Todas las entradas de cualquier columna son de un solo tipo. Por ejemplo, una columna puede contener nombres de clientes, y en otra puede tener fechas de nacimiento. Cada columna posee un nombre único, el orden de las comunas no es de importancia para la tabla, las columnas de una tabla se conocen como atributos. Cada atributo tiene un dominio, que es una descripción física y lógica de valores permitidos.

c. No existen 2 filas en la tabla que sean idénticas. d. La información en las bases de datos son representados como datos explícitos, no existen apuntadores o ligas entre las tablas.

25.

En el enfoque relacional es sustancialmente distinto de otros enfoques en términos de sus estructuras lógicas y del modo de las operaciones de entrada/salida. En el enfoque relacional, los datos se organizan en tablas llamadas relaciones, cada una de las cuales se implanta como un archivo. En terminología relacional una fila en una relación representa un registro o una entidad; Cada columna en una relación representa un campo o un atributo.

26.

Así, una relación se compone de una colección de entidades(o registros) cuyos propietarios están descritos por cierto número de atributos predeterminados implantados como campos.

27. 28.

Conceptos Básicos

29.

Relación

30.

Es la estructura básica del modelo relacional. Se representan utilizando tablas.

31.

El modelo relacional proporciona una manera simple de representar los datos: una tabla bidimensional llamada relación. 32. Titulo 33. Año 34. Duración 35. Tipo 36. Star Wars

37. 1977

38. 124

39. color

40. Mighty Ducks

41. 1991

42. 104

43. color

44. Wayne's World

45. 1992

46. 95

47. color

48. 49.

La relación Películas tiene la intención de manejar la información de las instancias en la entidad Películas, cada renglón corresponde a una entidad película y cada columna corresponde a uno de los atributos de la entidad. Sin embargo las relaciones pueden representar más que entidades, como se explicará más adelante.

50.

Atributo

51.

Es el nombre de una columna de una relación. En el modelo relacional,las relaciones se utilizan Para almacenar información sobre los objetos que se representan en la base de

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

datos. Una relación se representan gráficamente Como una tabla bidimensional en la que la filas corresponden a registros individuales y las columna corresponden a los campos o atributos de esos registros .los atributos pueden aparecer en la relación en cualquier orden. Tupla

52. 53.

Ocurrencia de la relación. Se representan mediante filas dentro de las tablas. Una tupla es una fila de una relación . Los elementos de una relación son las tuplas o filas de la tabla Dominio

54. 55.

Conjunto de valores sobre los que se define el tipo de un atributo.Un dominio describe un conjunto de posibles valores para cierto atributo. Como un dominio restringe los valores del atributo, puede ser considerado como una restricción. matemáticamente, atribuir un dominio a un atributo significa"todos los valores de este atributo deben de ser elementos del conjunto especificado". Distintos tipos de dominios son: enteros, cadenas de texto, fecha, no procedurales etc. Grado

56. 57.

De una relación es el número de atributos que contiene. El grado de una relación no cambia con frecuencia. Cardinalidad

58. 59.

De una relación es el número de tuplas que contiene. Ya que en las relaciones se van insertando y borrando tuplas a menudo, la cardinalidad de las mismas varía constantemente. 60. 61.

62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73.

El Diagrama de Entidad - Relación.

74.

75.

El modelo E/R fué propuesto inicialmente por PETER P. CHEN en 1976 y 1977, estos diagramas hacen énfasis en las relaciones entre los datos. Todos los sistemas almacenan y usan información acerca del ambiente en el cual interactúan; a veces, esta información es

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

mínima, pero en la mayoría de los sistemas es bastante compleja. No solo deseamos conocer en detalle que información hay en cada agregado de datos, sino que también queremos conocer la relación que existe entre agregados. Este aspecto del sistema no se resalta en el diagrama de flujo, pero sí aquí.

76.

Este diagrama, también denominado diagrama conceptual consta de los siguientes elementos fundamentales:

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

77.

78. 79.

Entidad.

Es aquel objeto acerca del cual queremos almacenar información en la Base de

Datos.

80.

Atributo.

81.

Es una característica de interés o un hecho sobre una entidad o sobre una relación. Los atributos representan las propiedades básicas de las entidades y de las relaciones. Gráficamente, se representan mediante bolitas que cuelgan de las entidades o relaciones a las que pertenecen.

82.

Los atributos también pueden clasificarse en monovalentes o polivalentes. Un atributo monovalente es aquel que tiene un solo valor para cada ocurrencia de la entidad o relación a la que pertenece. Un atributo polivalente es aquel que tiene varios valores para cada ocurrencia de la entidad o relación a la que pertenece.

83.

Identificador.

84.

86.

Un identificador de una entidad es un atributo o conjunto que determina de modo único cada ocurrencia de esa entidad. 85.

de atributos

87.

Toda entidad tiene al menos un identificador y puede tener varios identificadores alternativos. Las relaciones no tienen identificadores. 88.

89. 90. 91. 92.

Relaciones.

93.

Se representan por medio de rombos en el diagrama y son la serie de conexiones o asociaciones entre los tipos de objetos que están conectados por la relación por medio de flechas.

Ilustración 7 Entidades, atributos, identificadores y relación.

Lcdo. Wilver E. Cevallos O.

94.

Cardinalidad.

95.

De un atributo indica el número mínimo y el número máximo de valores que puede

tomar para cada ocurrencia de la entidad o relación a la que pertenece. El valor por omisión es (1,1). 96.

97. 1. 2. 3.

Las ocurrencias pueden ser:

1:1

Cuando la relación es de uno a uno

1:n

Cuando la relación es de uno a muchos

n:m 98.

Cuando la relación es de muchos a muchos

99.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

20

100. 101. 102. 103.

lustración Cardinalidad (O, C).

8

Obligatoriedad

y

4 4*

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

104.

105. 1.

Realice un diagrama de Venn referente a las relaciones entre los elementos del diagrama entidad relación.

20

4 4*

106.

107.

Lectura de relaciones según dos autores:

108.

109.

4 4*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case "

110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 1.1.

1. Expresar las restricciones de cardinalidad para los casos siguientes: Los idiomas pueden ser hablados por personas, o no. Las personas tienen que hablar al menos un idioma. 1.2. Todo barco debe tener un capitán y sólo uno. Un capitán puede estar asignado como máximo a un barco. 1.3. Todo alumno debe estar matriculado como mínimo de una asignatura. 1.4. Un río no puede desembocar en más de un mar. 1.5. Una persona puede tener o no hijos. 1.6. Un cliente puede comprar muchos productos. 1.7. En una factura se detallan muchos productos y también el producto se pueden detallar en muchas facturas. 1.8. Un cliente se registra en muchas facturas y en la misma se registra un solo cliente. 1.9. Muchos productos son vendidos por un proveedor. 1.10. Un producto posee muchas marcas. 1.11. Un padre de familia matricula a muchos hijos. 1.12. A muchos estudiantes se califica muchas materias. 1.13. A cada materia se le califica muchos parámetros. 1.14. Muchos estudiantes poseen un representante.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

Metodología diseño conceptual

131.

Lcdo. Wilver E. Cevallos O.

de

4

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

22

132.

133.

El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los usuarios tienen de la información. Cada una de estas visiones suelen corresponder a las diferentes áreas funcionales de la empresa como, por ejemplo, producción, ventas, recursos humanos, etc.

134. Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas. Una opción consiste en examinar los diagramas de flujo de datos, que se pueden haber producido previamente, para identificar cada una de las áreas funcionales. La otra opción consiste en entrevistar a los usuarios, examinar los procedimientos, los informes y los formularios, y también observar el funcionamiento de la empresa.

135.

A los esquemas conceptuales correspondientes a cada vista de usuario se les denomina esquemas conceptuales locales. Cada uno de estos esquemas se compone de entidades, relaciones, atributos, dominios de atributos e identificadores. El esquema conceptual también tendrá una documentación, que se irá produciendo durante su desarrollo. Las tareas a realizar en el diseño conceptual son las siguientes:

1. 2. 3. 4. 5. 6. 7.

Identificar las entidades. Identificar las relaciones. Identificar los atributos y asociarlos a entidades y relaciones. Determinar los dominios de los atributos. Determinar los identificadores. Dibujar el diagrama entidad-relación. Revisar el esquema conceptual local con el usuario.

136.

Metodología del diseño lógico de datos.

137.

138.

A partir de un esquema conceptual obtenemos una especificación lógica de la

base de dato, tablas y columnas en el modelo relacional.

139.

Las entidades se transforman en tablas, que es la estructura primaria de las bases de datos relacionales, y, Los atributos de las entidades pasan a ser columnas de las tablas. El (los) atributo que sirve de identificador de una entidad pasa a ser la clave primaria (que es la que permite identificar a cada registro de manera única en la tabla) en cada tabla. 140. La relación entre las entidades se la representa adicionando una columna, o mas de una dependiendo del caso, en una de las tablas redundantes se las denomina clave foránea, que es la que permite relacionar los registros entre tablas, y a su vez es la clave primaria de la tabla(s) relacionada. 141. Un esquema lógico es una representación lingüística del esquema conceptual como resultado del diagrama entidad relación, el que es representado por una serie de nombres, el de la tabla y el de las columnas. El nombre de la tabla (entidad) se la representa con letras mayúsculas y después entre paréntesis las columnas (atributos) separadas por comas (,). La clave primaria (identificador) se representa

44*

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

subrayando la columna(s), y la clave foránea subrayando la columna(s) correspondiente con línea discontinua.

22

44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

142. 143.

Diseño lógico en relaciones binarias de muchos a muchos.

144.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157.

158.

Diseño lógico en relaciones binarias de uno a muchos o muchos a uno.

159. 160. 161. 162. 163.

164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237.

238.

Diseño lógico binarias de uno a uno.

Lcdo. Wilver E. Cevallos O.

en

relaciones

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

239. 240. 241. 242. 243. 244. 245. 246. 247.

248. 249. 250. 251.

252.

1. Elabore un cuadro de secuencia referente a las metodologías del diseño conceptual y diseño lógico.

253.

254.

Ejercicio resuelto de DER.

255.

256. El almacén de alquiler de películas MOVIES necesita de un sistema informático, para ello su gerente explica sus requisitos:

257. Un video se identifica por su titulo y categoría y sus actores, de este existe muchas copias para que sean alquiladas por uno o varios clientes, cuando este se acerca a realizar el alquiler, se le solicita su cedula como prenda, posteriormente se apunta sus nombres, apellidos, dirección y teléfono.

258. Para cada video existen muchos actores, de las cuales se desea registrar su Nombre, edad y nacionalidad. 259. 260. Diagrama Conceptual.

261.

Diseño lógico.

262.

ACTOR (código, nombres, fecha_nac, nacionalidad) VIDEO (número y,

título, categoría)

263. 264.

CLIENTE (número, apellidos, nombres, dirección, teléfono) COPIA (número _v, número c, formato, estado, fecha_alquiler, número)

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

265.

PROTAGONIZA ínúrnero v. código)

266. 267.

268.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

269.

Lcdo. Wilver E. Cevallos O.

¡

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

270. 1.

271.

Complete el siguiente problema sus atributos y su diseño lógico. 272. NEW FASHION BOUTIQUE es el nombre de una microempresa que se dedica al diseño, manufactura, venta y comercialización de ropa femenina diseñada para clientes exclusivos, la forma en que NEW FASHION BOUTIQUE lleva a cabo sus actividades transaccionales, esta detallada de la siguiente manera: 273. La dueña de la Boutique realiza la compra de materiales (cierres, hilos, pellón, botones, entre otros), así también materiales que proporcionan mantenimiento a las maquinas (aceite, agujas, etc.). 274. La ropa se confecciona utilizando telas que algunas son proporcionados por los clientes y otras son vendidas por la misma Boutique, desde luego el cliente indica la fecha de entrega del producto final. 275. El proceso de automatización del presente sistema es para el control de las ventas, productos, proveedores y clientes

27

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case 276.

277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298.

299. 300. 301.

2. A partir del siguiente enunciado se desea realiza, con la ayuda del docente el modelo (Diagrama) entidad-relación. 302. 2.1. "Una empresa vende productos a varios clientes. Se necesita conocer los datos personales de los clientes (nombre, apellidos, dni, dirección y fecha de nacimiento). Cada producto tiene un nombre y un código, así como un precio unitario. Un cliente puede comprar varios productos a la empresa, y un mismo producto puede ser comprado por varios clientes. Los productos son suministrados por diferentes proveedores. Se debe tener en cuenta que un producto sólo puede ser suministrado por un proveedor, y que un proveedor puede suministrar diferentes productos. De cada proveedor se desea conocer el NIF, nombre y dirección". 303. 2.2 "Se desea diseñar la base de datos de un Instituto. En la base de datos se desea guardar los datos de los profesores del Instituto (DNI, nombre, dirección y teléfono). Los profesores imparten módulos, y cada módulo tiene un código y un nombre. Cada alumno está matriculado en uno o varios módulos. De cada alumno se desea guardar el n e de expediente, nombre, apellidos y fecha de nacimiento. Los profesores pueden impartir varios módulos, pero un módulo sólo puede ser impartido por un profesor. Cada curso tiene un grupo de alumnos, uno de los cuales es el delegado del grupo". 304. 2.3. "La clínica "SAN PATRÁS" necesita llevar un control informatizado de su gestión de pacientes y médicos. 305. De cada paciente se desea guardar el código, nombre, apellidos, dirección, población, provincia, código postal, teléfono y fecha de nacimiento. De cada médico se desea guardar el código, nombre, apellidos, teléfono y especialidad. Se desea llevar el control de cada uno de los ingresos que el paciente hace en el hospital. Cada ingreso que realiza el paciente queda registrado en la base de datos. De cada ingreso se guarda el código de ingreso (que se incrementará automáticamente cada vez que el paciente realice un ingreso), el número de habitación y cama en la que el paciente realiza el ingreso y la fecha de ingreso. Un médico puede atender varios ingresos, pero Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

el ingreso de un paciente solo puede ser atendido por un único médico. Un paciente puede realizar varios ingresos en el hospital". 306. 3. A partir del siguiente enunciado realizar en grupo de tres el modelo (Diagrama) entidad-relación. 307. 3.1. Una empresa desea diseñar una base de datos para almacenar en ella toda la información generada en cada uno de los proyectos que ésta realiza. "De cada uno de los proyectos realizados interesa almacenar el código, descripción, cuantía del proyecto, fecha de inicio y fecha de fin. Los proyectos son realizados por clientes de los que se desea guardar el código, teléfono, domicilio y razón social. Un cliente puede realizar varios proyectos, pero un solo proyecto es realizado por un único cliente. En los proyectos participan colaboradores de los que se dispone la siguiente información: nif, nombre, domicilio, teléfono, banco y número de cuenta. Un colaborador puede participar en varios proyectos. Los proyectos son realizados por uno o más colaboradores. Los colaboradores de los proyectos reciben pagos. De los pagos realizados se quiere guardar el número de pago, concepto, cantidad y fecha de pago. También interesa almacenar los diferentes tipos de pagos que puede realizar la empresa. De cada uno de los tipos de pagos se desea guardar el código y descripción. Un tipo de pago puede pertenecer a varios pagos".

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

308.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

309. 310. 311. 312. 313. 314. 1. Conocimiento. 1.1. ¿Qué es el diseño conceptual o DER? 1.2. ¿Qué es el diseño lógico? 2. Comprensión. 316. 2.1. ¿Cuáles son los símbolos que se utiliza para los DER? 3. Análisis. 3.1. Realizar un algoritmo sobre los pasos para realizar el diseño lógico de datos. 3.2. ¿En que consiste la metodología de diseño conceptual de datos? 3.3. Mencione dos ventajas para un Diagrama Entidad relación. 3.4. Escriba 4 relaciones entre un Flujograma con un Diagrama Entidad relación. 318. 4. Síntesis. 4.1. Realizar un ACROSTICO referente DIAGRAMA ENTIDAD RELACION. 4.2. Realizar la técnica didáctica RUEDA DE ATRIBUTOS referente al Modelado 315.

317.

de Datos. 5. Aplicación. 5.1. Expresar la cardinalidad y obligatoriedad de los siguientes enunciados: 5.1.1. Un curso posee muchos paralelos. 5.1.2. Un alumno proviene de muchos centros educativos. 5.1.3. Un docente se le asigna muchas materias. 5.1.4. A un cliente se asigna una dirección IP. 5.1.5. Una ciudad pertenece muchas provincias. 5.1.6. Muchos estudiantes se le asigna un paralelo. 321. 5.2. A partir del siguiente enunciado se desea realiza, con la ayuda del docente el modelo (Diagrama) entidad-relación.

319. 320.

322. 5.2.1.

Se desea informatizar la gestión de una tienda informática. La tienda dispone de una serie de productos que se pueden vender a los clientes. 323. "De cada producto informático se desea guardar el código, descripción, precio y número de existencias. De cada cliente se desea guardar el código, nombre, apellidos, dirección y número de teléfono. Un cliente puede comprar varios productos en la tienda y un mismo producto puede ser comprado por varios clientes. Cada vez que se compre un artículo quedará registrada la compra en la base de datos junto con la fecha en la que se ha comprado el artículo. La tienda tiene contactos con varios proveedores que son los que suministran los productos. Un mismo producto puede ser suministrado por varios proveedores. De cada proveedor se desea guardar el código, nombre, apellidos, dirección, provincia y número de teléfono".

324. 5.2.2.

"Se desea informatizar la gestión de una empresa de transportes que reparte paquetes por toda España. Los encargados de llevar los paquetes son los camioneros, de los que se quiere guardar el dni, nombre, teléfono, dirección, salario y población en la que vive. De los paquetes transportados interesa conocer el código de paquete, descripción, destinatario y dirección del destinatario. Un camionero distribuye muchos paquetes, y un paquete sólo puede ser distribuido por un camionero. De las provincias a las que llegan los paquetes interesa guardar el código de provincia y el nombre. Un paquete sólo puede llegar a una provincia. Sin embargo, a una provincia pueden llegar varios paquetes. De los camiones que llevan los camioneros, interesa conocer la matrícula, modelo, tipo y potencia. Un camionero puede conducir diferentes camiones en fechas diferentes, y un camión puede ser conducido por varios camioneros".

325.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

326.

5.2.3. Una agencia de viajes desea informatizar toda la gestión de los viajeros que acuden a la agencia y los viajes que estos realizan. Tras ponernos en contacto con la agencia, ésta nos proporciona la siguiente información. "La agencia desea guardar la siguiente información de los viajeros: dni, nombre, dirección y teléfono.

327. 328. 329. 330. 331. 332.

De cada uno de los viajes que maneja la agencia interesa guardar el código de viaje, número de plazas, fecha en la que se realiza el viaje y otros datos. Un viajero puede realizar tantos viajes como desee con la agencia. Un viaje determinado sólo puede ser cubierto por un viajero. Cada viaje realizado tiene un destino y un lugar de origen. De cada uno de ellos se quiere almacenar el código, nombre y otros datos que puedan ser de interés. Un viaje tiene un único lugar de destino y un único lugar de origen".

333. 334.

5.3. A través de la gestión de requisitos, realizar un Diagrama entidad relación y presentar un informe con diapositivas. 335. 6. Valoración. 6.1.1. ¿Qué le gustó y disgustó de las actividades desarrolladas? 6.1.2. ¿Qué aprendió del tema desarrollado? 6.1.3. ¿Qué valores humanos considera usted que practicó en el desarrollo de las actividades? 6.1.4. ¿Qué sugiere al profesor para la siguiente clase?

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.5.

6.1.6.

UNIDAD N° 3: OPTIMIZACIÓN DE LAS BASES DE DATOS RELACIONALES.

6.1.7. 6.1.8. 6.1.9.

6.1.10.

Competencia

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

6.1.11. 1. ¿Qué es el modelo relacional? 6.1.12. 2. Grafique y nombre los símbolos usados en el diagrama entidad relación. 6.1.13. 3. Explique sobre el uso de cardinalidad y obligatoriedad en el modelo relacional. 6.1.14. 4. Mencione los 7 pasos para realizar un correcto diagrama entidad 6.1.15. 5. ¿En qué consiste el diseño lógico? 6.1.16. 6. Realizar el diseño lógico del siguiente diagrama Entidad relación 6.1.17.

6.1.18. 7. Graficar el Diagrama Entidad Relación del siguiente esquema lógico.

6.1.19.

6.1.20.

31

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

31

6.1.21.

1. Preparar informe investigativo de tres personas referente a la herramienta POWER DESIGNER, considerando los siguientes temas: 1.1. Empresa creadora. 1.2. Funciones. 1.3. Requerimientos de Hardware y Software. 1.4. Pantallas. 1.5. Barras de herramientas. 1.6. Conclusiones. 6.1.22. Se calificará Informe, defensa y diapositivas. 6.1.23. 2. Realizar un panel sobre el tema "Características, manejo y bondades del programa POWER DESIGNER". Para el desarrollo del mismo seguir la siguiente secuencia: a. Haber investigado de diferentes fuentes. b. Presentar a los miembros del panel. c. Formular preguntas por cada estudiante. d. Responder a la pregunta planteada por uno de los integrantes. e. Continuar el dialogo f. Plantear otras preguntas pos parte del coordinador.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec" 6.1.24.

31

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

g. h. i. 6.1.25.

Resumir brevemente el contenido expuesto. Sintetizar las exposiciones por parte del coordinador. Establecer un diálogo con loe estudiantes. j. Analizar el contenido investigado.

6.1.26. 6.1.27. 6.1.28. 6.1.29.

6.1.30. 6.1.31. 6.1.32.

Teoría de la Normalización.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

6.1.33.

Cuando se diseña una base de datos mediante el modelo relacional, al igual que ocurre en otros modelos de datos, tenemos distintas alternativas, es decir, podemos obtener diferentes esquemas relacionales y no todos son equivalentes, ya que algunos van a representar la realidad mejor que otros.

32

6.1.34.

Es necesario conocer qué propiedades debe tener un esquema relacional para representar adecuadamente una realidad y cuáles son los problemas que se pueden derivar de un diseño inadecuado.

6.1.35.

La teoría de la Normalización es un método objetivo y riguroso que se aplica en el diseño de bases de datos relacionales. 6.1.36. 6.1.37. Algunos problemas que se pueden presentar son:

• • • •

Incapacidad para almacenar ciertos hechos Redundancias y por tanto, posibilidad de incoherencias Ambigüedades Pérdida de información (aparición de tuplas espúreas)



Pérdida de dependencias funcionales, es decir, ciertas restricciones de integridad que dan lugar a interdependencias entre los datos.



Aparición en la BD de estados no válidos, es decir, anomalías de inserción, borrado y modificación.

6.1.38.

En conclusión el esquema relacional obtenido debe ser analizado para

comprobar que no presenta los problemas anteriores. 6.1.39. 6.1.40. Analicemos la siguiente relación: ESCRIBE 6.1.41. 6.1.42. 6.1.43. 6.1.44. 6.1.45. 6.1.46. 6.1.47. 6.1.48. 6.1.49. 6.1.50. 6.1.51. 6.1.52. 6.1.53. 6.1.54. 6.1.55. 6.1.56. 6.1.57. 6.1.58. 6.1.59. 6.1.60. 6.1.61. 6.1.62. 6.1.63. 6.1.64.

6.1.65.

44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.66.

6.1.67.

A

UTOR

6.1.68.

NAC IONALIDAD

6.1.69. COD_LIB

6.1.70.

T

ITULO

RO

6.1.73.

D

ate, C.

6.1.79.

D

6.1.85.

D

ate, C.

ate, C.

6.1.91.

C

odd,E.

6.1.97.

G

ardarin

6.1.103. G ardarin

6.1.109. V alduriez

6.1.115. Ki m,W.

6.1.121. L ochovsky

6.1.74.

Nort eamericana

6.1.75. 98987

6.1.76.

D

atabas e

6.1.81.

6.1.82.

S

6.1.86.

6.1.87.

6.1.88.

G

Nort eamericana

6.1.92.

Nort eamericana

6.1.98.

Fran

cesa

6.1.104. Fran cesa

6.1.110. Fran cesa

6.1.116. Nort eamericana

6.1.122. Can adiense

Lcdo. Wilver E. Cevallos O.

97777

98987

6.1.93. 7890

6.1.99. 12345

6.1.105. 67890

6.1.111. 67890

6.1.117. 11223

6.1.123. 11223

QL Stan uide for

6.1.94.

R

elation al

6.1.100. B asi Dati

6.1.106. C omp BD

6.1.112. C omp BD

6.1.118. B D OO

6.1.124. B D OO

E DITORI AL

6.1.77.

A

ddison

6.1.80.

Nort eamericana

6.1.71.

6.1.72. AÑ O

6.1.78. 199 0

6.1.83.

6.1.84.

6.1.89.

6.1.90.

A ddison, W. A ddison, W.

6.1.95.

A ddison, W.

6.1.101. P araninf o

6.1.107. E yrolles

6.1.113. E yrolles

6.1.119. A CM

6.1.125. A CM

198 6 198 8

6.1.96. 199 0

6.1.102. 198 6

6.1.108. 198 4

6.1.114. 198 4

6.1.120. 198 9

6.1.126. 198 9

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

6.1.127.

33

6.1.128. 6.1.129.

Esta relación almacena datos de autores y

de libros. Algunos problemas son:



Redundancia, ya que la nacionalidad del autor se repite por cada ocurrencia del mismo. Lo mismo sucede cuando un libro tiene mas de un autor, se repite la editorial y el año de publicación.



Anomalías de modificación, es fácil cambiar el nombre de una editorial en una tupla sin modificar el resto de las que corresponden al mismo libro, lo que da lugar a incoherencias.



Anomalías de inserción, ya que si queremos ingresar información de algún autor, del que no hubiera ningún libro en la base datos, no sería posible, ya que cod_libro es parte de la clave primaria de la relación (regla de integridad de la entidad). La inserción de un libro, que tiene dos autores obliga a insertar dos tuplas en la relación.



Anomalías de borrado, ya que si queremos eliminar un cierto libro, deberíamos perder los datos de su autor y viceversa.

6.1.130. En los casos anteriores, se deja en manos del usuario manejar la integridad de la base de datos.

6.1.131.

Lo anterior sucede pues no se cumple un hecho básico de todo

diseño: "Hechos distintos, deben almacenarse en objetos distintos"

6.1.132.

Una forma de evitar este tipo de problemas consiste en seguir la metodología propuesta en el curso, es decir, un riguroso diseño conceptual y un traspaso de éste al modelo relacional.

6.1.133. Sin embargo, ante posibles dudas respecto a si un esquema relacional está correcto, aplicaremos a dicho esquema un método formal de análisis, que permita analizar errores y generar esquemas correctos. Esta es la teoría de la normalización. 6.1.134.

6.1.135. 6.1.136.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.137. 6.1.138. 6.1.139. 6.1.140. 6.1.141. En el ejemplo anterior, el conjunto de las siguientes relaciones no presenta estos problemas:

6.1.142.

LIBRO( cod libro, titulo, editorial, año )

6.1.143.

AUTOR( nombre, nacionalidad )

6.1.144.

ESCRIBE( cod libro, nombre )

6.1.145. La normalización introduce una técnica formal para diseñar bases de datos relacionales, y permite mecanizar parte del proceso al disponer de algoritmos de normalización.

6.1.146. Una observación importante, es que las anomalías antes descritas se producen en procesos de actualización y no en procesos de consulta. La normalización penaliza las consultas, al disminuir la eficiencia, ya que la normalización aumenta el nro. de relaciones presentes en la base de datos, por lo que una determinada consulta puede llevar consigo el acceso a varias tablas, lo que aumenta el costo de ésta. 6.1.147. 6.1.148. Tablas normalizadas: 6.1.149.

6.1.150. 6.1.151.

6.1.152.

Cod libro

6.1.155. 1

6.1.161.

Titul

Libro

6.1.153. Editorial

o

6.1.156. 6.1.157. Databa se

6.1.162. SQL Stan

Año

6.1.158.6.1.159. Addison 6.1.163. Addison, W.

3

6.1.171.

6.1.160. 1990

6.1.164. 1986

2

6.1.165.

6.1.154.

6.1.166. 6.1.167. Guide for

6.1.172. Relational

6.1.168.6.1.169. Addison, W.

6.1.170.

6.1.173. Addison,W.

6.1.174.

1988

1990

4

6.1.175. 5

6.1.176. 6.1.177.

6.1.181. B 6.1.185. 7

6.1.182. Comp BD

6.1.191. a

6.1.192. BD OO

Basi Dat i

6.1.186. 6.1.187.

6.1.178.6.1.179. Paraninfo

1986

6.1.183. Eyrolles

6.1.184.

6.1.188.6.1.189. Eyrolles

6.1.190.

Comp BD

Lcdo. Wilver E. Cevallos O.

6.1.180.

1984 1984

6.1.193. ACM

6.1.194. 1989

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

34

6.1.195.

6.1.196.

6.1.1. Autor 6.1.4. D ate, C.

6.1.8. 6.1.10.

6.1.2. 6.1.5.

Nombre

6.1.3. Nacionalidad 6.1.6.

6.1.7.

Norteamericana

6.1.12.

6.1.9. 6.1.13.

Norteamericana Francesa

6.1.18.

6.1.15. 6.1.19.

Francesa Norteamericana

6.1.21.

Canadiense

Codd,E.

6.1.11.

Gardarin

6.1.14. 6.1.16.

Valduriez

6.1.17.

Kim,W.

6.1.20.

Lochovsky

44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.197.

6.1.22. Escribe 6.1.23. 6.1.24. Nom

6.1.198. 6.1.199.

Cod libro

6.1.200.

1

6.1.201.

2

bre

6.1.25.

6.1.28. 6.1.30.

3

6.1.32.

4

Codd

,E.

6.1.33.

6.1.34.

5

Gard

arin

6.1.205.

6.1.35.

6.1.206.

6.1.37.

6.1.207.

6.1.39.

6.1.208.

6.1.41.

6.1.36.

6

Gard

arin

6.1.38.

7

Vald

uriez

6.1.40.

8

Kim,

W.

6.1.42.

9

6.1.209.

Date

, C.

6.1.31.

6.1.204.

Date

, C.

6.1.29.

6.1.203.

Date

, C.

6.1.27.

6.1.202.

6.1.26.

Loch

ovsky

6.1.210. 6.1.211.

La

normalización

tiene

como

objetivo

obtener

esquemas

relationales que cumplan determinadas condiciones, a través de las formas normales:

• • • •

Primera, segunda y tercera formas normales (1FN, 2FN, 3FN). - Codd 19701 Forma normal de Boyce y Codd (FNBC). - Boyce - Codd 1974 Cuarta Forma Normal. (4FN). - Fagin 1977 Quinta Forma Normal. (5FN). - Fagin 1979

7. Investigar sobre la 4FN y 5FN.

6.1.212. Primera Forma Normal (1FN). 6.1.213.

6.1.214. Fue introducida por Codd, en su primer trabajo. Es una restricción inherente al modelo relacional por lo que su cumplimiento es obligatorio. Consiste en la prohibición de que en una relación existan grupos repetitivos, es decir, un atributo no puede tomar más de un valor del dominio subyacente.

6.1.215. Segunda Forma Normal (2FN). 6.1.216.

1 Como obligatoriedad del currículo, en este modulo se estudiara las formas normales 1FN, 2FN Y 3FN.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.217. Fue introducida por Codd. Una relación está en 2FN, si además de estar en 1FN, todos los atributos que no forman parte de ninguna clave candidata suministran información acerca de la clave completa, es decir que, cada atributo noclave es total y funcionalmente dependiente de TODA la clave primaria.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.218. 6.1.219. 6.1.220. 6.1.221. Ejemplo usando 1FNy 2FN. 6.1.222. A partir del diseño lógico, para la relación: 6.1.223.

PRESTAMO (num_socio, nombre_socio, cod_libro, fec_prest, editorial, país ) Las

claves candidatas son:

6.1.224.

(num_socio, cod_libro) y (nombre_socio, cod_libro)

6.1.225. Por lo tanto seleccionamos la primera opción: num_socio y cod_libro 6.1.226. Se puede observar que ciertos atributos que no forman parte de las claves candidatas, tal como editorial, constituye información acerca del libro, pero no acerca de la clave completa (del socio también). Luego, la relación préstamo no se encuentra en 2FN.

6.1.227.

La solución es descomponer esta relación en las

siguientes: Enunciado:

6.1.228.

PRESTAMO (num_socio, nombre_socio, cod_libro, fec_prest, editorial, país

) Optimizada a:

6.1.229.

PRESTAMO1( num socio, cod libro, nombre_socio, fec_prest)

6.1.230.

LIBRO( cod libro, editorial, país )

6.1.231.

En la relación PRESTAMO1, los atributos que no forma parte de las claves candidatas es fec_prest y nombre_socio, suministra información acerca de la clave, pero nombre_socio es únicamente dependiente de num_socio y no de cod_libro, es decir que nombre_socio no depende TOTALMENTE de la clave primaria. Por lo que no está en 2FN. Entonces la relación PRESTAMO1 quedaría así: 6.1.232.

6.1.233.

SOCIO (num socio, nombre_socio)

6.1.234.

6.1.235.

PRESTAMO1 ( num socio, cod libro, fec_prest)

6.1.236. La relación LIBRO, la clave es cod_libro, y los dos atributos: editorial y país suministran información de la clave completa. Por lo tanto, está en 2FN.

6.1.237. En fin, las tablas quedarían optimizadas en 1FN y 2FN así: 6.1.238.

SOCIO (num socio, nombre_socio)

6.1.239.

LIBRO ( cod libro, editorial, país )

6.1.240. 6.1.241.

PRESTAMO1 ( num socio, cod libro, fec_prest)

6.1.242.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

6.1.243. 6.1.244.

6.1.245. Para realizar correctamente la normalización DEBE aprenderse sus reglas. 6.1.246. 6.1.247. Una relación que está formada por un único atributo esta en 2FN.

37

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

37

6.1.248. 6.1.249.

6.1.250. Tercera Forma Normal (3FN). 6.1.251.

6.1.252.

Propuesta por Codd. Una relación está en 3FN, si además de estar en 2FN, los atributos que no forman parte de ninguna clave candidata facilitan información sólo acerca de la(s) clave(s) y no acerca de otros atributos, es decir que ningún atributo no-clave de la relación es funcionalmente dependiente de algún otro atributo no-clave.

6.1.253. Ejemplo usando 3FN. 6.1.254. De las siguientes tablas optimizadas anteriormente a 1FN y 2FN: 6.1.255. 6.1.256.

SOCIO(num socio, nombre_socio)

6.1.257.

LIBRO( cod libro, editorial, país )

6.1.258.

PRESTAMO1( num socio, cod libro, fec_prest)

6.1.259. 6.1.260. La relación PRESTAMO1 y LIBRO, contienen una sola columna no-clave por tanto está en 3FN.

6.1.261. En la relación LIBRO, el atributo país entrega información acerca de la editorial que publica el libro, es decir, que país depende de la columna no-clave editorial por lo que no está en 3FN. 6.1.262. 6.1.263. La solución es descomponerla en: 6.1.264.

6.1.265. 6.1.266.

EDITORIAL( editorial, país ),

6.1.267.

6.1.268.

LIBRO1( cod libro, editorial)

6.1.269.

6.1.270. 6.1.271. Que están en 3FN, ya que todo atributo no clave facilita información acerca de la 6.1.272. Hasta ahora nuestro esquema relacional está compuesto por las siguientes relaciones en 3FN:

6.1.273. 6.1.274. 6.1.275.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.276. 6.1.277.

SOCIO(num socio, nombre_socio)

6.1.278.

EDITORIAL( editorial, país ),

6.1.279.

LIBROI( cod libro, editorial)

6.1.280.

PRESTAMO1( num socio, cod libro, fec_prest)

6.1.281. 6.1.282. 6.1.283.

Ejemplo completo usando las 3

normalizaciones.

6.1.284.

6.1.285.

Ilustración 10 Datos a analizar la normalización

6.1.286.

6.1.287. 1FN.

6.1.43.

Lcdo. Wilver E. Cevallos O.

Ilustración 11 Area en donde no cumple la

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.288.

6.1.289. 6.1.290.

2F

Lcdo. Wilver E. Cevallos O.

Wenceslao Rijavec"

39

6.1.291. 6.1.292.

6.1.293. Ilustración 12 Resultado de 1FN a partir de la tabla inicial

6.1.294.

6.1.295. 6.1.296. 6.1.297. 6.1.298.

44*

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

6.1.299.

6.1.300.

39

Ilustración 13 Tabla que cumple la 2FN

44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.301. 6.1.302.

6.1.303.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

40

6.1.304.

6.1.305.

6.1.306.

6.1.307.

Ilustración

cumple la 2FN

14

Tabla

que

no

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.308.

Ilustración 15 Resultado de realizar la 2FN

6.1.309. 6.1.310. 6.1.311. 6.1.312.

6.1.313. 6.1.314. 6.1.315. 3FN. 6.1.316.

6.1.317. 6.1.318. 6.1.319. 6.1.320. 6.1.321. 6.1.322. 6.1.323. 6.1.324. 6.1.325. 6.1.326. 6.1.327.

Ilustración 16 Tablas que cumplen la 3FN

Ilustración 17 Tabla que no cumple la 3FN.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.328.

Ilustración 18 Tabla normalizada a 3FN.

Resultado final:

Ilustración 19 Tabla inicial no normalizada.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

43

6.1.329.

6.1.331.

6.1.330.

44*

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec" 6.1.332.

43

44*

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

43

6.1.333.

6.1.334.

Ilustración 20 Resultado de aplicar la normalización.

44*

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

43

6.1.335. 6.1.336. 6.1.337.

6.1.338.

1. Realizar con el docente el diseno lógico y verificar su normalización

(1FN, 2FN y 3FN) del siguiente diseño conceptual:

6.1.339.

I). N

6.1.340.

44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.341.

2. Con la ayuda del docente, realizar el diseno lógico y normalización del

siguiente cuadro:

6.1.342.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

6.1.343.

44

6.1.344. 6.1.345.

44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.346. 3.

En grupo de tres, realizar la normalización del siguiente esquema lógico: FACTURA (Numero_Fact, Fecha, Nombre_cliente, Cedula, cantidad, Cod_producto, detalle. Precio, Subtotal)

4.

Presentar un informe individual con la ayuda del docente el diseño conceptual, lógico y normalización del siguiente enunciado: Consideremos la base de datos de personal de una empresa que tiene un conjunto de departamentos. Cada departamento tiene un conjunto de empleados, un conjunto de proyectos y un conjunto de oficinas. Cada empleado tiene una historia de salarios (El conjunto de salarios que ese empleado ha recibido ). Cada oficina tiene un conjunto de teléfonos. La base de datos debe contener la siguiente información: • Por cada departamento: número de departamento (único ), presupuesto y el número de empleado del gerente del departamento ( único ). • Por cada empleado: número de empleado ( único ), número de proyecto en el que actualmente trabaja, número de oficina y número de teléfono; más la fecha y salario para cada salario recibido en ese puesto. • Por cada proyecto: número de proyecto (único) y presupuesto. • Por cada oficina: número de oficina ( único ), superficie en metros cuadrados y números ( únicos ) de todos los teléfonos de esa oficina. Considere las siguientes suposiciones semánticas: • Ningún empleado es el gerente de más de un departamento a la vez. • Ningún empleado trabaja en más de un departamento a la vez. • Ningún empleado trabaja en más de un proyecto a la vez. • Ningún empleado ocupa en más de una oficina a la vez. • Ningún empleado tiene más de un teléfono a la vez. • Ningún proyecto está asignado a más de un departamento a la vez. • Ninguna oficina está asignada a más de un departamento a la vez. 5. Optimizar el diseño conceptual del ejercicio 3.1 de la actividad intraclase de la unidad anterior.

6.1.347. 6.1.348. 6.1.349. 6.1.350. 6.1.351. 6.1.352. 6.1.353. 6.1.354. 6.1.355. 6.1.356. 6.1.357.

1. Conocimiento. 6.1.358. 1.1. Mencione ¿Qué nos dice la teoría de la normalización? 2. Análisis. 2.1. Mencione 6 problemas que se puede presentar en un diseño de bases de datos 6.1.359.

si haber realizado una normalización. 2.2. ¿Qué explica la siguiente frase: "Hechos distintos, deben almacenarse en objetos distintos" ? 6.1.360. 3.Síntesis. 3.1. Realizar un mapa conceptual sobre todos los tipos de normalización que se menciona en el módulo.

3.2.

Realizar un ensayo en la que explique detalladamente el ejemplo complete

usando las tres normalizaciones de la pagina 3.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

6.1.361. 4. Aplicación. 4.1. Realizar un algoritmo o Flujograma en la que detalle el proceso de 6.1.362. realización de la 1FN, 2FN y 3FN. 4.2. Optimizar el diseño conceptual del ejercicio 3.2, 3.3 y 4.1 de la actividad intraclase de la unidad anterior.

4.3.

Realice una mesa redonda en la que resalte el tema "Claves en el desarrollo

correcto de las tres primeras formas normales". Siga la siguiente secuencia: 6.1.363.

a. Presentar a los participantes de la mesa. b. Señalar las normas de desarrollo del evento. c. Realizar las exposiciones con la participación de cada estudiante. d. Resumir el contenido expuesto por el moderador. e. Inicia el foro. f. Formular conclusiones. 6.1.364. 5. Valoración. 5.1. ¿Qué riesgos considera usted un diseño imperfecto de una base de datos? 5.2. ¿Qué aprendió de la unidad?

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

5.3.

UNIDAD N°4: ORGANIZACION DE UN SISTEMA GESTOR

DE BASE DE DATOS RELACIONAL. 5.4. 5.5.

5.6.

Competencia.

5.7.

5.8.

Utiliza a partir de un análisis de las necesidades del entorno empresarial un sistema gestor de bases de datos (SGBD) determinado de una forma precisa.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

5.9. 1. 2.

5.10. 5.11.

5.12. 3.

5.13. 5.14.

5.15. 4.

5.16. 5.17.

¿Cuáles son las características del modelado de datos? Realiza una investigación referente al diseño lógico de datos de un modelo relacional y explica sus procedimientos de traspaso de un Diagrama Entidad - Relación (DER) a Diseño lógico. Investiga y contesta las siguientes preguntas. a) ¿Qué es Sistemas de Información? b) ¿Qué son Archivos Planos? 5.18. ¿Qué es un Sistema de Bases de Datos?

46

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

46

5.19. 5.20. 5.21.

5.22.

Sistema de Gestión de Bases de Datos.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

5.23.

Como se menciono anteriormente un Sistema de Gestión de Bases de Datos (SGBD) es un Software de aplicación que permite extraer y almacenar información de un sistema de Bases de Datos, proporcionándolos seguridad, organización, independencia, integridad y consistencia en los datos, recuperación ante fallos del sistema, administración de la información.

5.24.

Una de las características de los SGBD es que permite compartir recursos en diferentes aplicaciones. En un Sistemas de bases de datos, todos los datos se integran en un único archivo físico o en un conjunto de archivos relacionados.

5.25.

Cualquier acceso a los datos solicitados por un usuario a través de una interfaz es ejecutado a través de un SGBD que es el Software que entiende y manipula la estructura lógica de los datos en el archivo.

5.26.

A finales de los 80 y principios de los 90 se han realizado algunos avances en el área de los SGBD, y quizás lo más significante, podría decirse, la incursión de los SGBD en la Internet, en la que sistemas como los de Bancos, Instituciones de Seguridad Social, entre otros, utilizan este sistema. 5.27. 5.28. 5.29.

5.30.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

5.31.

Al

5.32.

a. b. c. d. e. f.

1. Investigar en grupo de 3 personas una reseña histórica sobre los SGBD, considere: Fechas, fabricantes, nombres de los primeros SGBD, sus nuevas tendencias y evolución de los SGBD a través del tiempo. Para la exposición del texto expositivo siga las siguientes pautas: Investigar el contenido de diferentes fuentes Analizar el contenido investigado. Seleccionar las ideas principales. Investigar el significado de cada idea Elabore cuadros esquemáticos. Presentar el trabajo en plenaria. 5.33. Se calificara informe, defensa y diapositivas.

4 4 *

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

Al

5.34. 5.35. 5.36.

5.37.

Ventajas de los SGBD.

5.38. 5.39.

5.40. -

Usar SGBD para administrar información posee muchas ventajas:

Independencia de datos. Eficiencia en el acceso a la información. Integridad de los datos y su seguridad. Acceso concurrente y recuperación ante fallos del sistema. Menor tiempo en el desarrollo de aplicaciones. Administración de la información, entre otros.

5.41.

Analizando las ventajas que ofrecen los SGBD, pareciera que siempre se necesite gestionar la información, y esta seria la opción mas alternativa, sin embargo esta no es la situación, ya que un SGBD es un software complejo, lo que implica que para aplicaciones pequeñas o en las que no se requiera un control de usuarios, seguridades eficientes, etc., lo mas racional es optar por otra alternativa, por ejemplo archivos planos. Otra razón para no utilizar SGBD es cuando se desarrolle aplicaciones que no sean soportados por lenguajes de consultas.

4 4 *

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

5.42.

Estructura de un SGBD.

5.43.

5.44.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

48

Los objetos de datos y las relaciones definidas en DER, proporcionan la base para el diseño de datos. En muchas aplicaciones de software, la arquitectura de datos tendrá una gran influencia sobre la arquitectura del software que debe procesarlo. Es por ello que existe muchos SGBD en el mercado, a continuación mostramos algunos de ellos:

44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

Ilustración 21 Oracle 9i.

Ilustración 22 Microsoft SQL Server 2005.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

Ilustración 23 Mimer 9.2

Lcdo. Wilver E. Cevallos O.

Ilustración 24 Microsoft Office Access 2007.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

50

44*

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

51

Ilustración 25 MySQL en PhpMyAdmin 2.11.6

Usuarios relacionados con los Sistemas de Bases de Datos.

44 *

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

Los Sistemas de Bases de Datos al estar administrados por los SGBD, están asociados a una variedad de usuarios, con el objeto de atender la diversidad de tareas que se requiere para su desarrollo, administración y mantenimiento.

-

Usuarios Finales. Programadores de Aplicaciones. Administradores de sistemas de Bases de Datos. Administradores de Redes de comunicaciones. Implementadores.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

1.

Conocimiento. 1.1. Extraiga cinco frases con sentido completo referente a la organización los SGBD. 2. Comprensión.

53

2.1.

Elabore un resumen con las ideas que selecciono en la actividad anterior, agregando las que sean necesarias para enlazar las frases con sentido completo. 2.2. Explique ¿Cómo está estructurado un SGBD? 2.3. ¿Cuál es el papel de los usuarios que están relacionados con los sistemas de bases de datos? 3. Síntesis. 3.1. Realizar un MENTEFACTO referente a los SGBD. 3.2. Sintetizar en un párrafo las frases elaboradas en la actividad 1.1. 3.3. Elabore un diagrama de Venn sobre las relaciones que existe entre los SGBD que se muestran en las ilustraciones 21 al 25.

4. Análisis. 4.1. Contraste mediante un cuadro descriptivo los usuarios relacionados con los SGBD. 5. Aplicación. 5.1. Realice una investigación referente a un SGBD en el mercado y realizar una exposición presentando un informe y diapositivas. Considere versiones, requisitos de hardware y software, características y funciones. Para la exposición considere:

a. Investigar el contenido de diferentes fuentes b. Analizar el contenido investigado. c. Establecer comparaciones con otros SGBD. d. Elabore cuadros esquemáticos y pantallas capturadas. e. Presentar el trabajo en plenaria. 5.2. De la exposición de la actividad anterior, prepare

un nuevo cuadro

descriptivo siguiendo las siguientes pautas:

a. b. c. d. e.

Analizar los contenidos investigados. Seleccionar las ideas principales. Investigar el significado de cada idea Sintetizar en oraciones las ideas principales. Realizar un resumen con las oraciones elaboradas. 6. Valoración. 6.1. ¿Qué le gustó y disgustó de las actividades desarrolladas? 6.2. ¿Qué aprendió del tema desarrollado? 6.3. ¿Qué valores humanos considera usted que practicó en el desarrollo de las actividades? 6.4. ¿Qué sugiere al profesor para la siguiente clase?

UNIDAD N° 5: ESTRUCTURADO. SQL.

LENGUAJE

DE

CONSULTA

Competencia. Distingue los componentes del lenguaje de consulta estructurado para aplicar organizada y eficazmente las formas de implementación de bases de datos de una manera correcta y eficaz.

44*

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

1. 2.

Mencione 10 características sobre los SGBD.

53

Listar de al menos 4 Programas Gestores de Bases de datos que se encuentra en el mercado.

3.

¿Cuál es el papel que cumplen los administradores de sistemas de bases de datos?

Reseña histórica del SQL.

44*

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

Después de que el doctor Edgar Codd de la IBM en junio de 1977 publicara su artículo "Un modelo relacional de datos para grandes bancos de datos compartidos" delineando la teoría matemática de cómo la información podría almacenarse en tablas y manipularlas usando un sub-lenguaje de datos, la investigación dio lugar en los laboratorios de la IBM en California, EEUU para la implementación de un sub-lenguaje que se incorporar al modelo propuesto. Esto condujo a la creación de un modelo de datos relacional y del lenguaje de consulta estructurado denominado SQL (Structured Query Language). A principio se lo denomino SEQUEL (lenguaje de consulta en ingles estructurado) cuando en 1978 se la cambio por SQL, no obstante, siendo la IBM la precursora del desarrollo del SQL y del modelo relacional, es la corporación Oracle que en 1979 pone al mercado el primer producto comercial de SGBD que la denomino Oracle versión 1 y funcionaba en minicomputadoras e incluía la versión de SQL como lenguaje de consulta. Posteriormente en 1981 la IBM introduce su primer producto relacional comercial el SQL/DS. En 1985 se introduce el DB2 (Database 2). Una de las principales desventajas del modelo relacional, en sus primeros años de funcionamiento, respecto al modelo jerárquico y de red era la lentitud de respuesta frente a cantidades voluminosas de información y acceso concurrente.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

1. Prepare un panel con el tema "Evolución de los SGBD Oracle, Datábase y SQL/DS " Para el desarrollo del panel seguir la siguientes pautas: a. Recopilar el contenido de diferentes fuentes

b. c. d. e. f. g. h.

Presentar a los miembros del panel. Formular preguntas por cada estudiante. Responder a la pregunta planteada por uno de los integrantes. Continuar el dialogo Plantear otras preguntas pos parte del coordinador. Resumir brevemente el contenido expuesto. Sintetizar las exposiciones por parte del coordinador. i. Establecer un diálogo con los estudiantes. j. Analizar el contenido investigado. Se calificará informe, defensa oral y escrita.

54

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

Característica del SQL. El SQL es un lenguaje de cuarta generación y está compuesto por una serie de sentencias en ingles estructuradas de alto nivel que sigue una sintaxis definida. Aunque el SQL significa lenguaje de consulta estructurado, el SQL es más que una herramienta de consulta, es:

> > > >

Lenguaje de definición de datos o LDD (DDL en ingles). Lenguaje de manipulación de datos o LMD (DML en ingles) . Lenguaje de control de datos o LCD (DCL en ingles). Lenguaje de consulta o LC (QL en ingles).

54

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

>

>

Ilustración 26 Componentes del SQL.

> >

>

Por otro lado SQL no es un lenguaje de programación completo como el C++ o Visual Basic ya que no contienen bloques de sentencias de comienzo o fin (Begin-End), sentencias condicionales (if), sentencias de bucle (For, while, etc)

>

> > > > Adicionalmente, no es posible comprar el SQL como lo haría con otros lenguajes de programación como el Visual Estudio, Java Builder o C++, etc. Ya que este es parte embebida de los SGBD. Es por ello que el SQL no es considerado como un lenguaje de programación sino como un sub-lenguaje.

> A continuación se detalla un resumen de las características más importantes del SQL.

    

Independencia de los vendedores. Portabilidad a través de los sistemas informáticos. Consultas interactivas. Acceso de un sistema de bases de datos desde de programas. Lenguaje completo de bases de datos.

>

> >

>



Arquitectura cliente/servidor.

1. Investigar individualmente sobre la notación BACKUS-NAUR FORM (BNF). Se calificara Informe y defensa escrita.

> >

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

> > > 1. Conocimiento. > 1.1. ¿Qué significa las letras SQL? > 1.2. Formule una definición sobre el SQL. > 2. Comprensión. > 2.1. ¿Qué bloques definen o forman parte del lenguaje SQL? > 3. Análisis. > 3.1. ¿Por qué el SQL no es considerado un lenguaje de programación como el > Visual Basic? > 3.2. Explique el siguiente texto: "...él SQL no es considerado como un lenguaje de > programación sino como un sub-lenguaje." > 3.3. Redacte oraciones sobre la información referente a las reglas de la notación BNF.> 4. Síntesis. > 4.1. Realizar una rueda de atributos sobre las características del SQL. > 4.2. Estructure una línea del tiempo referente a la historia del SQL. > 5. Aplicación. > 5.1. Ilustre mediante un cuadro descriptivo la evolución de los SGBD Oracle, Database> y SQL/DS enfatizando la implementación del Sub leguaje SQL. Valoración. 7.1. ¿Por qué es importante la utilización del lenguaje SQL en las empresas?

6.

>

55

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

> >

>

1. En grupo de 2 personas, realizar una investigación sobre un SGBD propuesto por el docente, considerar: 1.1. Exploración de objetos de la base de datos. 1.2. Barras de herramientas. (si posee)

> > > > >

55

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec" > 1.1.

55

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

1.1. 1.2. 1.3. 1.4. 1.5. 1.3. Editor de sentencias SQL. 1.4. ¿En donde se almacenan las bases de datos? 1.5. ¿Cómo se crea una Base de Dato? 1.6. Se calificará: informe ilustrado, recopilación del contenido desde diferentes fuentes diapositivas y defensa del tema. 2. Organice un panel sobre la información investigada en la actividad anterior. Para el desarrollo del mismo siga la siguiente secuencia: a. Formulación d el tema. b. Presentar a los miembros del panel. c. Formular preguntas por cada estudiante. d. Responder a la pregunta planteada por uno de los integrantes. e. Continuar el dialogo f. Plantear otras preguntas pos parte del coordinador. g. Resumir brevemente el contenido expuesto. h. Sintetizar las exposiciones por parte del coordinador. 1.7. i. Establecer un diálogo con los estudiantes. 1.8. j. Elaborar una conclusión del contenido investigado.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

1.9.

1.10. 1.11. 1.12.

UNIDAD N° 6: LENGUAJE DE DEFINICION DE DATOS. LDD.

1.13. 1.14.

Competencia.

1.15. 1.16.

1.17. Utiliza el lenguaje de definición de datos para la implementación de bases de datos en los sistemas gestores de bases de datos Access y MySql con orden, respeto, precisión y pulcritud. 1.18.

1. 2. 3. 4. 5. 6.

¿Cuál es la diferencia entre dato y base de dato? ¿Qué es el SQL? ¿Cuál es el objetivo delo SQL? ¿Cuáles son los lenguajes que forman parte del SQL? Mencione 3 SGBD que usted conoce. Para que se utiliza la notación BNF.

1.19.

1.20.

1.21. En la unidad anterior se indico que el LDD en un componente del SQL. A como se estudio el LDD está compuesto por una serie de sentencias en ingles estructurado de alto nivel que siguen una sintaxis predefinida y normalizada. 1.22. 1.23.

Misión del LDD.

1.24. 1.25.

1.26. Es la encargada de la implantación de los objetos de un sistema de bases de datos, creación y administración, a través de un conjunto de sentencias SQL que utilizan las palabras reservadas:

    

Crear un objeto en la base de datos (CREATE). Eliminar un objeto de la base de datos (DROP). Modificar un objeto de la base de datos (ALTER). Conceder privilegios sobre un objeto de la base de datos (GRANT). Eliminar privilegios sobre un objeto de la base de datos (REVOKE).

1.27. 1.28.

1.29.

Objetos de un Sistema de Bases de Datos.

1.30. 1.31.

1.32.

Los componentes de un sistema de bases de datos son entre otros:

7.

Tabla s.

8. 1. 2. 3.

Vista s.

Catálogos. Esquemas. Usuarios.

1.33.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

1.34. 1.35.

Ilustración 27 Componente de un sistema de bases de datos y su relación.3

1.36. 1.37. 1.38.

Tablas.

1.39.

1.40.

Son los objetos que tratan directamente de la información a procesar. El modelo de datos relacional representa los datos y la asociación entre ellos, mediante una colección de relaciones o tablas, cada una de las cuales tiene un número de columnas con nombres únicos que definen un atributo que identifica a un dato común a almacenar, las tablas tienen a su vez filas que posee información de un registro en particular.

1.41. 1.42.

Ilustración 28 Terminología utilizada por referirse a una tabla y sus elementos.

1.43. 1.44. 1.45. 1.46. 1.47. 1.48. 1.49. 1.50. Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

1.51. 1.52. 1.53. De los términos asociados a las tablas son: el grado y la cardinalidad, en donde el grado indica el número de columnas y la cardinalidad el número de filas. Es así, una tabla con cardinalidad cero es una tabla vacía, es decir, sin datos. Una tabla puede tener cero filas, pero no cero columnas, al menos deben tener una.

1.54. Hay que considerar que el nombre de las tablas y columnas no deben repetirse en un Sistema de Base de Datos y Tablas respectivamente. 1.55.

1.56. • • • •

Tipos de datos más utilizados.

Tipo CHAR, VARCHAR. Tipo NUMBER Tipo LONG Tipo DATE

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

59

• •



1. Relacionar si estos tipos de datos se utilizan en los SGBD Microsoft Access y en MySqL. Presente un informe grupal (Dos personas).

444

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

• Creación de Tablas. • Para realizar la creación de Tablas, debemos considerar a un conjunto instrucciones • • •

denominados dentro del SQL como LDD (Lenguaje de definición de datos). La sintaxis para la creación de tablas dentro de la notación BNF es la siguiente:



Ilustración 29 Sintaxis elemental para la creación de tablas.

• • • Así por ejemplo si se desea crear una tabla estudiante quedara

• • • Restricciones de Integridad. • Un SGBD permite realizar una serie de controles sobre los objetos de los sistemas de bases

• •

de datos. Uno de estos controles es de impedir anomalías de la información que administra, por ejemplo, la redundancia de información. Uno de los mecanismos de este fin es el uso de las restricciones de integridad que se define cuando se crea el objeto o se modifica si el objeto esta en operación.

• Si analizamos la tabla ESTUDIANTE con la sentencia anterior, esta permitirá ingresar dos filas de datos con la misma información (redundancia).

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

59

• Para evitar este inconveniente, existe un mecanismo denominado: Restricción de la Clave Primaria.

• Una columna clave primaria PRIMARY KEY, es la(s) columnas que permiten identificar unívocamente cada fila en una tabla. Adicionalmente una columna clave primaria no permite que en sus columnas no tenga ningún valor o valor nulo en ninguna de sus filas. • En el ejemplo de la tabla estudiante, la columna NÚMERO es la que permite identificar unívocamente cada fila y por lo tanto se la debe identificar como clave primaria para que el SGBD pueda ser el control respectivo.

444

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

• •

• • Si incluimos la restricción mencionada en la creación de la tabla la sintaxis quedaría de la siguiente manera:

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

• El ejemplo de la tabla ESTUDIANTE queda redefinido así: •



Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

• • • • Restricción de valor No Nulo. • •

La restricción de valor No Nulo (NOT NULL) le indica al SGBD que no ingrese un valor Null como valor, es decir, no permite que el registro de algún campo este en blanco.

• Restricción de Unicidad. • • La restricción de Unicidad (UNIQUE) le indica al SGBD que no permita que se ingrese o modifique una fila y de cómo resultado valores repetidos en la columna con esta restricción. Puede involucrar una o varias columnas.

• Restricción de Control de Rango de dominio. • • La restricción de Control de Rango de dominio (CHECK) le indica al SGBD que no permita que se incumpla lo que se estipule en la clausula CHECK cuando se ingrese o modifique una fila. •

• Valor por Omisión. • • El valor por omisión (DEFAULT) le indica la SGBD que al momento de ingresar un dato en una determinada columna le asigne un valor preestablecido en dicha columna cuando no se ha establecido un valor en la inserción.

• La sintaxis con las restricciones de integridad expuestas anteriormente quedaría de la siguiente forma:

• Analicemos como podría ser la sentencia SQL que me permita la creación de la tabla PROFESOR con las siguientes características:

• • • Una sentencia como la que sigue me permite crear la tabla en estudio: • •

• • • • • • • Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

• • •

• • • Otro ejemplo seria:





• En este caso el campo Número y código poseen una claves primarias, al escribir la siguiente sentencia:

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

• Su semántica es correcta de acuerdo al esquema presentado, pero al ejecutarla nos dará error porque una tabla no puede tener DOS claves primarias. Lo que si es posible es que dos o más columnas sean LA clave primaria, cuando en este caso se denomina CLAVE PRIMARIA COMPUESTA.



En este caso ocurriría una restricción de clave primaria a nivel de tabla. En donde su

sintaxis sería la siguiente: • • •

• • • • • • • • • • • • • • • • • Entonces la sentencia correcta para crear la tabla matricula seria la siguiente:

• Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case



Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case



Diseñe individualmente un cuadro sinóptico referente a las restricciones en la creación de tablas.

• •

• Modificación de tablas • Se modifican las tablas por dos razones: Cambiando la definición de una columna (MODIFY) o añadiendo una columna a una tabla existente (ADD). La orden con la que se modifica una tabla es ALTER TABLE, cuyo formato es: •

• • • •

ALTER TABLE





[ ADD ( [, . . .)] ]

• • • • •

[ MODIFY ( [, . .

.)] ]



[ADD CONSTRAINTS

] [DROP CONSTRAINTS ]

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

65

• •

   

ADD añade una columna o más al final de una tabla. MODIFY modifica una tabla o más columnas existentes en la tabla. ADD CONSTRAINTS añade una restricción a la definición de la tabla. DROP CONSTRAINTS elimina una restricción de la tabla.

444

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

65

• •

• Ejercicio resuelto con creación y modificación de tablas: •

Crear la tabla FABRICANTES y ARTÍCULO con las siguientes columnas y restricciones.

• • No • Restricción mbre campo Clave primaría. No • podjabricanle • puede ser nula, Se define el atributo AUTO INC REME NT. • nombre • Ha de almacenarse en mayúsculas • Ha de almacenar en • pais mayú-sculas. El valor por defecto es 'España'. • Nombre • Restricción 1 campo • aiti culo • • çodjabri • cante • peso • La clave primaria está categoria formada por les campos articulo, codjabri cante, peso y • preci categoría. El campo categoría o_venta ha de ser 'Primera'.'Segunda1 prec¡o_tosi o 'Tercera'. Debe ser >0 o • Debe ser > 0 • Solución: •

• •

Create table FABRICANTES ( cod_fabricante integer auto_increment primary key,

• • • • • • • • • • •

444

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case



• • • • •

nombre varchar(50), pais varchar(20) default "España", constraint check(nombre=upper(nombre)), constraint check(pais=upper(pais)));

Lcdo. Wilver E. Cevallos O.

nombremayus paismayus

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"



66





Create table ARTICULOS ( codarticulo int, codfabricante int, peso int, • categoria varchar(20), • primary key(cod_articulo,cod_fabricante,peso,categoria), • constraint preventa check(precio_venta>0), • constraint precosto check(precio_costo>0), • constraint catcategoria check(categoria 1 in( Primera 1,1 Segunda 1,1 Tercera')));

• •

Añadir la restricción de clave ajena a la columna COD_FABRICANTE de la tabla ARTICULOS para que referencie a la tabla FABRICANTES. Realiza un borrado en cascada.



Alter table ARTICULOS add foreign key(cod_fabricante) references FABRICANTES(cod fabricante);

444

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"



66

• • •

• a) b) c)

1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe contestando las siguientes preguntas: ¿Qué dificultades obtuvo al momento de ejecutar los códigos? ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores? ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?

444

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

d) Supresión de tablas

66

e) f) La orden DROP TABLE suprime una tabla de la base de datos. Cada usuario puede borrar sus propias tablas. El formato de dicha orden es: g) h) DROP TABLE [CASCADE CONSTRAINTS]

i) Tendremos que tener cuidado con intentar borrar tablas cuyas claves principales estén referenciadas como claves ajenas en otras tablas. Como por ejemplo, si tenemos dos tablas como:

j) k) l) m)

PROVINCIA (Código Provincia, Nombre) EMPLEADO (Código empleado. Nombres, apellidos, Dirección, Código_Provincia)

444

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

n)

o) p) q) r) s) t) u) v) w) Si intentásemos suprimir la tabla PROVINCIA: x)

y)

DROP

TABLE PROVINCIAS

z) Nos daría un error debido a que podrían existir clave(s) ajena haciendo referencia a esa clave(s) primaria, es decir, existe una restricción de clave ajena (clave foránea) en la tabla EMPLEADO que referencia a la clave primaria de la tabla PROVINCIA.

aa)

Entonces, para borrar esta tabla hay que usar la opción CASCADE CONSTRAINTS, que suprimirá todas las restricciones de integridad que se refieran a claves de la tabla borrada. ab) ac) Ejemplo:

ad)

DROP

TABLE

PROVINCIAS

CASCADE CONSTRAINTS

ae) af)

ag)

1. Presente un informe individual ilustrado en la que detalle los pasos para crear, editar y eliminar tablas desde el sistema gestor de base de datos propuesto y explicado por el docente. ah) Se calificara: imágenes, pasos detallados, conclusiones, recomendaciones y defensa.

ai) aj) ak)

al) Índices. am)

an)

Uno de los objetivos de los índices es la de controlar la unicidad de los datos en las columnas. Dicho de otra manera un índice es como un índice de un libro que ayuda a encontrar la información mas eficientemente. Normalmente utilizan estructuras de arboles balanceados (B-Tree), para las páginas de los índices que utilizan punteros de sus registros a las filas de los datos.

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

ao) ap) aq)

Aunque no está definido en el estándar SQL, casi todos los SGBD los utilizan.

Ilustración 30 Estructura de los Indices. Normalmente, crean automáticamente un índice por cada tabla basada en su clave primaria.

ar) Los índices no solo proporciona ventajas, sino también desventajas, por lo que tendríamos que tener presente para decidir cuando son necesarios.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

as) at) au) av) aw) ax) ay) az) ba) bb) bc) bd) be) bf) bg) bh) bi) bj) bk) bl) bm)

bn) bo) bp) bq)

br)

Ilustración 31 Ventajas y desventajas de los índices.

Creación, Modificación y Eliminación de

Índices. Creación de índices.

bs)

Al no estar estandarizado el uso de índices, cada SGBD utiliza su propia sintaxis, aunque la mayoría utiliza una estructura más o menos parecida a la siguiente grafica:

Ilustración 32 Sintaxis para la creación de índices.

69

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

bt) bu) bv) Ejem pl o:

bw) bx)

69

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

by) bz) ca) cb) Modificación de índices. cc)A diferencia de la creación de índices, en la que los SGBD proveen de una sintaxis similar, no ocurre lo mismo con la modificación de estos. Mas aun, la mayoría de SGBD ni siquiera proveen de una sentencia para la modificación de índices.

cd)

Entonces, la solución, seria eliminarlo primero y luego crear el índice nuevamente con el mismo nombre y las características deseadas.

ce)

cf) Eliminación de índices. cg) Tenemos más opciones que para la creación de los mismos.

ch) ci)

cj) Ejemplo: ck) cl) cm) cn) co) cp)

cq) En

Microsoft Access la mi_primer_indice seria: cr)

Lcdo. Wilver E. Cevallos O.

sentencia

para

la

eliminación

del

índice

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

cs)

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

71

1. Crear una tabla llamada PELÍCULAS con los siguientes campos y restricciones. La clave primaria de esta

2. Crea la tabla CLIENTES con los siguientes campos y restricciones: La clave primaria de esta tabla es el c

ct) 3. cu) cv) cw) cx) cy) cz) da)

db) dc) dd) 4.

de)

df) dg) dh) di) dj) dk) dl) dm) dn) do)

Crear las siguientes tablas: Crear una tabla llamada PERSONAS con los campos (dni, nombre, apellidol, apellido2). dp) Crear una tabla llamada VEHICULOS con los campos (CodigoVehiculo, marca, modelo, cilindrada). dq) Crear una tabla llamada PERSONAS_VEHICULOS con los campos (dni, CodigoVehiculo). dr) Crear una tabla llamada FAMILIA con los campos (CodigoFamilia, DescripcionFamilia). ds) Identificar las claves primarias de cada tabla y las claves foráneas teniendo en cuenta que 1 PERSONA puede tener 0 o varios VEHICULOS. 1 FAMILIA tendrá 2 o más componentes, l PERSONA puede pertenecer a l o a ninguna familia.

dt) du)

Crear las siguientes tablas en MySQL especificando en cada una de ellas la clave primaria y ajena(s) en caso de que las haya. Se debe permitir la eliminación de registros en cascada.

4 4 4

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

dv)

72

5. Del siguiente Diseno fisco de datos, realizar la creación de tablas:

444

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

dw) dx)

6. Sea el diseño lógico siguiente: TRABAJADOR (Id_t, nombre, apellidos, tarifa, oficio, id_supervisor) EDIFICIO (Id_E, dirección, tipo, nivel_calidad, categoría) ASIGNACION (Id_T, ID_E, fecha_inicio, numero_dias) Realizar la creación de tablas e ingresar al menos 3 registros en cada tabla.

72

dy) dz) ea) 1. Conocimiento. 1.1. ¿Qué significa las letras LDD? 1.2. Realizar un cuadro en la que explique brevemente las palabras reservadas del lenguaje de definición de datos.

1.3. ¿Cuál es la sintaxis para la creación de tablas? eb) 2. Comprensión. 2.1. Realizar una explicación sobre la ilustración 26 de esta unidad referente a los componentes de un sistema de bases de datos.

2.2. Mencione 3 características de las tablas. 2.3. ¿Qué relación existe entre los índices y los índices de los libros? 2.4. Mencione con sus propias palabras una explicación breve sobre las ventajas y desventajas del uso de los índices.

ec) 3. Análisis. 3.1. ¿Para qué se utiliza dentro del SQL el LDD? 3.2. Explique ¿Cual es la razón de que no exista para la mayoría de los SGBD una

4

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

ed)

ee) sentencia de modificación de índices? ef) 3.3. Analizar y explicar sobre la grafica referente a la estructura de los Índices.

eg) 4. Síntesis. eh) 4.1. Dada la siguiente tabla indicar sus partes. ei) ej) ek) el) em) en) eo) ep) eq) er)

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

a) et) Realizar es)

b)

un cuadro explicativo sobre los tipos de datos utilizados para la definición de tablas, indicar su uso, sintaxis y observación. Realizar una técnica didáctica en la que sintetice las restricciones en la 4eu) creación de tablas. . 3 .

ev)

Escriba la sintaxis para la creación de tablas. Escriba la sintaxis para la supresión de tablas. Aplicación. ew) 5.1. Crear las siguientes tablas especificando en cada una de ellas la clave primaria y ajena(s) en caso de que las haya. Se debe permitir la eliminación de registros en cascada.

73

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

73

ex) ey) ez) fa) fb) fc) fd) fe) ff) fg) fh) fi) fj) fk) fl) fm) fn) fo) fp)

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

5.2. Presentar el proyecto de creación de tablas referente a la empresa investigada. 5.3. Elabore una ficha de causas y consecuencias referente al uso del programa gestor de bases de datos enfatizando los errores que le han aparecido en el transcurso de la codificación. fq) 6. Valoración. fr) 6.2. ¿Por qué es importante el uso los índices en los libros?

fs)

ft)

fu) fv) fw) fx) fy) fz) UNIDAD N° 7: LENGUAJE DE MANIPULACIÓN DE DATOS. ga) gb)

gc)

Competencia.

gd)

ge)

Utiliza el lenguaje de manipulación de datos para la implementación de bases de datos en los sistemas gestores de bases de datos Access y MySql con orden, respeto, precisión y pulcritud.

gf) 1. 2. 3. 4. 5. 6.

¿Qué significa las siglas LDD? ¿Por qué es importante el uso correcto del LDD? ¿Cuáles son las sentencias del LDD? ¿Cuáles son los objetos que gestiona un SGBD? ¿Cuáles son los SGBD que usa para sus bases de datos? ¿Para que se usa el Power Designer?

gg) gh)

gi)

En SQL92 la manipulación de datos se hace básicamente con las sentencias SELECT (seleccionar), UPDATE (actualizar), DELETE (borrar) e INSERT (insertar) que constituyen el lenguaje de manipulación de datos básico. gj) gk)

gl) INSERT.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

gm)

74

Inserta una o más filas nuevas dentro de la tabla especificada. Cuando se

utilice la cláusula VALUES sólo se insertará una fila.

gn)

INSERT INTO {}

[({},)]

go)

gp)

{VALUES

({

|

:

|

NULL},) }

gq)

gr) Ejemplo usando sentencias INSERT. gs)

Se dispone de las siguientes tablas de datos EMPLE y DEPART:

gt) gu) gv)

44 4

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

gw) gx) gy) gz)

1. Realizar su respectiva creación de

tablas.

ha)

Create table alumnos( expediente int(10) primary key, nombre varchar(50), localidad varchar(50), fechanac date, direccion varchar(50), curso int(2), nivel varchar(10), faltas int(3));

hb)

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

hc)

2.

Realizar la inserción de todos registros mostrados en la figura.

hd)

Insert into alumnos values(123456,'Juan Miguel Soler Bakero',,Murcia,,,1995/10/10,,,Gran v'a, 2, 4A',1,'ESO',15); Insert into alumnos values(654321,'Laura G—mez Fern+ndez1,1Lorca',11994/10/051,'Junterones, 10, 5B',2,'ESO',25); he) Insert into alumnos values(7 65432,'Beatriz Mart'nez Hern*ndez,,,Murcia,,,1993/05/05,,,Plaza Mayor, 6, 3B',3,'ESO',5); hf) Insert into alumnos values(987654,'Diego Mar'n hg) Llorente','Alhama de Murcia',,1990/03/06,,,Diego de la Cierva, 5, 7A',1,'BACHILLER',34); hh) hi) Insert into alumnos values(445544,'Juan Francisco Cano Riquelme,,,Murcia,,,1992/01/07,,,Plaza de Belluga, 3, 4A',4,'ESO',13); hj) Insert into alumnos values(223322,'Raquel Riquelme Rubio',,Lorca,,,1990/23/11,,,San Juan, 14, 3B',1,'BACHILLER',7);

hk)

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

76

hm)

1. Realizar la inserción de los 5 últimos registros de la tabla ALUMNOS.

444

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

hn)

76

ho)

hp) a) b) c)

1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe contestando las siguientes preguntas: ¿Qué dificultades obtuvo al momento de ejecutar los códigos? ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores? ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?

444

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

76

d) e) f)

g)

SELECT.

h) Selecciona filas de una o más tablas. Su sintaxis: > > > >

SELECT

[ALL |

DISTINCT ]

FROM {

{),

[WHERE ] [GROUP BY {

|

},]

> [[ORDER BY {{ ::= {* | { | . | | .*}

i) La palabra clave DISTINCT indica que si existen filas idénticas, sólo se mostrará una de ellas. j)

k) Ejemplo usando sentencias SELECT. l) Se dispone de las siguientes tablas de datos EMPLE y DEPART:

444

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

m) n) o) 1.

Realizar su respectiva creación de tablas.

2.

Realizar la inserción de todos registros mostrados en la figura.

3.

Realizar las siguientes consultas:

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

3.1. 4. 3.2. 5. 3.3. 6. 3.4.

Mostrar select Mostrar select

el apellido, oficio y número de departamento de cada empleado. apellido, oficio, dept_no from emple; todos los datos de todos los empleados. * from emple;

ll

Datos de los empleados ordenados por número de departamento descendentemente. select * from emple order by dept_no desc;

Datos de los empleados ordenados por número de departamento descendentemente y dentro de cada departamento ordenados por apellido ascendentemente.

7. select * from emple order by dept_no desc, apellido; 3.5. Mostrar los datos de los empleados cuyo salario sea mayor que 2000000. 8. Select * from emple where salario>2000000; 3.6. Mostrar los datos de los empleados cuyo oficio sea "ANALISTA". 9. select * from emple where oficio='ANALISTA' 3.7. Seleccionar el apellido y oficio de los empleados del departamento número 20. 10. select apellido, oficio from emple where dept_no=20; 3.8. Mostrar los empleados cuyo departamento sea 10 y cuyo oficio sea "ANALISTA". Ordenar el resultado por apellido. 11. select * from emple where dept_no=10 and oficio='ANALISTA' order by apellido;

3.9. Ordenar los empleados por oficio, y dentro de oficio por apellido. 12. select * from emple order by oficio, apellido 13.

444

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

3.10. 14. 15. 3.11.

Mostrar los apellidos de los empleados cuyo oficio sea "VENDEDOR", "ANALISTA" o "EMPLEADO". select apellido from emple where oficio in ('VENDEDOR','ANALISTA','EMPLEADO');

Mostrar los apellidos de los empleados cuyo oficio no sea ni "ANALISTA" ni "EMPLEADO", y además tengan un salario mayor de 200000.

16.

select

apellido

('ANALISTA','EMPLEADO')

3.12.

from

emple

where

oficion

not

and salario>2 0 0 0 00;

Obtener los apellidos de todos los empleados en

minúscula.

17. 3.13.

select lower(apellido)

from emple;

Mostrar los datos de los empleados que hayan sido contratados en el año

1992.

18. 3.14.

select * from emple where year(fecha_alt)=1992;

Mostrar los datos de los empleados del departamento 10 que no tengan comisión.

19.

select * from emple where dept_no=10 and comision is null;

Lcdo. Wilver E. Cevallos O.

in

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

3.15.

78

3.16. 3.17.

3.18. 1. De las tablas EMPLE y DEPART realizar las siguientes consultas: 1.1. Mostrar el número, nombre y localización de cada departamento. 1.2. Datos de los empleados ordenados por apellidos. 1.3. Mostrar todos los datos de los empleados ordenados por apellido. 1.4. Seleccionar los empleados cuyo oficio sea "VENDEDOR" Mostrar los 1.5.

datos ordenados por apellido. Seleccionar de la tabla EMPLE los empleados cuyo apellido empiece por "A".

1.6. 1.7.

1.8. a) b) c)

1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe contestando las siguientes preguntas: ¿Qué dificultades obtuvo al momento de ejecutar los códigos? ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores? ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?

444

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

78

d) UPDATE. e)

f) Modifica las columnas seleccionadas de una tabla en todas las filas que satisfacen una condición de búsqueda.

g) UPDATE {} h) SET { = {

| NULL}},

i) [WHERE ] j) i

444

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

k)

l) Ejemplo usando sentencias UPDATE.

m) n)

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

79

1. 2. 3.

Realizar su respectiva creación de tablas. Realizar la inserción de todos registros mostrados en la figura. Establecer el número de plazas de todos los hospitales a 250. Update HOSPITALES set num_plazas = 250

4.

Poner en 2000 el número de plazas del hospital número 3.

o) Update HOSPITALES set num_plazas=2 0 00 where cod_hospital=3 5.

Con una sentencia UPDATE dobla el número de plazas de los hospitales cuya letra empiece con "R".

p) Update HOSPITALES set num_plazas = num_plazas*2 where nombre like q)

a)

r) s)

t)

1. Cree 5 sentencias usando la clausula UPDATE en la tabla HOSPITALES anotando el enunciado correspondiente.

4 4 4

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

79

u) v)

w) 1. a) b) c)

Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe contestando las siguientes preguntas: ¿Qué dificultades obtuvo al momento de ejecutar los códigos? ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores? ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?

4 4 4

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

d) e) f)

g) DELETE h)

i) Borra una o más filas de una tabla o vista. Si no se especifica la cláusula WHERE, se borran todas las filas de la tabla señalada en la cláusula FROM. Si se especifica la cláusula WHERE sólo serán borradas aquellas filas que hagan la condición de búsqueda verdadera. j)

k) Su sintaxis: l)

m) DELETE FROM ( } [WHERE ] n) o)

p) q) r) s) t) u) v) w) x) Ejemplo usando sentencias DELETE.

y) z)

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

1. 2. 3.

Realizar la inserción de todos registros mostrados en la figura. Borrar el registro de la persona cuyo DNI es igual a "22233311".

aa) 4.

80

Realizar su respectiva creación de tablas.

Delete from PERSONA where dni = 22233311;

Borrar los registros de las personas con salario de 1900 y su función es de medico.

ab)

Delete from PERSONA where salario = 1900 and function =

'MEDICO'

5.

Borrar los registros de las personas que posean un salario entre 1200 a 1500

ac) 6.

Delete from PERSONA where salario between 1200 to 1500

Borrar todos los registros cuyos apellidos sean "Martínez Molina"

ad)

Delete from PERSONA where apellidos like

'Martínez Molina*'

444

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

80

ae) af)

ag)

1. Cree 5 sentencias usando la clausula DELETE en la tabla PERSONAS anotando su enunciado correspondiente.

444

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

80

ah) a) b) c)

1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe contestando las siguientes preguntas: ¿Qué dificultades obtuvo al momento de ejecutar los códigos? ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores? ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?

444

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

81

2. Conocimiento. ai) 2.1. ¿Qué es el lenguaje de manipulación de datos? 3. Comprensión. aj) 3.1. ¿En qué consiste cada una de las clausulas del LMD? 4. Análisis. ak) 4.1. Investigar ¿Que son las funciones agregadas? Y ¿En qué clausulas 5.

del LMD se utilizan? Síntesis - Aplicación. al) 5.1. De la tabla EMPLE y DEPART mostrada en los temas anteriores de esta unidad, aplicar el LMD con las siguientes ordenes:

444

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

81

5.1.1. Insertar

en la tabla EMPLE un empleado con código 9999, apellido 'GONZÁLEZ' y código de departamento 10. 5.1.2. Insertar en la tabla EMPLE un empleado con código 5000, apellido 'MORAGA', oficio 'EMPLEADO', su director es el empleado 7902, la fecha de alta en la empresa es '17/10/99', su salario es 100000, no tiene comisión y pertenece al departamento número 20. (para indicar que no tiene comisión deberás poner NULL en el campo comisión). 5.1.3. Insertar en la tabla DEPART un departamento cuyo número sea 60 y de nombre 'PRUEBAS'. 5.1.4. Doblar el salario a todos los empleados del departamento 30. (Utilizar UPDATE). 5.1.5. Cambiar todos los empleados del departamento número 30 al departamento número 20. 5.1.6. Incrementar en un 10% el sueldo de los empleados del departamento 10. (salario*1.1). 5.1.7. Cambiar la localidad del departamento número 10 a 'BILBAO'. 5.1.8. En la tabla DEPART borrar el departamento número 50. 5.1.9. En la tabla EMPLE borrar todos los empleados que sean del departamento 20 y sean 'ANALISTAS'. 5.1.10. Borrar de la tabla EMPLE todos los empleados que no tengan comisión. 5.1.11. Seleccionar de la tabla EMPLE aquellas filas cuyo APELLIDO empiece por "A" y el OFICIO tenga una "E" en cualquier posición. 5.1.12. Seleccionar los empleados cuyo salario esté entre 100000 y 200000. Utilizar el operador BETWEEN. 5.1.13. Obtener los empleados cuyo oficio sea "VENDEDOR" y tengan una comisión superior a 100000. 5.1.14. Seleccionar los datos de los empleados ordenados por número de departamento, y dentro de cada departamento ordenados por apellido. 5.1.15. Número y apellidos de los empleados cuyo apellido termine por "Z" y tengan un salario superior a 300000. 5.1.16. Datos de los departamentos cuya localización empiece por "B". 5.1.17. Datos de los empleados cuyo oficio sea "EMPLEADO", tengan un salario superior a 100000 y pertenezcan al departamento número 10. 5.1.18. Mostrar los apellidos de los empleados que no tengan comisión. 5.1.19. Mostrar los apellidos de los empleados que no tengan comisión y cuyo apellido empiece por "J". 5.1.20. Seleccionar el apellido, salario y número de departamento de los empleados cuyo salario sea mayor que 200000 en los departamentos 10 ó 30.

am) an) ao) ap) aq)

44 4

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

ar)

5.1.21.

Mostrar el apellido y número de los empleados cuyo salario no esté entre 100000 y 200000 (utilizar BETWEEN). 5.1.22. Obtener el año de contratación de todos los empleados (función YEAR). 5.1.23. Mostrar los datos de los empleados que hayan sido contratados en el mes de febrero de cualquier año (función MONTHNAME). 5.1.24. Mostrar los datos de los empleados cuyo apellido empiece por 'A' y hayan sido contratados en el año 1990. 5.2. Elabore una ficha de causas y consecuencias referente al uso del programa gestor de bases de datos enfatizando los errores que le han aparecido en el transcurso de la codificación. at) 6. Valoración. au) 6.1. ¿Por qué son importantes las sentencias del LMD? 7.3. ¿Qué es para usted administrar una base de datos de una empresa importante? as)

Lcdo. Wilver E. Cevallos O.

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

7.4. 7.5.

UNIDAD N° 8: DESARROLLO DE UNA APLICACIÓN DE GESTIÓN.

7.6. 7.7. 7.8.

7.9.

Competencia.

7.10.

7.11. Aplica los conocimientos de diseño, implementación de bases de datos y diseño de servicios de presentación en entornos gráficos para desarrollar una aplicación informática de gestión de una manera ágil, ordenada y eficiente.

Lcdo. Wilver E. Cevallos O.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

83

1. 2. 3. 4. 5. 6.

¿Qué es Visual Basic? ¿Cuáles son las versiones que visual Basic tiene en el mercado? ¿Qué relación tiene una base de datos con los sistemas informáticos? ¿Qué relación tiene un SGBD con un lenguaje de programación? ¿Por qué se considera el SQL como un sub-lenguaje? ¿Por qué es importante enlazar una base de dato con una aplicación informática de gestión?

7.

Listar las aplicaciones del Software.

1.

Presentar un informe de tres personas sobre: ¿Cómo se obtiene un presupuesto económico de un software? Para el informe considere: Pasos para realizar el presupuesto, conclusiones y recomendaciones. Se calificará: Informe detallado, Defensa y diapositivas. Organice una mesa redonda en la que se discutirá el tema: "¿ Cómo se obtiene un presupuesto económico de un software?". Para el desarrollo de la misma seguir la siguiente secuencia: Presentar a los participantes de la mesa. Señalar las normas de desarrollo del evento. Realizar las exposiciones con la participación de cada estudiante. Resumir el contenido expuesto por el moderador. Inicia el foro. Formular conclusiones.

8. 9. 2. a. b. c. d. e. f.

10.

444

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

83

g.

h.

a. b. c. d. e.

1. Analizar las diapositivas con el tema "Desarrollo de una aplicación de gestión" presentadas por el docente. Seguir la siguientes pautas: Analizar el contenido investigado. Seleccionar las ideas principales. Investigar el significado de cada idea Sintetizar en oraciones las ideas principales. Realizar un resumen con las oraciones elaboradas. f. Presentar un informe detallado sobre la misma. Para el informe se considera los tópicos, conclusiones y recomendaciones.

444

Desarrollo de Aplicaciones en Entorno de Cuarta Generación y con Herramientas Case

i.

j. k. l. m. Informe

de requisitos.

especificación

de

n. o.

p. Parte I. Identificación del Contexto. 1. 2. 3. 4. 5.

Caratula. Descripción de la institución. Organigrama de la institución. Antecedentes. Árbol de problema sobre los procesos manuales y tediosos.

6. 7.

Procesos. Entorno técnico.

q.

r. Parte II. Especificación de los Requisitos. 1. 2. 2.1. 2.2. 2.3. t.

Necesidad y justificación del nuevo producto. Objetos

s.

u.

v.

Tablas de la Base de datos. Formularios. Reportes. 3.

Procesos y funciones propuestos, clasificadas

por:

w.

Ingreso.

y.

Consult a.

3

x. 3

z.

aa.

3

úsqued a. ac.Actualiz aciones .

ab. 3

ad. ae. 3

C

alculo.

af. ag. 3

B

R

eporte.

ah. ai. Respald 3

o.

aj. ak. 3

S

egurida d.

Lcdo. Wilver E. Cevallos O.

4. 5. 5.1. 5.2. 6. 7.

Delimitación. Modelado de datos.

al.

Diagrama Contextual. Diagrama Físico de datos.

am.

Modelado funcional y flujo de la información. Métrica basada en líneas de código.

an. 1. 2. 2.1. 2.2. 2.3.

Parte III. Manual de Usuario.

Introducción. Generalidades del sistema.

ao.

Requisitos de Hardware. Requisitos de Software. Instalación.

3. Descripción detallada del sistema. 3.1. Menú Principal. 3.2. Formularios en general. ap. 4. Recomendaciones.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

85

aq.

ar. 1.

Presentar un informe detallado sobre la implantación de una base de datos con el lenguaje de programación y SGBD indicados por el docente. as. Para el informe considere: Ventanas capturadas, explicación y conclusiones y recomendaciones.

Material exclusivo para los alumnos del Centro Educativo "Wenceslao Rijavec"

at.

86

4 4 4