Post on 03-Aug-2015
description
Introducción a las Bases de DatosMySQL y DBDesigner.
Aplicación
FACULTAD DE CIENCIAS - INGENIERIA DE SISTEMAS E INFOMRATICA - UNASAM - 2006
ERICK GIOVANNY FLORES CHACÓN INGENIERO DE COMPUTACION Y SISTEMAS
ESTEBAN JULIO MEDINA RAFAILE INGENIERO DE SISTEMAS
Manual aplicativo de MySQL y DBDesigner
CONTENIDO
Introducción
1. Descripción del caso: 1
“Tienda para el Hogar Casa y Familia”
2. Modelo de Base de Datos en el ciclo de vida del software 4
3. Modelo conceptual de la Base de Datos 4
4. Modelo lógico de la Base de Datos 6
5. Modelo físico de la Base de Datos 8
6. Acceso a las herramientas DBMS – SQL Server 11
7. Implantación Base de Datos mediante Query Browser SQL 15
8. La Base de Datos en el Asistente de Diagramas 19
9. Manipulación de datos en la Base de Datos 23
10. Bibliografía 35
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
1. Descripción del caso
Para un mejor entendimiento del marco teórico sobre modelamiento e
implantación de las bases de datos, presentamos a continuación el caso
Tienda para el Hogar “Casa y Familia”, con el cual complementaremos de
manera práctica los temas de modelamiento e implantación de las bases de
datos.
Tienda para el Hogar “Casa y Familia”, es una empresa que vende
productos para la construcción, mantenimiento y arreglo de la casa. El
Proceso de “Atención de Pedidos del Cliente”, se detalla a continuación:
El Cliente, antes de hacer su pedido tiene la opción de revisar el “Catalogo
de Productos”, los cuales están ordenados por Familia de Productos, por
ejemplo:
CATALOGO DE PRODUCTOS
Familia de Productos: Pinturas
Código Nombre Precio Stock
P01 Pintura de interior marca ABC 15.00 100
P02 Pintura de interior marca SOFT 14.00 90
P03 Pintura de exterior marca ABC 17.00 85
P04 Pintura de exterior marca OUT 19.00 55
Familia de Productos: Jardín
Código Nombre Precio Stock
J01 Ficus Argentino 3.00 30
J02 Ficus Semi enano 4.00 45
J03 Molle Serrano 7.00 30
J04 Mini schefflera variegada 8.00 35
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Familia de Productos: Terrazas
Código Nombre Precio Stock
T01 Mesa Tayroma II Blanco 70.00 60
T02 Silla Minikid 8.00 30
T03 Parrilla a gas 350.00 45
Una vez que el cliente sabe que pedido va efectuar, se acerca a caja, hace
su pedido, cancela y recibe una boleta o factura para reclamar su compra.
Luego de unos minutos de espera, es llamado a despacho para que se le
entregue la mercadería, previa verificación de la boleta o factura cancelada.
El formato de pedido, se muestra a continuación.
PEDIDOS DEL CLIENTE
Nº Pedido : Fecha :
Empleado :
Cliente :
Código Producto Nombre Producto Cantidad Precio Total
Total IGV : Total:
Actualmente todo el proceso de “Atención de pedidos del cliente”, se
desarrolla manualmente y presenta los siguientes problemas:
El proceso de “Atención de pedidos del cliente”, se desarrolla
lentamente, lo cual genera descontento en los clientes.
Se utilizan muchos “Catálogos de Precios”, en formatos físicos. Estos
debido a la mucha manipulación, son deteriorados rápidamente.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
La elaboración de informes para el gerente de comercialización es lenta
y lo ejecutan dos asistentes.
No se elaboran estadísticas para el análisis de la información y la toma
de decisiones
El inventario físico no tiene relación con el inventario lógico, que figura
en las tarjetas manuales de los productos.
Las acciones de este proceso se desarrollan bajo la siguiente regla del
negocio. El pago de las compras efectuadas por los clientes es al contado y
en efectivo y en moneda nacional.
La empresa cuenta con tres empleados de ventas, se los cuales sus datos
se registran en la ficha de personal.
Código de
empleado
Nombres de
empleado
Apellidos de
empleado
Número de
teléfono
E01 Franco Ruiz 426589
E02 Fiorella Piñeiros 423546
E03 Antonio Torrealva 427654
Tienda para el Hogar “Casa y Familia”, atiende un promedio de 100 clientes
por hora con gran tendencia a aumentar, por lo que es necesario
implementar un “Sistemas de información de atención de pedidos al cliente”
que apoye al proceso de “Atención de pedidos del cliente” y valore la
información utilizada en este proceso.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
2. Modelo de base de datos en el ciclo de vida del software
Sabemos que todo ciclo de software tiene las siguientes fases:
Análisis del sistema
Diseño del software
Construcción del software
Mantenimiento del software
En la etapa de diseño del software se requiere modelar; tanto el
comportamiento del software, expresado por el modelo de las aplicaciones y
la estructura del software expresado por el modelo de la base de datos.
En el proceso de modelamiento de la base de datos, se tienen que llevar a
cabo las siguientes actividades de modelamiento:
Modelamiento conceptual de la base de datos
Modelamiento lógico de la base de datos
Modelamiento físico de la base de datos
3. Modelo conceptual de la base de datos
En esta actividad lo que se pretende es identificar las entidades del negocio
así como las relaciones existente entre estas. No es necesario identificar los
atributos, llaves primarias, ni llaves foráneas.
Para el caso tienda para el Hogar “Casa y Familia”, se identificaron las
siguientes entidades:
Familia productos
Producto
Empleados
Pedido
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Y estas se relacionan, tal como se muestran a continuación:
Una Familia de productos TIENE Uno o Muchos Productos
Un Producto PERTENECE a Una Familia de productos
Un Pedido ES ATENDIDO por Un Empleado
Un Empleado ATIENDE Uno o Muchos Pedidos
Un Pedido TIENE Uno o Muchos Productos
Un Producto PERTENECE a Uno o Muchos Pedidos
Estas entidades y sus relaciones se pueden modelar en la herramientas
CASE (Ingeniería de Software Asistido por Computador) ERWIN 3.5.2 o
superior, tal como se muestran en el siguiente diagrama.
Modelo Conceptual
Tienda para el Hogar "Casa y Familia"
Modelo Entida Relación
Atiende
Es Atendido
TienePertenece
Pertenece
Tiene
Pedido Empleados
ProductosFamilia productos
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
4. Modelo lógico de la base de datos
Una vez obtenido el modelo conceptual de la base de datos se comienza
con la actividad de Normalización. Se detallan las Entidades con sus
atributos y llaves primarias (Primera Forma Normal), así como las
relaciones entre las Entidades (Segunda y Tercera Forma Normal).
Para el caso tienda para el Hogar “Casa y Familia”, se tienen las siguientes
entidades con sus atributos, llaves primarias y llaves foráneas:
Entidad Familias Producto
Código de familia PK
Nombre de la familia
Entidad Productos
Código de producto PK
Nombre de producto
Precio de producto
Stock
Entidad Empleados
Código de empleado PK
Nombres de empleado
Apellidos de empleado
Número de teléfono
Entidad Pedidos
Número de pedido PK
Código de empleado
Fecha de pedido
Nombres del cliente
Total del pedido
Total IGV del pedido
Entidad Detalles del pedido
Número de pedido PK
Código de producto PK
Cantidad del producto
Total producto
Y estas se relacionan, tal como se muestran a continuación:
Una Familia de productos TIENE Uno o Muchos Productos
Un Producto PERTENECE a Una Familia de productos
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Un Pedido ES ATENDIDO por Un Empleado
Un Empleado ATIENDE Uno o Muchos Pedidos
Un Pedido TIENE Uno o Muchos Productos
Un Producto PERTENECE a Uno o Muchos Pedidos
Un Pedido TIENE Uno o Muchos Detalles Pedido
Un Detalle Pedido PERTENECE a Un Pedido
Estas entidades y sus atributos así como sus relaciones se pueden modelar
en la herramientas CASE (Ingeniería de Software Asistido por Computador)
ERWIN 3.5.2 o superior, tal como se muestran en el siguiente diagrama.
Pertenece
Tiene
PerteneceTiene
Es Atendido
Atiende
PerteneceTiene
Modelo Lógico
Tienda para el Hogar "Casa y Familia"
Modelo Entidad Relación
Detalles PedidoNumero Pedido (FK)Codigo Producto (FK)
Cantidad ProductoTotal Producto
PedidosNumero Pedido
Codigo Empleado (FK)Fecha PedidoNombres ClienteTotal PedidoTotal IGV
EmpleadosCodigo Empleado
Nombre EmpleadoApellidos EmpleadoNumero Telefono
ProductoCodigo Producto
Codigo Familia (FK)Nombre ProductoPrecioStock
FamiliaCodigo Familia
Nombre Famila
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
5. Modelo físico de la base de datos
Una vez obtenido el modelo lógico de la base de datos, se determinan los
nombres de las entidades, nombres de los atributos y tipos de datos de
acuerdo a ciertos estándares con el propósito de dejar expedita la base de
datos para implantarla en un DBMS.
Previamente se han definido ciertos estándares para dar los nombres a las
tablas y atributos:
Las Tablas Principales, empiezan sus nombres con TP.
Las Tablas Transaccionales, empiezan sus nombres con TT
Además se ha elaborado una serie de prefijos:
Prefijo Nombre
Cod Código
Nom Nombre
Mon Monto
Can Cantidad
Ape Apellido
Num Número
Para el caso tienda para el Hogar “Casa y Familia”, se tienen las siguientes
entidades con sus atributos, llaves primarias y llaves foráneas en el modelo
físico.
Nombre Lógico: Familia Nombre Físico: TP_FamiliaProducto
Campo lógico Campo físico Tipo de dato Regla
Código de familia Cod_FamiliaProducto Char(3) Not Null
Nombre de la familia Nom_FamiliaProducto Varchar(30) Not Null
Nombre Lógico: Producto Nombre Físico: TP_Producto
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Campo lógico Campo físico Tipo de dato Regla
Código de producto Cod_Producto Char(3) Not Null
Nombre de producto Nom_Producto Varchar(30) Not Null
Precio de producto Mon_Precio Money Null
Stock Can_Stock Int Null
Nombre Lógico: Empleado Nombre Físico: TP_Empleado
Campo lógico Campo físico Tipo de dato Regla
Código de empleado Cod_Empleado Char(3) Not Null
Nombres de empleado Nom_Empleado Varchar(20) Not Null
Apellidos de empleado Ape_Empleado Varchar(20) Not Null
Número de teléfono Num_Telefono Char(14) Null
Nombre Lógico: Pedido Nombre Físico: TT_Pedido
Campo lógico Campo físico Tipo de dato Regla
Número de pedido Num_Pedido Char(4) Not Null
Código de empleado Cod_Empleado Char(3) Not Null
Fecha de pedido Fec_Pedido Datetime Null
Nombres del cliente Nom_Cliente Varchar(30) Null
Total del pedido Mon_TotalPedido Money Null
Total IGV del pedido Mon_IGVPedido Money Null
Nombre Lógico: Detalle Pedido Nombre Físico: TT_DetallePedido
Campo lógico Campo físico Tipo de dato Regla
Número de pedido Num_Pedido Char(4) Not Null
Código de producto Cod_Producto Char(3) Not Null
Cantidad del producto Can_Pedido Int Null
Total producto Mon_SubTotal Int Null
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
6. Inicialización del servicio DBMS MySQL
Antes de trabajar con cualquiera de los servicios que nos ofrece MySQL, es
necesario inicializar Sistema Monitor de Bandeja del MySQL (MySQL
System Tray Monitor). Para llegar a esta opción es necesario tener en
cuenta la siguiente ruta:
Inicio / Todos los programas / MySQL / My SQL System Tray Monitor
Luego de ser ejecutado, en la parte inferior derecha de la pantalla se
visualizará el icono correspondiente.
Ing. Erick Giovanny Flores Chacón
MySQL System Tray Monitor
Manual aplicativo de MySQL y DBDesigner
Ubicarse con el mouse, presionar clic derecho y seleccionar Star Instance
Ahora el icono correspondiente tomará esta forma.
Estando inicializado el servicio de MySQL System Tray Monitor.
7. Implantación de bases de datos
7.1. Utilizando instrucciones SQL
Ingresar al servicio MySQL Query Browser, siguiendo la ruta
Inicio / Todos los programas / MySQL / MySQL Query Browser
Ing. Erick Giovanny Flores Chacón
MySQL System Tray Monitor – Color Verde
Manual aplicativo de MySQL y DBDesigner
Se muestra la pantalla de acceso y seguridad al nevagador de consultas del
MySQL
Nota: La clave de seguridad es admin.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Se ingresa al entorno del MySQL Query Browser
Realizaremos los pasos necesarios para la implantación de la base de datos
BDCasa, con sus correspondientes tablas, llaves primarias y llaves foráneas.
Para la creación de la base de datos, digitar la siguiente instrucción en el área
de consultas del MySQL.
Create database if not exists BDCasaSQL;
Presionar el icono “Ejecute la consulta ingresada”
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Ahora comenzaremos a crear las tablas, llaves primarias y llaves foráneas. Así
que digitaremos en orden las siguientes instrucciones SQL.
Create table TP_FamiliaProducto ( Cod_FamiliaProducto char(3) not null, Nom_FamiliaProdcuto varchar(30) not null, Primary Key (Cod_FamiliaProducto));
Create Table TP_Producto ( Cod_Producto char(3) Not Null, Cod_FamiliaProducto char(3) Not Null, Nom_Producto Varchar(30), Mon_Precio Numeric(10,2), Can_StocK int, Primary Key (Cod_Producto,Cod_FamiliaProducto));
Create Table TP_Empleado ( Cod_Empleado char(3) Not Null, Nom_Empleado varchar(20) Not Null, Ape_Empleado varchar(20) Not Null, Num_Telefono char(14), Primary Key (Cod_empleado));
Create Table TT_Pedido ( Num_Pedido char(3) Not Null, Cod_empleado char(3) Not Null, Fec_pedido datetime, Nom_Cliente varchar(30), Mon_TotalPedido numeric(10,2), Mon_IGVPedido numeric(10,2), Primary Key (Num_Pedido), FOREIGN KEY (Cod_Empleado) REFERENCES TP_Empleado (COd_Empleado));
Create Table TT_DetallePedido ( Num_Pedido char(3) Not Null, Cod_Producto char(3) Not Null, Can_pedido int, Mon_SubTotal numeric(10,2), Primary Key (Num_Pedido,Cod_Producto));
Como resultado de la ejecución de estas instrucciones SQL, se ha creado la
base de datos BDCasa y sus correspondientes tablas, llaves primarias y llaves
foraneas.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
7.2. Utilizando el asistente
Continuamos en el entorno del MySQL Query Browser. Creamos la
siguiente base de datos.
Create database if not exists BDCasaAsistente;
Ahora comenzaremos a crear las tablas, llaves primarias, llaves
foráneas.
Nos ubicaremos con el puntero del Mouse sobre la base de datos
BDCasaAsistente, presionaremos clic derecho y seleccionaremos
Create New Table.
A continuación se muestra la pantalla Editor de Tablas.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Y comienzan a ingresar las correspondientes tablas, atributos, tipos de datos,
restricciones, llaves primarias, índices, llaves foráneas, entre otros aspectos. A
continuación se muestra la pantalla de creación de la tabla
TP_FamiliaProducto.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Creando la tabla TP_Producto.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Creando la tabla TP_Empleado
Creando la tabla TT_Pedido
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Creando la tabla TT_DetallePedido
Ahora veremos el entorno del Navegador de Consultas y se apreciara la base
de datos BDCasaAsistente creada con sus correspondientes tablas.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
7.3. Utilizando el concepto de sincronización
En este tipo de implantación de base de datos, se tiene que tener el
plano de la base de datos en una herramienta CASE y a partir del
proceso de sincronización con el DBMS se procede a implantar la base
de datos.
En nuestro caso particular tienen que estar levantados el DBDesigner
y el correspondiente plano de la base de datos, el archivo Modelo
BDCasa así como el MySQL Quero Browser.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
En el servicio MySQL Query Browser, ya tenemos creado la base de datos
BDCasaSyn y en el DBDesigner se ingresa a la opción Database / Database
Synchronisation.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Aparece la ventana de diálogo Selccione Conexión a Base de Datos
Presione el botón Conexión a nueva Base de datos y registre la siguiente
información en la ventana de diálogo que se visualiza.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Estos parámetros permiten ejecutar el proceso de implantación de la base de
datos BDCasaSyn.
Presionar el botón ok y en la ventana Seleccione Conexión a Base de Datos,
presionar Connect.
Se visualizará la ventana de diálogo Sincronización a Base de Datos, presionar
Execute
Ahora visualizamos en MySQL Quero Browser y se visualiza la base de datos
BDCasaSyn con sus correspondientes tablas.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
8. Manipulación de datos
Teniendo ya la base de datos BDCasaSQL implantada, procederemos
ahora a manipular los datos utilizando instrucciones SQL del MySQL.
8.1. Ingreso de datos y visualización de datos ingresados (Consulta de
datos)
A. Tabla TP_FamiliaProductos
Insert into TP_FamiliaProducto (Cod_FamiliaProducto, Nom_FamiliaProdcuto) values ('F01', 'Pinturas');
Insert into TP_FamiliaProducto (Cod_FamiliaProducto, Nom_FamiliaProdcuto) values ('F02', 'Jardín');
Insert into TP_FamiliaProducto (Cod_FamiliaProducto, Nom_FamiliaProdcuto) values ('F03', 'Terrazas');
Para poder ver los datos ingresados en la tabla TP_FamiliaProductos,
ejecutaremos la siguiente consulta y se mostrarán a continuación sus
resultados.
Select * from TP_FamiliaProducto;
B. Tabla TP_Producto
Insert into TP_Producto (Cod_Producto, Cod_FamiliaProducto, Nom_Producto, Mon_Precio, Can_Stock)
values ('PO1','F01','Pinturas de interior marca ABC',15.00,100);
Insert into TP_Producto (Cod_Producto, Cod_FamiliaProducto, Nom_Producto, Mon_Precio, Can_Stock)
Values ('P02', 'F01', 'Pintura de interior marca SOFT ',14.00,90);
Insert into TP_Producto (Cod_Producto, Cod_FamiliaProducto, Nom_Producto, Mon_Precio, Can_Stock)
Values ('P03', 'F01', 'Pintura de exterior marca ABC ',17.00,85);
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Insert into TP_Producto (Cod_Producto, Cod_FamiliaProducto, Nom_Producto, Mon_Precio, Can_Stock)
Values ('P04', 'F01', 'Pintura de exterior marca OUT ',19.00,55);
Insert into TP_Producto (Cod_Producto, Cod_FamiliaProducto, Nom_Producto, Mon_Precio, Can_Stock)
Values ('J01', 'F02', 'Ficus Argentino', 3.50, 30);
Insert into TP_Producto (Cod_Producto, Cod_FamiliaProducto, Nom_Producto, Mon_Precio, Can_Stock)
Values ('J02', 'F02', 'Ficus Semi enano ', 4.00, 45);
Insert into TP_Producto (Cod_Producto, Cod_FamiliaProducto, Nom_Producto, Mon_Precio, Can_Stock)
Values ('J03', 'F02', 'Molle Serrano ', 7.00, 30);
Insert into TP_Producto (Cod_Producto, Cod_FamiliaProducto, Nom_Producto, Mon_Precio, Can_Stock)
Values ('J04', 'F02', 'Mini schefflera variegada ', 8.50, 35);
Insert into TP_Producto (Cod_Producto, Cod_FamiliaProducto, Nom_Producto, Mon_Precio, Can_Stock)
Values ('T01', 'F03', 'Mesa Tayroma II Blanco ', 70.00, 60);
Insert into TP_Producto (Cod_Producto, Cod_FamiliaProducto, Nom_Producto, Mon_Precio, Can_Stock)
Values ('T02', 'F03', 'Silla Minikid ', 8.50, 30);
Insert into TP_Producto (Cod_Producto, Cod_FamiliaProducto, Nom_Producto, Mon_Precio, Can_Stock)
Values ('T03', 'F03', 'Parrilla a gas ', 350.00, 45);
Para poder ver los datos ingresados en la tabla TP_Producto,
ejecutaremos la siguiente consulta y se mostrarán a continuación sus
resultados.
Select * from TP_Producto;
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
C. Tabla TP_Empleado
Insert into TP_Empleado (Cod_Empleado, Nom_Empleado, Ape_Empleado,
Num_Telefono)
Values ('E01', 'Franco', 'Ruiz', '426589');
Insert into TP_Empleado (Cod_Empleado, Nom_Empleado, Ape_Empleado,
Num_Telefono)
Values ('E02', 'Fiorella', 'Piñeiros', '423546');
Insert into TP_Empleado (Cod_Empleado, Nom_Empleado, Ape_Empleado,
Num_Telefono)
Values ('E03', 'Antonio', 'Torrealva', '427654');
Para poder ver los datos ingresados en la tabla TP_Empleado,
ejecutaremos la siguiente consulta y se mostrarán a continuación sus
resultados.
select * from TP_Empleado;
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
D. Tabla TT_Pedido
Insert into TT_Pedido (Num_Pedido, Cod_Empleado, Fec_Pedido, Nom_Cliente,
Mon_TotalPedido, Mon_IGVPedido)
Values ('S01', 'E01', 14/07/2005, 'Ximena Estela', 87.00, 16.53);
Insert into TT_Pedido (Num_Pedido, Cod_Empleado, Fec_Pedido, Nom_Cliente,
Mon_TotalPedido, Mon_IGVPedido)
Values ('S02', 'E02', 15/07/2005, 'Andrea Chacón', 34.00, 6.46);
Insert into TT_Pedido (Num_Pedido, Cod_Empleado, Fec_Pedido, Nom_Cliente,
Mon_TotalPedido, Mon_IGVPedido)
Values ('S03', 'E03', 15/07/2005, 'Valery Rodriguez', 112.00, 21.28);
Para poder ver los datos ingresados en la tabla TT_Pedido,
ejecutaremos la siguiente consulta y se mostrarán a continuación sus
resultados.
select * from TT_Pedido;
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
E. Tabla TT_DetallePedido
Insert into TT_DetallePedido (Num_Pedido, Cod_Producto, Can_Pedido,
Mon_SubTotal)
Values ('S01', 'P01',2,30.00) ;
Insert into TT_DetallePedido (Num_Pedido, Cod_Producto, Can_Pedido,
Mon_SubTotal)
Values ('S01', 'P04',3,57.00) ;
Insert into TT_DetallePedido (Num_Pedido, Cod_Producto, Can_Pedido,
Mon_SubTotal)
Values ('S02', 'J01',4,12.00) ;
Insert into TT_DetallePedido (Num_Pedido, Cod_Producto, Can_Pedido,
Mon_SubTotal)
Values ('S02', 'J03',2,14.00) ;
Insert into TT_DetallePedido (Num_Pedido, Cod_Producto, Can_Pedido,
Mon_SubTotal)
Values ('S02', 'J04',1,8.00) ;
Insert into TT_DetallePedido (Num_Pedido, Cod_Producto, Can_Pedido,
Mon_SubTotal)
Values ('S03', 'P03',2,34.00) ;
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Insert into TT_DetallePedido (Num_Pedido, Cod_Producto, Can_Pedido,
Mon_SubTotal)
Values ('S03', 'J02',2,8.00) ;
Insert into TT_DetallePedido (Num_Pedido, Cod_Producto, Can_Pedido,
Mon_SubTotal)
Values ('S03', 'J01',1,70.00);
Para poder ver los datos ingresados en la tabla TT_DetallePedido,
ejecutaremos la siguiente consulta y se mostrarán a continuación
sus resultados.
Select * from TT_DetallePedido;
9.2. Modificación de datos
A. Ingresaremos un nuevo Empleado, en la tabla TP_Empleado
Insert into TP_Empleado (Cod_Empleado, Nom_Empleado, Ape_Empleado,
Num_Telefono)
Values ('E04', 'Luis', 'Agurto', '52333');
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Al consultar el ingreso de estos datos, se visualiza lo siguiente.
select * from TP_Empleado
where Cod_empleado = 'E04';
B. Ahora modificaremos el Nombre por Andre y el Teléfono por
421111
Update TP_Empleado
Set Nom_Empleado = 'Andre'
Where Cod_Empleado = 'E04';
Update TP_Empleado
Set Num_Telefono = '421111'
Where Cod_Empleado = 'E04';
Se obtendrán los siguientes resultados.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Se produce un incremento en el Stock de los Productos de la
Familia F01, incremento del 10% del stock actual. Por lo que
procederemos a modificar el Stock y visualizar los cambios.
Update TP_Producto
Set Can_Stock = Can_Stock + Round((Can_Stock*0.10),0)
Where Cod_FamiliaProducto = 'F01';
Se obtendrán los siguientes resultados.
Select * from TP_Producto
Where Cod_FamiliaProducto = 'F01';
9.3. Eliminación de registros
Ingresaremos una nueva familia a la tabla TP_FamiliaProductos.
Insert into TP_FamiliaProducto (Cod_FamiliaProducto, Nom_FamiliaProducto)
Values ('F05', 'Sala Comedor');
Visualicemos el registro ingresado.
Select * from TP_FamiliaProducto;
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Ahora procederemos a eliminar este registro.
Delete From TP_FamiliaProducto
Where Cod_FamiliaProducto = 'F05';
Visualicemos los registro de la tabla TP_FamiliaProductos, ya no se
encuentra el Codigo de Familia F05.
Select * from TP_FamiliaProducto;
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
9.4. Consulta de registros
A. Se desea visualizar todos los productos
Select * from TP_Producto;
B. Se desea visualizar los productos correspondientes a la familia
Terraza
Select * from TP_Producto
Where Cod_FamiliaProducto = 'F03';
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
C. Se desea visualizar los productos que tengan un stock
comprendido entre 40 y 100 unidades
Select * from TP_Producto
Where Can_Stock Between 40 and 100;
D. Se desea visualizar los productos, cuyo nombre, empiece con la
letra F o la letra P
Select * from TP_Producto
Where Nom_Producto Like 'F%' or Nom_Producto Like 'P%';
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
E. Se desea visualizar los pedidos con el nombre de los clientes y el
monto total que pagaron por el pedido.
Select Num_Pedido, Nom_Cliente, Mon_TotalPedido+Mon_IGVPedido
from TT_Pedido;
F. Se desea visualizar los pedidos, ordenados de mayor a menor
select Num_Pedido, Nom_Cliente, Mon_TotalPedido
From TT_Pedido
Order by Mon_TotalPedido Desc;
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
10. Modelamiento de base de datos
10.1.Utilizando Ingeniería reversa
Este proceso se lleva a cabo cuando tenemos implantada la base de
datos y no contamos con sus correspondientes planos. La idea es
obtener los planos de la base de datos, en una herramienta CASE a
partir de la base de datos implantada.
En nuestro caso particular la base de datos BDCasaAsistente,
implantada en MySQL, será la fuente para obtener el correspondiente
plano en la herramienta CASE DBDesigner.
Será necesario tener levantado tanto el MySQL System Tray Monitor,
MySQL Query Browser y DBDesigner.
Ingresar al DBDesigner. Inicio / Todos los programas / fabFORCE /
DBDesigner
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Selccionar la opción Database / Reverse Engineering
Aparece la ventana de dialogo Seleccione conexión a base de datos
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Seleccione la opción seleccione nueva conexión. (New Database Conection). Y
se visualizará la siguiente ventana de diálogo y su correspondiente información.
Acepte, presionando el botón OK. Se visualizar la ventana de diálogo,
mostrando las conexiones que tiene incluyendo la creada recientemente.
Seleccione dicha conexión.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
Y al presionar el botón Connect, se visualizará la siguiente ventana.
Ing. Erick Giovanny Flores Chacón
Manual aplicativo de MySQL y DBDesigner
A continuación se presiona el botón Execute, y generará el modelo (Plano) de la base de datos.
Grabar el archivo.
Ing. Erick Giovanny Flores Chacón