Universidad Tecnológica de Querétaro
Firmado digitalmente por Universidad Tecnológica de Querétaro Nombre de reconocimiento (DN): cn=Universidad Tecnológica de Querétaro, o=UTEQ, ou=UTEQ,
[email protected], c=MX Fecha: 2015.09.21 17:17:08 -05'00'
UNIVERSIDAD TECNOLÓGICA DE QUERÉTARO
Nombre del Proyecto:
Migración de Base de Datos para Centros de Control.
Empresa: Technical Operations
Memoria como parte de los requisitos para obtener el Título de: TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA REDES Y TELECOMUNICACIONES.
Presente: HERNANDEZ URIBE GRECIA PAOLA
Asesor de la UTEQ:
Asesor de la organización:
Ing. Jorge Ramiro Alvarado de la Vega
Ing. Gustavo Israel López García
Santiago de Querétaro, Qro. Septiembre del 2015. 1
Resumen La estadía profesional fue realizada en la Empresa Techops específicamente en el departamento de IT. El proyecto integra una aplicación web y una base la cual permitirá dar gestión y control a la información que contienen las tarjetas del servicio. Dicha aplicación consta de
ciertos módulos e identifica a dos tipos de
usuarios, como administrador y otro como usuario general cuyo acceso será validado por medio de la aplicación web, que hará verificación con los datos de la base de datos. Al igual que la aplicación web se diseñó e implemento una base de datos hecha a la medida con mayor seguridad de información y automatización del software.
2
Description
3
Dedicatorias Esta memoria va dedicada una mi Abuelito que fue gran persona la cual me enseñó a salir adelante, a luchar por mis objetivos, que la responsabilidad es primero, que me apoyo y que sobretodo creyó en mi cuando nadie más lo hacía.
4
Agradecimientos Siempre me he sentido maravillada por la hermosa familia que tengo, se han preocupado desde el día que llegue a este mundo, me han brindado las armas y educación adecuada para saber cómo luchar y salir adelante en esta vida. Sus enseñanzas permanecen hasta el día de hoy que obtengo un logro más en mi vida, mi titulación de TSU.
5
Índice Resumen ....................................................................................................... 2 Description ................................................................................................... 3 Dedicatorias.................................................................................................. 4 Agradecimientos .......................................................................................... 5 Índice ……………………………………………………………………………………….6 I.- Introducción ............................................................................................. 8 II.- Objetivos.................................................................................................. 9 III.- Antecedentes ....................................................................................... 10 IV.- Justificación......................................................................................... 11 V.- Alcance .................................................................................................. 12 VI.- Análisis de riesgos. ............................................................................. 13 VII.- Fundamentación teórica. ................................................................... 14 VII.I ¿Qué es una base de datos? .......................................................... 14 VII.II ¿Para qué sirven las bases de datos? .......................................... 14 VII.III Que es un sistema gestor de base de datos. .............................. 16 VII.IV Conexión a la base de datos ........................................................ 19 VII.V Que es MySql.................................................................................. 19 VII.VI Ventajas y desventajas de utilizar mysql .................................... 20 VII.VII Que es SQL server ....................................................................... 21 VII.VIII Ventajas y desventajas de utilizar SQL server ......................... 22 VII.IX ¿Que es un diagrama entidad relación? ..................................... 23 VII.X Elementos de un diagrama entidad relación. .............................. 24 VII.XI Relaciones de cardinalidad .......................................................... 25 VII.XII Claves ........................................................................................... 25 VII.XIII Datos odbc................................................................................... 26 VIII.- Plan de actividades ........................................................................... 27 IX.- Recursos materiales y humanos. ....................................................... 28 IX.I Recursos humanos .......................................................................... 28 IX.II Recursos Materiales de Hardware. ................................................ 28 IX.III Recursos Materiales de Software. ................................................ 28 X.- Desarrollo del proyecto. ....................................................................... 29 X.I Actividades dentro del proyecto ...................................................... 29
6
X.II Diseño de diagrama entidad-relación ............................................. 31 X.III Exportación de la base de datos .................................................... 32 X.IV Instalación de SQL server 2008 ..................................................... 37 X.V Migración de base de datos de mysql a SQL Server. ................... 40 XI.- Resultados obtenidos ......................................................................... 45 XII.- Conclusiones y recomendaciones .................................................... 46 XIII.- Anexo XIII.I Actividades Adicionales XIV.- Bibliografía
7
I.- Introducción
Este proyecto trata de crear una base de datos que permita la introducción de los datos durante el mantenimiento de un avión. El sistema debe ser capaz de extraer las revisiones completas del mantenimiento, de cada tarjeta de servicio, del tiempo y los materiales que se utilizaron, para visualizarlas en el propio sistema, a través de una interfaz web para que su consulta sea más fácil para un mayor conjunto de personas. El sistema debe proveer una forma de administrar los servicios de manera ágil, cómoda, intuitiva y eficaz para evitar que quien está utilizando el sistema pierda demasiado tiempo. Con este proyecto se pretende automatizar los procesos que tiene la información de cada avión que entra a mantenimiento.
8
II.- Objetivos
Estructurar e implementar la base de datos, para permitir automatizar los procesos de ingresar las tarjetas de servicio para los aviones, registrar la salida de la tarjeta, controlar la información que se está registrando y tenga mayor seguridad en accesar
y administrar
la información que se está
manejando dentro de los centros de control.
Objetivos específicos
Replantear los diseños de la base de datos.
Migrar la base de datos en una plataforma más segura.
Dar mejor administración a los procesos de los datos.
Que se unifique la base de datos para todos los centros de control.
9
III.- Antecedentes
Con el objetivo de consolidar el manejo efectivo de la información, se prevé la actualización permanente de la Base de Datos de Control de Operaciones. La primera versión de la Base de Datos se construyó en el año 2007 con el objeto de consolidar en un único instrumento la información básica de la empresa. Posteriormente, entre los años 2009 y 2013 se incorporaron mejoras a la herramienta informática y se realizaron regularmente revisiones de la consistencia de la información de las fichas de proyectos. Con el objeto de registrar los procesos en el mantenimiento de los aviones, se dio la solución de implementar mayor seguridad y organización para la información. Para incorporar
estos
nuevos
instrumentos,
fue
necesario
realizar
ajustes y nuevas programaciones técnicas e informáticas en la plataforma de la Base de Datos de Control de Operaciones ya existente.
10
IV.- Justificación Debido a la creciente necesidad de las organizaciones del uso de
la
tecnología en sus procesos principales de negocio, y con el objetivo de que estas tecnologías apoyen la toma de decisiones desde el nivel operativo de la organización hasta un proceso complejo dentro de esta, surge entonces la creación de la
bases de datos, para gestionar de manera óptima la
información manejada en los principales procesos de negocio que tiene una empresa. El principal motivo de este proyecto, tiene que ver con la inclusión de la tecnología primeramente como soporte a los procesos de negocio que se vienen llevando a cabo en una organización, en un taller de mantenimiento de aviones así mismo se espera que esta tecnología implementada, justificándose en sus óptimos resultados, sea una mejora hacia la organización
para
gestionar
y
administrar
correctamente
toda
su
información, esto es, que la organización utilice la tecnología como su primer recurso fundamental para poder realizar todos los procesos en un ambiente sistematizado, el cual sea totalmente confiable y oportuno para cuando se necesite extraer información del mismo.
11
V.- Alcance Este proyecto es un paso grande para la mayor estabilidad y seguridad en la manipulación de la información. En este caso el proyecto se centra en buscar mejor seguridad, organización y administración de la información. Con el proyecto se busca también la optimización de recursos físicos, la reducción de costos operacionales y el mejoramiento de la imagen corporativa de la empresa.
12
VI.- Análisis de riesgos. No obstante, no podemos olvidar otros riesgos que pueden afectar a nuestra aplicación, como puede ser un corte en el suministro eléctrico o el fallo del equipo informático. Estos riesgos son ajenos a nuestra aplicación, pero deben tenerse en cuenta, y el hecho de existir la posibilidad del fallo de la máquina nos obliga a instaurar un sistema de copias de seguridad de los datos de nuestra aplicación.
Riegos
Posible resultado
Impacto sobre el proyecto
Que no se acepte el El rechazo total de proyecto, debido a que ya proyecto. estaban muy familiarizados con la base de datos que tienen.
Alto.
Cambios en el alcance Retraso en seguimiento. del proyecto.
Medio.
Falta de organización en Retaso en el desarrollo el proyecto. del proyecto.
Alto.
Tiempo excedido en otras Retaso para cumplir el actividades ajenas a este objetivo y el alcance del proyecto. proyecto.
Alto
El análisis de la tabla Retraso en el desarrollo principal, se extendió del proyecto mucho.
Medio.
El modelo relación tuvo modificaciones.
Alto.
entidad Retraso en el desarrollo varias del proyecto.
Tabla 1.Riesgos e impactos en el proyecto.
13
VII.- Fundamentación teórica.
VII.I ¿Qué es una base de datos? Una base de datos es una colección de información organizada de forma que un programa de ordenador pueda seleccionar rápidamente los fragmentos de datos que necesite. Una base de datos es un sistema de archivos electrónico. Las bases de datos tradicionales se organizan por campos, registros y archivos. Un campo es una pieza única de información un registro es un sistema completo de campos y un archivo es una colección de registros. Por ejemplo, una guía de teléfono es análoga a un archivo. Contiene una lista de registros, cada uno de los cuales consiste en tres campos: nombre, dirección y número de teléfono.
VII.II ¿Para qué sirven las bases de datos? Las bases de datos son utilizadas en infinidad de circunstancias:
En los hospitales para catalogar medicamentos y a los pacientes.
En la administración para catalogar los diferentes temas a tratar.
En el gobierno para catalogar los temas y obligaciones a resolver.
En la escuela para matricular a los alumnos
En el comercio para controlar la información.
14
Es muy utilizada por los administradores, quienes entre sus funciones tienen la de ordenar y catalogar al personal, las mercancías, los gastos, los ingresos, etc. Por ello se encuentran en la necesidad de catalogar los datos para que al ser buscados puedan ser encontrados en forma adecuada. En los colegios, las bibliotecas se encuentran dotadas de bases de datos simples y sencillos, que permiten a los alumnos y maestros encontrar la información deseada en forma rápida y precisa. En el comercio, los comerciantes ingresan en una base de datos las entradas y salidas para que, con base en esos datos, el contador o administrador resuelva al momento de responder por las obligaciones.
A lo largo del trabajo, se pretende mostrar gracias a su aplicación, los conceptos del diseño de una base de datos₁, con su respectiva normalización, lo que permite brindar un primer diagnóstico al área específica para la cual va dirigida la base de datos. Cuando ya se tiene el diseño lógico se procede a llevar a cabo todos los procesos de administración.
Se mostrará en el proyecto la aplicación de esas técnicas en un caso de estudio supuesto pero aplicable y en especial, dirigido a una empresa del ramo Aero-Espacial dedicada al mantenimiento aeronáutico (Techops) y más específicamente al área encargada de control de producción.
15
VII.III Que es un sistema gestor de base de datos. Un Sistema Gestor de Bases de Datos (SGBD) o DBMA (DataBase Management System) es una colección de programas cuyo objetivo es servir de interfaz entre la base de datos, el usuario y las aplicaciones. Se compone de un lenguaje de definición de datos, de un lenguaje de manipulación de datos y de un lenguaje de consulta. Un SGBD permite definir los datos a distintos niveles de abstracción y manipular dichos datos, garantizando la seguridad e integridad de los mismos.
Algunos ejemplos de SGBD son Oracle DB2 PostgreSQL MySQL MS SQL Server.
Un SGBD debe permitir:
• Definir una base de datos: especificar tipos, estructuras y restricciones de datos. • Construir la base de datos: guardar los datos en algún medio controlado por el mismo SGBD.
16
• Manipular la base de datos: realizar consultas, actualizarla, generar informes.
Las características de un Sistema Gestor de Base de Datos SGBD son:
• Abstracción de la información. Los SGBD ahorran a los usuarios detalles acerca del almacenamiento físico de los datos. Da lo mismo si una base de datos ocupa uno o cientos de archivos, este hecho se hace transparente al usuario. Así, se definen varios niveles de abstracción.
• Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema (físico o lógico) de una base de datos sin tener que realizar cambios en las aplicaciones que se sirven de ella.
• Redundancia mínima. Un buen diseño de una base de datos logrará evitar la aparición de información repetida o redundante. De entrada, lo ideal es lograr una redundancia nula; no obstante, en algunos casos la complejidad de los cálculos hace necesaria la aparición de redundancias.
• Consistencia. En aquellos casos en los que no se ha logrado esta redundancia nula, será necesario vigilar que aquella información que aparece repetida se actualice de forma coherente, es decir, que todos los datos repetidos se actualicen de forma simultánea.
17
• Seguridad. La información almacenada en una base de datos puede llegar a tener un gran valor. Los SGBD deben garantizar que esta información se encuentra asegurada frente a usuarios malintencionados, que intenten leer información privilegiada; frente a ataques que deseen manipular o destruir la información; o simplemente ante las torpezas de algún usuario autorizado pero despistado. Normalmente, los SGBD disponen de un complejo sistema de permisos a usuarios y grupos de usuarios, que permiten otorgar diversas categorías de permisos.
• Integridad. Se trata de adoptar las medidas necesarias para garantizar la validez de los datos almacenados. Es decir, se trata de proteger los datos ante fallos de hardware, datos introducidos por usuarios descuidados, o cualquier otra circunstancia capaz de corromper la información almacenada.
• Respaldo y recuperación. Los SGBD deben proporcionar una forma eficiente de realizar copias de respaldo de la información almacenada en ellos, y de restaurar a partir de estas copias los datos que se hayan podido perder.
• Control de la concurrencia. En la mayoría de entornos (excepto quizás el doméstico), lo más habitual es que sean muchas las personas que acceden a una base de datos, bien para recuperar información, bien para almacenarla. Y es también frecuente que dichos accesos se realicen de
18
forma simultánea. Así pues, un SGBD debe controlar este acceso concurrente a la información, que podría derivar en inconsistencias.
VII.IV Conexión a la base de datos Es un enlace que se hace hacia una base de datos, para poder interactuar con la información, por medio de una interfaz gráfica ya sea web o de escritorio.
VII.V Que es MySql. MySQL es un sistema de administración de bases de datos (Database Management System, DBMS) para bases de datos relacionales. Así, MySQL no es más que una aplicación que permite gestionar archivos llamados de bases de datos. Existen muchos tipos de bases de datos, desde un simple archivo hasta sistemas relacionales orientados a objetos. MySQL, como base de datos relacional, utiliza múltiples tablas para almacenar y organizar la información. MySQL fue escrito en C y C++ y destaca por su gran adaptación a diferentes entornos de desarrollo, permitiendo su interactuación con los lenguajes de programación más utilizados como PHP, Perl y Java y su integración en distintos sistemas operativos. También es muy destacable, la condición de open source de MySQL, que hace que su utilización sea gratuita e incluso se pueda modificar con total
19
libertad, pudiendo descargar su código fuente. Esto ha favorecido muy positivamente en su desarrollo y continuas actualizaciones, para hacer de MySQL una de las herramientas más utilizadas por los programadores orientados a Internet.
VII.VI Ventajas y desventajas de utilizar mysql Ventajas MySQL software es Open Source Velocidad al realizar las operaciones, lo que le hace uno de los gestores con mejor rendimiento. Bajo costo en requerimientos para la elaboración de bases de datos, ya que debido a su bajo consumo puede ser ejecutado en una máquina con escasos recursos sin ningún problema. Facilidad de configuración e instalación. Soporta gran variedad de Sistemas Operativos Baja probabilidad de corromper datos, incluso si los errores no se producen en el propio gestor, sino en el sistema en el que está. Su conectividad, velocidad, y seguridad hacen de MySQL Server altamente apropiado para acceder bases de datos en Internet El software MySQL usa la licencia GPL
20
Desventajas. Un gran porcentaje de las utilidades de MySQL no están documentadas. No es intuitivo, como otros programas (ACCESS).
VII.VII Que es SQL server Es un sistema de manejo de bases de datos del modelo relacional, desarrollado por la empresa Microsoft. El lenguaje de desarrollo utilizado (por línea de comandos o mediante la interfaz gráfica de managment studio) es Transact-SQL (TSQL), una implementación del estándar ANSI del lenguaje SQL, utilizado para manipular y recuperar datos (DML), crear tablas y definir relaciones entre ellas (DDL). Puede ser configurado para utilizar varias instancias en el mismo servidor físico, la primera instalación lleva generalmente el nombre del servidor, y las siguientes - nombres específicos. A contrario de sistemas de bases de datos como Microsoft Access que son "pasivas" y contienen un archivo a cual hay que conectar y la ejecución de los comandos se lleva a cabo en el cliente (la computadora de usuario), en SQL Server hay número de servicios, software que están ejecutadas en la memoria del servidor por parte del sistema y por lo tanto aprovechan las capacidades del servidor que es más potente que los clientes, previenen
21
congestión en la red y pueden programar tareas que corran aún el cliente no está conectado. Los servicios principales: SQL Server - El "motor" del sistema. SQL Agent - Ejecución de tareas (Jobs, scripts programados) y envío de advertencias en caso de carga pesada e irregular en el sistema. Full-Text Filter Daemon Launcher - La utilización en los índices especiales del "Full text search" por búsqueda textual avanzada. SQL Browser - El "oyente" dedicado a comandos enviados y redirigir los a su destino. SSIS Server - La operación del SSIS (la herramienta de ETL). SSAS Server - La operación del SSAS (la herramienta de OLAP). SSRS Server - La operación del SSRS (la herramienta de informes).
VII.VIII Ventajas y desventajas de utilizar SQL server Ventajas Soporte de transacciones. Escalabilidad, estabilidad y seguridad. Soporta procedimientos almacenados. Incluye también un potente entorno gráfico de administración, que permite el uso de comandos DDL y DML gráficamente.
22
Permite trabajar en modo cliente-servidor, donde la información y datos se alojan en el servidor y las terminales o clientes de la red sólo acceden a la información. Además permite administrar información de otros servidores de datos. Desventajas Costo de las licencias comparadas con otros competidores. Costos de licencias: MS-SQL Server tiene 6 tipos de licencias según el tipo de usuarios: SQL Server 2005 Enterprise Edition, SQL Server 2005 Standard Edition, SQL Server 2005 Workgroup Edition
SQL Server 2005 Express Edition, SQL
Server 2005 Compact Edition, SQL Server 2005 Developer Edition, Editions on 64-bit Platform. Los costos varían desde Gratis (Express y Compact Edition), hasta $ 25 000 USD (Enterprise Edition). Estos costos dependen de los servidores a utilizar y el número de clientes (usuarios).
VII.IX ¿Que es un diagrama entidad relación? Este modelo es solo y exclusivamente un método del que disponemos para diseñar estos esquemas que posteriormente debemos de implementar en un gestor de BBDD (bases de datos). Este modelo se representa a través de diagramas y está formado por varios elementos.
23
Este modelo habitualmente, además de disponer de un diagrama que ayuda a entender los datos y como se relacionan entre ellos, debe de ser completado con un pequeño resumen con la lista de los atributos y las relaciones de cada elemento.
VII.X Elementos de un diagrama entidad relación. Entidad
Las entidades representan cosas u objetos (ya sean reales o abstractos), que se diferencian claramente entre sí.
Atributos
Los atributos definen o identifican las características de entidad Cada entidad contiene distintos atributos, que dan información sobre esta entidad. Estos atributos pueden ser de distintos tipos (numéricos, texto, fecha…).
Relación
Es un vínculo que nos permite definir una dependencia entre varias entidades, es decir, nos permite exigir que varias entidades compartan ciertos atributos de forma indispensable.
24
VII.XI Relaciones de cardinalidad Uno a uno: Una entidad se relaciona únicamente con otra y viceversa. Uno a varios o varios a uno: determina que un registro de una entidad puede estar relacionado con varios de otra entidad, pero en esta entidad existir solo una vez. Varios a varios: determina que una entidad puede relacionarse con otra con ninguno o varios registros y viceversa.
VII.XII Claves Es el atributo de una entidad, al que le aplicamos una restricción que lo distingue de los demás registros (no permitiendo que el atributo específico se repita en la entidad) o le aplica un vínculo (exactamente como comentábamos en las relaciones). Estos son los distintos tipos:
Super-clave: aplica una clave o restricción a varios atributos de la entidad, para así asegurarse que en su conjunto no se repitan varias veces y así no poder entrar en dudas al querer identificar un registro.
Clave primaria: identifica inequívocamente un solo atributo no permitiendo que se repita en la misma entidad.
Clave externa o clave foránea: Este campo tiene que estar estrictamente relacionado con la clave primaria de otra entidad, para así exigir que exista previamente esa clave.
25
VII.XIII Datos odbc Es un estándar de acceso a bases de datos que utilizan los sistemas Microsoft. Las siglas significan Open Data Base Connectivity. A través de ODBC, en un sistema Windows se puede conectar con cualquier base de datos. Habría que decir que permite conectar con cualquier base de datos de la que exista un driver ODBC. Los creadores de las distintas bases de datos son los responsables de crear un driver ODBC para que su base de datos se conecte
desde
los
sistemas
de
Microsoft.
Para conectar con ODBC una base de datos se ha de crear un DNS, que es un nombre que asociamos a una conexión por ODBC para referirnos a ella desde las aplicaciones o programas que deban conectarse con la base de datos.
26
VIII.- Plan de actividades
Figura 1.0 Diagrama de Actividades del Proyecto.
27
IX.- Recursos materiales y humanos.
Con el fin de poder desarrollar este proyecto y conocer su viabilidad, es necesario contemplar la necesidad de disponer de diferentes tipos de recursos. Estos recursos los podemos dividir en tres grupos: hardware, software y recursos humanos. Respecto a los usuarios, sólo serán necesarios conocimientos sobre base de datos a nivel medio, ya que el entorno de la aplicación será sencillo pero a la vez funcional.
IX.I Recursos humanos Hernández Uribe Grecia Paola. Olguín Gudiño Ana Gabriela.
Covarrubias Zarco Juan. IX.II Recursos Materiales de Hardware. Laptop. Internet.
IX.III Recursos Materiales de Software. Mysql SQL Server PHP HTML
28
X.- Desarrollo del proyecto. Para el desarrollo del presente proyecto se realizaron diversas actividades que van desde análisis de información, entrevistas con el personal de las distintas áreas del centro de control.
X.I Actividades dentro del proyecto Para el inicio del proyecto se proporcionó una breve capacitación acerca del manejo de la base de datos del proyecto, la manera en la que trabaja el sistema, las herramientas que se usarían, así como ejercicios Query’s para familiarizarse con la base de datos como las consultas para obtener datos sobre el mantenimiento del avión. En resumen, es para conocer la composición de las tablas en el esquema de la base de datos y así continuar con el análisis dentro de la base de datos en Access. En esta primera etapa se planearon las actividades que se realizarían para ejecutar el proyecto: se realizó una reunión con los administradores de la base de datos de Access para saber cuáles eran los requerimientos y las necesidades que se tenían para el desarrollo de esta y para conocer las funciones de la base de datos; en esta etapa se delimitaron las condiciones que se tenía para realizar el proyecto. Se proporcionó al equipo de proyecto una copia de esta base de datos, para que se comenzara a trabajar en ello. Para diseñar el modelo entidad relación, se analizó diferentes ocasiones de manera eficiente el funcionamiento de la base de datos que manejan en el
29
control de producción. Es un análisis bastante extenso por que la tabla principal denominada “tarjetas de servicio” era muy compleja, además de contener algunos campos que no se utilizaban; se decidió omitirlos para evitar confusiones. El diagrama entidad relación sufrió varias modificaciones debido a el análisis de la tabla principal, la cual lleva la mayoría de las relaciones con las demás tablas. En primera instancia se agregaron 3 tablas: “usuario”, “perfil” y “empleado”, ya que se implementó un método de seguridad mediante la identificación del empleado para manipular esta, antes cualquier usuario tenía acceso a esta base y podían modificarla. El líder del depto. de IT, comento que se podrían omitir estas tablas para que el acceso a la base de datos sea por medio del directorio activo que se maneja dentro de la empresa. Ya terminada la base de datos en MySQL, se acordó que la base de datos, seria migrada a SQL server, ya que sería más sencillo el mantenimiento si llegase a tener algún problema. Todo el software que manejan en la empresa es bajo la licencia de Microsoft.
30
X.II Diseño de diagrama entidad-relación
Figura 1.1 Diagrama entidad-relación. Para guardar los datos se creó un sitio web, este permitirá capturar la información y almacenarla en la base de datos. La base de datos en primera instancia se exporto al servidor de MySQL, para tener definido lo que se necesitaba.
31
X.III Exportación de la base de datos Paso 1 Al dar clic derecho en exportar y después aparece la opción de “Base de Datos ODBC”, así tal como se ve en la siguiente imagen.
Figura 1.2 Exportación de tabla a MySQL. Paso 2 Para seleccionar la base de datos completa, se accede a la pestaña datos externos, y después se selecciona la pestaña que dice más, una vez seleccionado aparece un menú como se muestra en la imagen.
32
Figura 1.3 Exportación de la base de datos completa. Paso 3 Se eligió alguna de las opciones del paso anterio, mostrará una ventana para seleccionar la conexión que se utilizará.
Figura 1.4 Selección de la conexión.
33
Paso 4 Una vez que se seleccionó la conexion, nos desplegará un mensaje que dirá que la migración de los datos fue exitosa. A continuación se muestra la base de datos en MySQL.
Figura 1.5 Estructura de la base de datos en MySQL.
Posteriormente, la base de datos se creó manualmente para realizar los procedimientos y las actualizaciones que se requieren para que tenga la misma funcionalidad que la base de datos de Access. A continuación, se muestra un fragmento de la estructura de la base de datos con la tabla “ata” y “auditoria”, creada manualmente.
34
-- Base de datos: `techops` --- ---------------------------------------------------------- Estructura de tabla para la tabla `ata` -CREATE TABLE IF NOT EXISTS `ata` ( `id_ATA` int(11) NOT NULL, `seccion_ata` int(11) NOT NULL, `descripcion` varchar(60) DEFAULT NULL ) ENGINE=InnoDB AUTO_INCREMENT=76 DEFAULT CHARSET=latin1; --- Estructura de tabla para la tabla `auditoria` -CREATE TABLE IF NOT EXISTS `auditoria` ( `id_audit` int(11) NOT NULL, `seq_audit` varchar(50) DEFAULT NULL, `obser_audit` varchar(50) DEFAULT NULL ) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=latin1;
Fragmento de código 1.1.- Tablas “Ata” y “Auditoria”.
Esta es la creación de la base de datos de manera manual, una vez creadas todas las tablas pertenecientes a la base de datos, se procedió a insertar datos para realizar algunas pruebas de funcionamiento. A continuación se muestra un fragmento de la estructura de los datos ingresados en la tabla auditoria.
35
INSERT INTO `auditoria` (`id_audit`, `seq_audit`, `obser_audit`) VALUES (1, NULL, 'PROCESO RMAY01 MANCERA /JAIME / 19-MAY*06:23*'), (2, '20000057784', 'PROCESO RMAY01 MANCERA /JAIME / 19MAY*06:23*'), (3, '8897558', 'PROCESO RMAY01 MANCERA / JAIME /19MAY*06:23*'), (4, '8897223', 'PROCESO RMAY01 MANCERA / JAIME /19MAY*06:23*'), (5, '8897373', 'PROCESO RMAY01 MANCERA / JAIME /19MAY*06:23*'), (6, '8897558', 'RMAY01 CLOSE /19-MAY*06:24*'), (7, '20000057110', 'PROCESO RMAY01 JAIME BAÑOS /19MAY*06:29*'), (8, '20000057108', 'PROCESO RMAY01 JAIME BAÑOS /19MAY*06:29*'), (9, '20000057107', 'PROCESO RMAY01 JAIME BAÑOS /19MAY*06:29*'), (10, '20000055707', 'PROCESO ELIN01 OZIEL /19-MAY*06:28*'), (11, '20000059035', 'PROCESO ELIN01 OZIEL /19-MAY*06:28*'), (12, '20000055676', 'PROCESO ELIN01 OZIEL /19-MAY*06:28*'), (13, '20000060980', 'PROCESO RMAY01 JAIME BAÑOS /19MAY*06:32*'), (14, '8897285', 'PROCESO RMAY01 MANCERA /19-MAY*06:32*'), (15, '20000057827', 'PROCESO RMAY01 JAIME BAÑOS /19MAY*07:29*'), (16, '20000056977', 'PROCESO RMAY01 JAIME BAÑOS /19MAY*08:45*'); -- --------------------------------------------------------
Fragmento de código.- Inserción de datos.
Después de crear la base de datos en MySQL, se decidió que se migraría a SQL server 2008 ya que este servidor es el que se maneja dentro de la empresa, bajo licenciamiento de Microsoft. A continuación se muestra la instalación del SQL server y la creación de las tablas.
36
X.IV Instalación de SQL server 2008 En este apartado se mostrará cómo se instaló este servidor. Paso 1. Se elige la opción de “Nueva instalación o agregar característica a una instalación existente”.
Figura 1.6 Inicio de la instalación SQL server.
Paso 2 Se seleccionan las características, los términos de licencia y reglas de instalación.
Figura 1.7 Reglas de instalación de SQL server.
37
Paso 3 Selección de las características de SQL Express que se instalarán.
Figura 1.8 Selección de características de instalación.
Paso 4 En la configuración de instancia se especifica un nombre.
Figura 1.9 Configuración de la instancia.
38
Paso 5 Aquí se configura el motor de la base de datos, para la autenticación de usuario, aquí se elige mixto para que también pueda entrar con el usuario de Windows.
Figura 2.0 Selección de la autenticación.
Paso 7 Aquí se inicia el proceso de instalación, al término solo se da clic en cerrar.
Figura 2.1 Proceso de instalación de SQL server.
39
X.V Migración de base de datos de mysql a SQL Server. La migración de la base de datos que ya estaba creada en MySQL, se realizó de manera manual, tal como lo pidió el cliente. De esta manera iniciamos una sesión en el servidor para iniciar con la migración de las tablas. Ya que esté terminada, esta estará
montada en el servidor de
desarrollo de la empresa, para que los equipos y el personal de control de producción tengan acceso.
Figura 2.2 Inicio de Sesión en SQL server.
40
Una vez que se inició la sesión en el servidor, se comenzó a con la creación de la base de datos junto con las tablas. Como primer paso para la creación de la base de datos, se va al menú que dice “Explorador de Objetos”, se busca el menú llamado “Base de datos” se da un clic derecho y se selecciona “Crear nueva base de datos”.
Figura 2.3 Creación de base de datos.
Después de crear la base de datos, se procede a la realizar las diferentes tablas que contiene esta, de manera automática se crearon diferentes carpetas como son las de tablas, vistas, sinónimos, programación, seguridad, diagramas de la base de datos y service bróker. Existen 2 maneras de crear tablas, una de manera gráfica y otra por comandos. Para crearlas por comandos se selecciona la parte que dice “Nueva Consulta” y se abre la consola para comenzar a ejecutar los comandos, tal como se muestra en la siguiente pantalla
41
Figura 2.4 Creación de tablas.
Figura 2.5 Código de tablas.
Ya que las tablas están creadas, se almacenan en la carpeta llamada “Tablas”. Cuando se terminaron de crear las tablas, se inició con la creación de las relaciones entre las tablas, comenzando con las llaves primarias y terminar
42
con las llaves foráneas. Enseguida se muestra el código de la creación de estas.
Figura 2.6 Creación de llaves primarias.
Figura 2.7 Creación de llaves foráneas.
Terminadas las relaciones entre las tablas, se creó el disparador o trigger para que se llenara la tabla alterna llamada “CONTROL”, donde se
43
almacenaran los datos de los cambios que se realizaran en una tarjeta de servicio. Se guardará nombre del empleado que lo realizó, hora y fecha en que esta se actualizó, generando un historial de las modificaciones que se realizaron en las tarjetas de servicio. En seguida se muestra el código de la creación del trigger para la tabla control. go CREATE TRIGGER tr_ts_updates ON ts_test AFTER INSERT,UPDATE,DELETE AS SELECT * INTO #Deleted FROM Deleted SELECT * INTO #Inserted FROM Inserted declare @fecha datetime set @fecha = GETDATE() DECLARE @ColName varchar(64) DECLARE columnCursor CURSOR FOR SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'ts_test' AND TABLE_SCHEMA='dbo' OPEN columnCursor FETCH NEXT FROM columnCursor INTO @ColName WHILE (@@FETCH_STATUS -1) BEGIN EXEC(N'INSERT INTO control2(sap_wo,campo_afectado,old_value,new_value,fecha) SELECT Deleted.sap_wo, ''' + @ColName + ''', Deleted.'+ @ColName + ',' +'Inserted.' + @ColName +','''+ @fecha +''' FROM #Deleted Deleted INNER JOIN #Inserted Inserted ON Inserted.sap_wo = Deleted.sap_wo WHERE Deleted.'+ @ColName + ' != Inserted.' + @ColName) FETCH NEXT FROM columnCursor INTO @ColName END; CLOSE columnCursor DEALLOCATE columnCursor go
Fragmentación de código 1.3.- Creación de Trigger.
44
XI.- Resultados obtenidos
Como resultado, se obtuvo la creación de la base de datos dentro del área de producción, para llevar a cabo el control de los servicios o actividades que se realizan al avión. Tener acceso restringido a la información, para que solo pueda ser manipulada por la gente apropiada. El que tendrá todos los privilegios dentro de esta será el administrador.
45
XII.- Conclusiones y recomendaciones
El proyecto ha cumplido en su totalidad con cada uno de los objetivos planteados, a pesar de que al comienzo se tuvieron algunos inconvenientes, estos ayudaron a fijar mejor las metas. Sin duda se cree que cada uno de los problemas sirvieron para lograr un mejor desarrollo dentro de este. En este caso, fue parte de nuestra estadía pero sin duda el aprendizaje obtenido será parte primordial para el inicio de una carrera como profesionistas. Algunas recomendaciones, el simple hecho de pensar en que la estadía se aproxima, es un poco estresante debido a la incertidumbre que esto genera, pero en mi caso muy particular, todo esto lo pude superar teniendo seguridad en que si bien, no lo sé todo, tengo las bases y la iniciativa de aprender, cabe mencionar que es lo que más se valora dentro de una empresa. Respecto al proyecto, una buena organización y reuniones periódicas con el asesor de la empresa esto ayuda a mantener claro el objetivo que se planteó en un principio y cumplir con lo establecido, aunque si, esto sirvió para verificar algunos errores y hasta cierto punto divagaciones dentro de este.
46
XIII.- Anexo
XIII.I Actividades Adicionales. Facturación en SAP
El departamento de compras, pidió que si se podía apoyar a la captura de las facturas que se tenían atrasadas, para hacer los pagos correspondientes. En las siguientes pantallas se muestra como se realizó el proceso de facturación.
Figura 2.8 Inicio de sesión en SAP.
Ya en el sistema, se va a seleccionar de qué manera se quiere buscar la factura, existen 2 opciones por número de factura o por número de material.
47
Figura 2.9 Opciones de búsqueda.
Una vez seleccionada alguna de las 2 opciones anteriores nos arroja lo siguiente.
Figura 3.0 Selección de material.
Aquí se muestra si se encuentra facturado o no, y solamente se indica al encargado de facturas si se asigna la factura.
Figura 3.1 Facturación.
48
XIV.- Bibliografía CAVSI. (2010). Sistema Gestor de Base de Datos. 20 junio 2015, de CAVSI Sitio
web:
http://www.cavsi.com/preguntasrespuestas/que-es-un-sistema-
gestor-de-bases-de-datos-o-sgbd/ Daniel Worpress. (2011). Ventajas & Desventajas. 21 junio 2015, de Informate Mysql Sitio web: https://mysqldaniel.wordpress.com/ventajas-ydesventajas/ EspeStudio. (2005). ¿Que es MySql?. 20 junio 2015, de Desarrollo web Sitio web: http://www.esepestudio.com/noticias/que-es-mysql Fajardo. (2007). MS Access. 15 junio 2015, de Acada Torres Sitio web: https://docs.fajardo.inter.edu/Acad/atorres/MSAccess/manual-de-access2007.pdf Pedro Gutiérrez. (2015). Fundamentos de las Bases de datos Modelo Entidad-Relación.
25
junio
2015,
de
Genbetadev
Sitio
web:
http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-dedatos-modelo-entidad-relacion. Sin autor. (2015).Que es una base de datos 18 junio 2015, de Más adelante Sitio web: https://www.masadelante.com/faqs/base-de-datos Vertigo0. (2009). Cómo pasar una base de datos de Access a Mysql. 15 junio 2015, de ¿Cómo lo hago? Sitio web: http://www.comolohago.cl/comopasar-una-base-de-datos-de-access-a-mysql/
49