Post on 08-Apr-2017
Administración de base de datos
IMPLEMENTACIÓN DE UN SISTEMA
GESTOR DE BASE DE DATOS
2016
Profesora: Ing. Paola Del Castillo Tello
Alumno: Rodolfo Kuman Chi
Ciclo escolar
Ene – Jun 2016
Requerimientos del sistema
Carga de transacciones
Nivel de soporte
Sistema de operativo
Costos
Aplicativo web
Mysql
Postgre
SQL server
Oracle
InterBase
FireBird
Sistema Gestor de Base de Datos
Tipos de usuario
Nivel más cercano
a los usuarios.
Externo Interno
Características
DDL DML
DCL
Se definen las entidades,
atributos, relaciones
entre otras restricciones.
Oculta la estructura física del
almacenamiento.
Se describen esquemas
externos o vistas para un
grupo de usuarios.
Describe los detalles de
cómo se almacena
físicamente la información
Software que nos permite
administrar y recuperar
información en una base de datos.
Niveles de abstracción
Tienen
Es un
Como:
Creación de bases de datos
Manipulación de datos
Integridad
Seguridad
Independencia
Redundancia mínima
Acceso concurrente
Respaldo y recuperación
Gestión de usuarios
En 3 niveles
Dedicado a la
definición de la
estructura.
Con este lenguaje se pueden
cambiar y/o manipular la
estructura de la base de datos.
Permite la gestión de
usuarios y transacciones
Ingenuo
Programador
Especializado
Sofisticado
Administrador
Consideraciones para
elegir un SGBD Ejemplos de sistemas
gestores
Lenguajes
Conceptual
Nombre Imagen /Logo
Características Requerimientos de instalación Interfaces gráficas
Mysql Server
Disponibilidad en gran cantidad de plataformas y sistemas.
Velocidad en las operaciones.
Transacciones y claves foráneas.
Soporta diferentes tipos de datos.
Acceso concurrente
Sistema Operativo: Windows , Linux, Unix .
Soporte para protocolo TCP/IP.
Suficiente espacio en disco rígido para descomprimir, instalar, y crear las bases de datos de acuerdo a sus requisitos. Generalmente se recomienda un mínimo de 200 megabytes.
phpMyAdmin MySQL Workbench Sql Pro HeidiSQL
MyDB Studio
ORACLE
Gestión de grandes base de datos.
Usuarios concurrentes.
Permite el uso de particiones para la mejora de la eficiencia.
Sistema de gestión y control centralizado.
Memoria: el requisito mínimo de
memoria es de 1 GB.
Espacio en el disco: se recomienda
tener, al menos, 13 GB de espacio en el disco.
DBA Studio
Enterprise Manager
Sql Performance Analyzer
Database Replay
FIREBIRD
Completo soporte para Procedimientos Almacenados y Disparadores
Transacciones 100% ACID Integridad Referencial Arquitectura multi-generacional Bajo consumo de recursos Tablas Temporales
Los requerimientos mínimos para la
utilización de Firebird es de 64MB
de RAM y20MB de Disco Duro
IBExpert DB Workbench Firebird Development
Studio
SISTEMA GESTOR DE BASES DE DATOS
(Cuadro Comparativo)
Base de datos: FARMACIA
Modelo entidad – relación
Modelo relacional
Clientes (Id_cliente, dirección, teléfono, email) Artículos (Id_pedido, descripción, cantidad, precio) Clientes_art (Id_cliente, Id_pedido) Facturas (Folio, RFC, Num_ticket, Id_cliente)
Clientes
Id_cliente Teléfono
Dirección
Artículos
Id_pedido
Descripció
n Cantidad
Precio
Compran
Facturas
Realizan
Folio Num_ticket
RFC
M M
1
M
DIAGRAMA SELECCIONADO POR EQUIPO (OFICIAL EQUIPO 1)
MODELO RELACIONAL Clientes (id, nombre, Apellido_mat, Apellido_pat, Teléfono) Receta (folio, Dirección, Nombre_doc, Fecha, Paciente, id) Medicamento (No_medicina, Contenido_neto, Tipo_medicina, Caducidad, Nombre) Rece_Medi (folio, No_medicina)
DICCIONARIO DE DATOS
TABLA: Clientes Fecha de creación: 27-feb-16
Descripción: Tabla creada en la BD farmacia
RELACIONES: Relación 1 : M con la tabla Receta con el campo Folio
CAMPO TIPO DE DATO LONGITUD PK - FK AUTO_INCREMENT NULL - NOT NULL DESCRIPCIÓN
Id INT 5 PK SI NOT NULL Id del cliente
Nombre VARCHAR 30 NO NOT NULL Nombre del cliente
Apellido_pat VARCHAR 30 NO NOT NULL Apellido paterno
Apellido_mat VARCHAR 30 NO NOT NULL Apellido materno
Teléfono BIGINT 10 NO NOT NULL Teléfono
TABLA: Recetas Fecha de creación: 27-feb-16
Descripcion: Tabla creada en la BD farmacia.
RELACIONES: Relación 1 : M con la tabla clientes con el campo ID y relación M:M con la tabla medicamento con el campo No_medicina
CAMPO TIPO DE DATO LONGITUD PK - FK AUTO_INCREMENT NULL - NOT NULL DESCRIPCIÓN
Folio INT 5 PK SI NOT NULL Folio de la receta
Nombre_doc VARCHAR 30 NO NOT NULL Nombre del doctor
Dirección VARCHAR 30 NO NULL Dirección
Fecha DATE NO NOT NULL Fecha
Paciente VARCHAR 30 NO NOT NULL Nombre del paciente
Id_cli int 5 FK NO NOT NULL Id cliente
TABLA: Rece_medi Fecha de creación: 27-feb-16
Descripcion: Tabla creada en la BD farmacia.
RELACIONES: Tabla resultante de la tabla receta y medicamento
CAMPO TIPO DE DATO LONGITUD PK - FK AUTO_INCREMENT NULL - NOT NULL DESCRIPCIÓN
No_medicina INT 5 FK NO NOT NULL Número de medicina
Folio_rec VARCHAR 30 FK NO NOT NULL Folio receta
TABLA: Medicamentos Fecha de creación: 27-feb-16
Descripción: Tabla creada en la BD farmacia.
RELACIONES: Relación M:M con la tabla Receta
CAMPO TIPO DE DATO LONGITUD PK - FK AUTO_INCREMENT NULL - NOT NULL DESCRIPCIÓN
No_medicina INT 5 PK SI NOT NULL Numero de medicina
Nombre VARCHAR 30 NO NOT NULL Nombre
Tipo_medicina VARCHAR 30 NO NOT NULL Tipo de medicina
Cont_neto DOUBLE 8,2 NO NOT NULL Contenido neto
Caducidad DATE NO NOT NULL fecha de caducidad
Ir a sitio web oficial de Firebird y seleccionar la pestaña de descargas.
Seleccionar el sistema operativo y arquitectura de tu computadora.
Se abrirá el siguiente enlace y se realizará la descarga.
Al finalizar la descarga se abrirá el siguiente recuadro y seleccionas el idioma que se usara en la instalación.
Posteriormente aparecerá el cuadro de dialogo de la instalación, le damos clic en siguiente.
Aceptamos la licencia y damos clic en siguiente.
Daremos clic en siguiente.
Seleccionamos la ruta de instalación.
Seleccionamos los componentes que se instalarán, dejamos la configuración por defecto y avanzamos en la siguiente ventana.
Seleccionamos la carpeta del menú inicio y procedemos con la instalación.
Dejamos las configuraciones por defecto y avanzamos en la instalación.
Hacemos clic en siguiente para instalar Firebird
Esperamos a que se instalen los archivos necesarios.
Buscamos el SGBD en nuestro sistema y
ejecutamos Firebird ISQL Tool
Y nos aparecerá la siguiente ventana
Creamos una base de datos de prueba en la línea de comandos.
Verificamos que se creó la base de datos en la ruta especificada.
Instalación de la interfaz gráfica (IBExpert)
Ir a la página oficial de IBExpert y dirigirse a la sección de descargas. Para poder
iniciar la descarga es necesario registrarse y entrar a la liga que nos enviaran a
nuestro correo.
Al finalizar la descarga iniciamos el instalador y nos mostrara la siguiente
pantalla.
Aceptamos la licencia y continuamos con la instalación.
Seleccionamos la carpeta en donde se instalará.
Dejamos los valores predeterminados como están y damos clic en siguiente.
Nos aparecerá esta ventana, dejamos los valores seleccionados por default y avanzamos en la
instalación.
Después hacemos clic en instalar para completar el proceso.
Esperamos que se instalen los archivos necesarios en nuestro equipo.
Al completarse la instalación damos clic en finalizar.
Por ultimo llenamos los campos que nos piden para desbloquear el IBExpert con los datos que nos
enviaron a nuestro correo al registrarnos, en el campo de unlockcode colocamos el Machinecode. Le
daremos en get code y nos enviaran un código a nuestro correo para desbloquearlo para colocarlo en
el campo de Unlockcode.
Crearemos una base de datos mediante la interfaz gráfica de IBExpert, abrimos la
aplicación de IBExpert y en el menú seleccionamos la opción de “Database” y
seleccionamos la opción create database.
Y nos aparecerá la siguiente ventana en donde llenamos los datos que se nos solicitan.
Servidor local
Nombre de nuestra base de datos y
posteriormente seleccionamos la
ruta donde se guardara.
Dejamos estos campos en su
configuración predeterminada.
Después de crear la base de datos nos aparecerá la siguiente ventana en donde
tendremos que registrar la base de datos recién creada.
Seleccionamos la versión de
FireBird que tenemos instalada.
Colocamos un alias para nuestra BD
Probamos la conexión de la base
de datos.
Si nos aparece este mensaje significa
que la conexión de la base de datos
fue exitosa.
Al terminar este proceso ya tendremos la base de datos creada.
Nos posicionamos en el nombre de la base de datos y realizamos un clic derecho para
empezar a crear nuestras tablas.
Información de la base de datos
Aparecerá esta pantalla en donde editaremos el nombre y los campos de la tabla.
Compilamos la tabla
Y confirmamos los cambios con el botón commit.
Clic para agregar campos nuevos
En esta sección se editan los atributos de los campo (Nombre, tipo
de dato, longitud, si será nulo y la PK.
Nombre de la tabla
Seguimos los pasos mencionados anteriormente para crear las nuevas tablas.
Tabla recetas
Tabla medicamentos
Para agregar las llaves foráneas damos clic derecho en la tabla que usaremos y
seleccionamos “Edit Table”.
Nos aparecerá esta pantalla y seleccionamos la pestaña “Constrains” y después la
pestaña “Foreign keys”
Colocamos el campo
que será llave foránea.
Nombre de la tabla
donde vincularemos el
campo.
Campo con el que se
relacionara en esa tabla.
Compilamos y las tablas ya estarán vinculadas.
Ahora agregaremos llaves foráneas a la tabla rece_medi.
Para insertar registros en la base de datos seleccionamos nuestra tabla, le damos clic
derecho y usamos la opción de “show data”. Después nos aparecerá la siguiente
ventana en donde ya podremos insertar registros en la tabla.
ÁLGEBRA RELACIONAL EN FIREBIRD
Selección (σ)
Visualizando todos los registros de la tabla clientes con el comando:
select * from clientes;
Proyección (Π)
Extrayendo atributos de una tabla con una condición para visualizarlos con el
comando:
select * id ,nombre, apellido_pat, apellido_mat FROM clientes WHERE nombre =
‘Maria’ ;
Extrayendo las primeras 20 columnas omitiendo 80 registros con first y skip, utilizando
el comando:
select first 20 skip 80 id, nombre, apellido_pat FROM clientes;
Extrayendo los últimos 10 registros con los atributos id, nombre y apellido_pat con
skip y count. Comando utilizado:
select skip ((select count(*) - 10 from clientes))
id, nombre, apellido_pat from clientes;
Función de agregación count(*)
Sirve para contabilizar el número de registros de una tabla
Unión (U)
Retorna el conjunto de registros que están en R, o en S, o en ambas. R y S deben ser uniones
compatibles. Comando:
select nombre FROM clientes UNION select nombre_doc from recetas;
Esta consulta devolverá los nombres que estén en la tabla clientes y recetas.
Asignación ()
Almacena temporalmente el resultado de una operación en una relación dada.
Ejemplo:
Primero se crea una tabla temporal para almacenar una consulta, para después
visualizarla.
Create view temporal select nombre, apellido_pat from clientes;
Select * from temporal;
Cuadro comparativo por equipo(EQUIPO 1)
Nombre Logo Características Ventajas Desventajas Recomendaciones
FIREBIRD
• Completo soporte para Procedimientos Almacenados y Disparadores • Transacciones 100% ACID • Integridad Referencial • Arquitectura multi-generacional • Bajo consumo de recursos • Tablas Temporales
Buena Seguridad Basada en usuarios/roles. Soporte de transacciones ACID y claves foráneas Alta compatibilidad con ANSI SQL
Si alguna conexión de redo programa cliente tiene un problema, puede dañar el archivo de datos, ya que lo está abriendo directamente
-Utilizar una interfaz gráfica al iniciar para familiarizarse con las consultas SQL de
firebird
MySQL (wamp)
<Provee un manejador de base de datos (MySQL), un software para servidor web(apache) y un software de programación script Web (PHP) <Velocidad en las operaciones <Transacciones y claves foráneas <Acceso concurrente
<Velocidad al realizar las
operaciones.
<Bajo costo en requerimientos
para la elaboración de bases de
datos.
<Facilidad de configuración e
instalación.
<Un gran porcentaje de las utilidades de MySQL no están documentadas.
<Es fácil usar este SGBD, para conocer más sobre este, se pueden ver videos y practicar sobre su uso, también se puede ver que comandos se usan con solo usar el phpMyAdmin.
PostgreSQL
<Capacidades de replicación de datos. <Incorpora una estructura de datos array. <Soporta el uso de índices, reglas y vistas. <Incluye herencia entre tablas <Permite la gestión de diferentes usuarios, como también los permisos asignados a cada uno de ellos.
<Ampliamente popular - Ideal para tecnologías Web. <Fácil de Administrar. <Su sintaxis SQL es estándar y fácil de aprender. <Multiplataforma.
<En comparación
con MySQL es más lento en
inserciones y
actualizaciones. Consume
más recursos.
<La sintaxis de algunos de
sus comandos o sentencias
no es nada intuitiva.
<Es fácil de vulnerar sin protección adecuada
Su uso es casi parecido al de MySQL, pero hay que conocer los comandos que lo
diferencian de ella. Y para tener un mejor manejo sobre el SGBD se recomienda leer el manual de instalación
Y hay que tener un conocimiento mínimo sobre las B.D.
REPORTE DE PROBLEMAS POR EQUIPO(EQUIPO1)
Sistema gestor Versión Descripción del Problema Solución Observaciones
FIREBIRD 2.5 No se iniciaba la interfaz de IBExpert
La versión de IBExpert descargada es de uso personal por computadora así
que solamente tuve que poner los datos que me mandaron a mi correo
para desbloquear la aplicación
La instalación y configuración de firebird es muy intuitiva y
por lo tanto no tuve problemas al realizar estos pasos. El único inconveniente que tuve fue que la mayoría de la documentación
importante esta en inglés.
MySQL (wampserver)
3.0.0
No se lograba instalar el SGBD porque solicitaba los siguientes archivos: Vcruntime140.dll
Msvcr100.dll
Msvcr120.dll
Descargar los archivos antes
mencionados y colocarlos en la carpeta C: /Windows/SysWOW64 y
reiniciar la computadora.
Wampserver es fácil de usar pero necesita archivos .dll que no sabía que se necesitaban y
solo por ello se me complico un poco su instalación de ahí ya no
tuve ningún problema.
PostgreSQL 9.5 Mi principal problema que tuve fue el poco conocimiento sobre el manejo del SGBD, es decir, el momento de crear
las tablas y así también de ingresar los datos
Mi solución fue ver videos de cómo se puede crear las tablas e ingresar los
datos, así también ver diferentes documentos en internet.
Al momento de ver los videos y ciertos “documentos” en donde se ve cómo se puede crear las
tablas e ingresar los datos no es tan difícil y tienen cierto
parecido con MySQL.