Trabajo Final (Proyecto)

 

PROPUESTA PROYECTO Y CREACION BD.

 

Link de la BD : www.dropbox.com/sh/rhvw7uxx3e19tl4/AADb4rldKr9YqsO9z35KSgWZa?dl=0

 

Modelo relacional.

 

Modelo entidad relacion.

 

 

DICCIONARIO DE DATOS.

 

 

 

 

-  >  El trabajo final que llevare a cabo, será un proyecto de una empresa de música, la cual tendrá las tablas (sucursales, artículos, instrumentos) y dos tablas que llevaran el inventario de las sucursales (inventario_inst_suc y inventario_arti_suc), en total manejaremos 5 tablas, las cuales nos ayudaran a tener un proyecto de inventario de una empresa de música, comencemos.

Primero hay que recordar que hay que crear la base de datos y para esto necesitamos xampp, que es con el que hemos venido trabajando y entrar a cmd y de ahí entrar al xampp;

Ahora bien, creemos la base de datos la cual se llamara shockmusicCF, y se crea con el siguiente comando:

 mysql>  create database shockmusicCF;

Query OK, 1 row affected (0.00 sec)

 

Luego la usaremos :

mysql> use shockmusicCF

Database changed

 

ya estando dentro de nuestra base de datos, podremos crear las tablas del mismo, primero crearemos las principales que son (sucursal,articulo e instrumento y luego las otras dos:

 

SUCURSAL:

para crear la tabla se hace de la siguiente manera:

mysql> create table sucursal
    -> (IdSucursal varchar(12) not null primary key,
    -> Nombre varchar(35) not null,
    -> Direccion varchar(35) not null,
    -> Telefono varchar(12) not null,
    -> Horario varchar(20) not null,
    -> Estado varchar(12) not null);
Query OK, 0 rows affected (0.33 sec)
 
y para ver como quedo compuesta o su estructura le damos:  mysql> describe sucursal;
 
 

ARTICULO:

para crear la tabla se hace de la siguiente manera:

mysql> create table articulo
    -> (IdArticulo varchar(12) not null primary key,
    -> Nombre varchar(35) not null,
    -> Descripcion varchar(20) not null,
    -> Precio varchar(15) not null,
    -> Estado varchar(12) not null);
Query OK, 0 rows affected (0.45 sec)
 
y para ver como quedo compuesta o su estructura le damos:  mysql> describe articulo;
 
 

INSTRUMENTO:

para crear la tabla se hace de la siguiente manera:

mysql> create table instrumento
    -> (IdInstrumento varchar(12) not null primary key,
    -> Nombre varchar(35) not null,
    -> Categoria varchar(20) not null,
    -> Precio varchar(15) not null,
    -> Estado varchar(12) not null);
Query OK, 0 rows affected (0.27 sec)
 
y para ver como quedo compuesta o su estructura le damos:  mysql> describe instrumento;
 
 

INVENTARIO_INST_SUC:

para crear la tabla se hace de la siguiente manera:

mysql> create table inventario_inst_suc
    -> (IdInvis varchar(12) not null primary key,
    -> IdSucursal varchar(12) not null,
    -> IdInstrumento varchar(12) not null,
    -> Cantidad varchar(15) not null,
    -> Stock varchar(15) not null,
    -> foreign key(IdSucursal) references sucursal(IdSucursal) on delete cascade on update cascade,
    -> foreign key(IdInstrumento) references instrumento(IdInstrumento) on delete cascade on update cascade) engine=innodb;
Query OK, 0 rows affected (0.45 sec)
 
foreign -> para relacionar tablas(en este caso instrumento y sucursal con inventario_inst_suc).
 
y para ver como quedo compuesta o su estructura le damos:  mysql> describe inventario_inst_suc;
 

 

INVENTARIO_ARTI_SUC:

para crear la tabla se hace de la siguiente manera:

mysql> create table inventario_arti_suc
    -> (IdInvas varchar(12) not null primary key,
    -> IdSucursal varchar(12) not null,
    -> IdArticulo varchar(12) not null,
    -> Cantidad varchar(15) not null,
    -> Stock varchar(15) not null,
    -> foreign key(IdSucursal) references sucursal(IdSucursal) on delete cascade on update cascade,
    -> foreign key(IdArticulo) references articulo(IdArticulo) on delete cascade on update cascade) engine=innodb;
Query OK, 0 rows affected (0.36 sec)
 
 
foreign -> para relacionar tablas(en este caso articulo y sucursal con inventario_arti_suc).
 
y para ver como quedo compuesta o su estructura le damos:  mysql> describe inventario_arti_suc;
 
 
-> Ya llegados a este punto, hemos creado la base de datos y las tablas que necesitaremos, pero debemos crear también los procedimientos almacenados principales para cada una de las tablas las cuales son (insertar, modificar, consultar y listar), comencemos entonces:
 
 
PROCEDIMIENTOS ALMACENADOS DE SUCURSAL:
 
 
Insertar :
 
mysql> delimiter //
mysql> create procedure insertarsucursa(in idsuc varchar(12), nomsuc varchar(35), dirsuc varchar(35), telsuc varchar(12), horsuc varchar(20), estsuc varchar(12))
    -> begin
    -> insert into sucursal (IdSucursal,Nombre,Direccion,Telefono,Horario,Estado) values (idsuc,nomsuc,dirsuc,telsuc,horsuc,estsuc);
    -> end
    -> //
Query OK, 0 rows affected (0.13 sec)

 

Modificar :

mysql> delimiter //
mysql> create procedure modificarsucursa(in idsuc varchar(12), nomsuc varchar(35), dirsuc varchar(35), telsuc varchar(12), horsuc varchar (20), estsuc varchar(12))
    -> begin
    -> update sucursal set Nombre=nomsuc, Direccion=dirsuc, Telefono=teluc, Horario=horsuc, Estado=estsuc where IdSucursal=idsuc;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
 
Consultar:
 
mysql> delimiter //
mysql> create procedure consultarsucursa(in idsuc varchar(12))
    -> begin
    -> select * from sucursal where IdSucursal=idsuc;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
 
Listar:
 
mysql> delimiter //
mysql> create procedure listarsucursa()
    -> begin
    -> select * from sucursal;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
 
 
PROCEDIMIENTOS ALMACENADOS DE ARTICULO:
 
 
Insertar :
 
mysql> delimiter //
mysql> create procedure insertararticulo(in idart varchar(12), nomart varchar(35), desart varchar(20), preart varchar(15), estart varchar(12))
    -> begin
    -> insert into articulo (IdArticulo,Nombre,Descripcion,Precio,Estado) values (idart,nomart,desart,preart,estart);
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)

 

Modificar :

mysql> delimiter //
mysql> create procedure modificararticulo(in idart varchar(12), nomart varchar(35), desart varchar(20), preart varchar(15), estart varchar(12))
    -> begin
    -> update articulo set Nombre=nomart, Descripcion=desart, Precio=preart, Estado=estart where IdArticulo=idart;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
Consultar:
 
mysql> delimiter //
mysql> create procedure consultararticulo(in idart varchar(12))
    -> begin
    -> select * from articulo where IdArticulo=idart;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
 
Listar:
 
mysql> delimiter //
mysql> create procedure listararticulo()
    -> begin
    -> select * from articulo;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
 
 
PROCEDIMIENTOS ALMACENADOS DE INSTRUMENTO:
 
Insertar :
 
mysql> delimiter //
mysql> create procedure insertarinstrumento(in idins varchar(12), nomins varchar(35), catins varchar(20), preins varchar(15), estins varc
har(12))
    -> begin
    -> insert into instrumento (IdInstrumento,Nombre,Categoria,Precio,Estado) values (idins,nomins,catins,preins,estins);
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)

 

Modificar :

mysql> delimiter //
mysql> create procedure modificarinstrumento(in idins varchar(12), nomins varchar(35), catins varchar(20), preins varchar(15), estins var
char(12))
    -> begin
    -> update instrumento set Nombre=nomins, Categoria=catins, Precio=preins, Estado=estins where IdInstrumento=idins;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
Consultar:
 
mysql> delimiter //
mysql> create procedure consultarinstrumento(in idins varchar(12))
    -> begin
    -> select * from instrumento where IdInstrumento=idins;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
 
Listar:
 
mysql> delimiter //
mysql> create procedure listarinstrumento()
    -> begin
    -> select * from instrumento;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 

 

PROCEDIMIENTOS ALMACENADOS DE INVENTARIO_INST_SUC:
 
 
Insertar :
 
mysql> delimiter //
mysql> create procedure insertarinstsuc(in idis varchar(12), idsuc varchar(12), idins varchar(12), canis varchar(15), stois varchar(15))
    -> begin
    -> insert into inventario_inst_suc (IdInvis,IdSucursal,IdInstrumento,Cantidad,Stock) values (idis,idsuc,idins,canis,stois);
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 

Modificar :

mysql> delimiter //
mysql> create procedure modificarinstsuc(in idis varchar(12), idsuc varchar(12), idins varchar(12), canis varchar(15), stois varchar(15))
    -> begin
    -> update inventario_inst_suc set IdSucursal=idsuc, IdInstrumento=idins, Cantidad=canis, Stock=stois where IdInvis=idis;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
Consultar:
 
mysql>  create procedure consultarinstsuc(in idis varchar(12))
    -> begin
    -> select i.IdInvis, i.IdSucursal, s.NombreSuc, i.IdInstrumento, n.NombreIns, i.Cantidad, i.Stock from inventario_inst_suc i inner join sucursal  s on i.IdSucursal=s.IdSucursal
  inner join instrumento  n on i.IdInstrumento=n.IdInstrumento where i.IdInvis=idis;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
Listar:
 
mysql> delimiter //
mysql> create procedure listarinstsuc()
    -> begin
    -> select i.IdInvis, i.IdSucursal, s.NombreSuc, i.IdInstrumento, n.NombreIns, i.Cantidad, i.Stock from inventario_inst_suc i inner join sucursal  s on i.IdSucursal=s.IdSucursal
  inner join instrumento  n on i.IdInstrumento=n.IdInstrumento;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
 
 
 
PROCEDIMIENTOS ALMACENADOS DE INVENTARIO_ARTI_SUC:
 
 
Insertar :
 
mysql> delimiter //
mysql> create procedure insertarartisuc(in idas varchar(12), idsuc varchar(12), idart varchar(12), canas varchar(15), stoas varchar(15))
    -> begin
    -> insert into inventario_arti_suc (IdInvas,IdSucursal,IdInstrumento,Cantidad,Stock) values (idas,idsuc,idart,canas,stoas);
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 

Modificar :

mysql> delimiter //
mysql> create procedure modificarartisuc(in idas varchar(12), idsuc varchar(12), idart varchar(12), canas varchar(15), stoas varchar(15))
    -> begin
    -> update inventario_arti_suc set IdSucursal=idsuc, IdArticulo=idart, Cantidad=canas, Stock=stoas where IdInvas=idas;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
 
Consultar:
 
mysql> create procedure consultarartisuc(in idas varchar(12))
    -> begin
    -> select i.idInvas, i.IdSucursal, s.Nombre, i.IdArticulo, a.Nombre, i.Cantidad, i.Stock from inventario_arti_suc i inner join sucursal  s on i.IdSucursal=s.IdSucursal inner jo
in articulo  a on i.IdArticulo=a.IdArticulo where i.IdInvas=idas;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)
 
Listar:
 
mysql> delimiter //
mysql> create procedure istarartisuc()
    -> begin
    -> select i.idInvas, i.IdSucursal, s.Nombre, i.IdArticulo, a.Nombre, i.Cantidad, i.Stock from inventario_arti_suc i inner join sucursal  s on i.IdSucursal=s.IdSucursal inner jo
in articulo  a on i.IdArticulo=a.IdArticulo;
    -> end
    -> //
Query OK, 0 rows affected (0.00 sec)

 

-> ya con esto concluimos lo que es la creacion de nuestra BD para el proyecto a realizar, lo que sigue es programar con lo aprendido en programacion web 1 que es (CSS, java script Y PHP).