Trabajo Base de Datos II 1) Diagrama Entidad relación
Generar la base de datos relacional en MYSQL DROP TABLE IF EXISTS `Agencia`; CREATE TABLE `Agencia` `Agencia` (`codigoa` (`codigoa` varchar(255) NOT NULL, `nombre` varchar(255) DEFAULT NULL, `territorio` varchar(255) DEFAULT NULL,`direccion` varchar(255) varchar(255) DEFAULT NULL, `telefono` varchar(255) varchar(255) DEFAULT NULL,`gerente` varchar(255) DEFAULT NULL, PRIMARY KEY (`codigoa`)) ENGINE=InnoDB DEFAULT CHARSET=latin1; DROP TABLE IF EXISTS `CLIENTE`; CREATE TABLE `CLIENTE` (`codigoc` varchar(255) NOT NULL,`nombre` varchar(255) DEFAULT NULL, `apellido_paterno` varchar(255) DEFAULT NULL, `apellido_materno` varchar(255) DEFAULT NULL, `tipo` varchar(255) DEFAULT NULL,`distrito` varchar(255) DEFAULT NULL, `provincia` varchar(255) DEFAULT NULL, `departamento` varchar(255) DEFAULT NULL, `ingreso` varchar(255) DEFAULT NULL,`telefono` varchar(255) DEFAULT NULL,`correo` varchar(255) DEFAULT NULL, `sexo` varchar(255) DEFAULT NULL,
PRIMARY KEY (`codigoc`)) ENGINE=InnoDB DEFAULT CHARSET=latin1; DROP TABLE IF EXISTS `PRODUCTO`; CREATE TABLE `PRODUCTO` ( `idproducto` varchar(255) NOT NULL,`marca` varchar(255) DEFAULT NULL,`categoria` varchar(255) DEFAULT NULL,`familia` varchar(255) DEFAULT NULL, `TIPO PRENDA` varchar(255) DEFAULT NULL,`talla` varchar(255) DEFAULT NULL, `precio` varchar(255) DEFAULT NULL, `CODIGOV` varchar(255) DEFAULT NULL, PRIMARY KEY (`idproducto`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;
DROP TABLE IF EXISTS `orden_compra`; CREATE TABLE `orden_compra` (`no_orden` varchar(255) NOT NULL, `idproducto` varchar(255) NOT NULL,`cantidad` varchar(255) DEFAULT NULL, `codigoc` varchar(255) NOT NULL,`fecha` date DEFAULT NULL, PRIMARY KEY (`no_orden`,`idproducto`,`codigoc`)) ENGINE=InnoDB DEFAULT CHARSET=latin1; DROP TABLE IF EXISTS `VENDEDOR`; CREATE TABLE `VENDEDOR` (`codigov` varchar(255) NOT NULL,`nombre` varchar(255) DEFAULT NULL, `apellido_paterno` varchar(255) DEFAULT NULL,`sueldo` varchar(255) DEFAULT NULL,`AGENCIA` varchar(255) DEFAULT NULL, PRIMARY KEY (`codigov`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Poblar la Base de datos relacional en MYSQL INSERT INTO `Agencia` VALUES ('1','las begoniaS','SUR','av. Las camelias 121 san isidro','9495872','manuel ruiz'), ('2','los cedros','norte','av. Peru 121, los olivos','2587896','ana chavez'), ('3','real plaza','sur','av. San martin 234 barranco','3546895','jose rozas'); INSERT INTO `CLIENTE` VALUES ('1','juan','TORRES','sotelo','vip','chorrillos','lima','lima','2500', '2541569','
[email protected]','m'),('2','roberto','santos','ramirez','economico','barranco','lima' ,'lima','3500','3541256','
[email protected]','m'),('3','ana','alcala','gallegos','vip','breña','li ma','lima','4000','989653214','
[email protected]','f'), ('4','maria fe','sotomayor','ocaña','vip','la molina','lima','lima','5500','999483650', '
[email protected]','f'),('5','jose','lindo','ruiz','economico','surquillo','lima','Lima','2500','98 9458762','
[email protected]','m'), ('6','jorge','salmon','alegria','vip','chorrillos', 'lima','lima','2000','978958621','
[email protected]','m'),('7','eduardo','ampuero','torres','cas ual','jesus maria','lima','lima','3800','999568742','
[email protected]','m'), ('8','antonio','arias','mendoza','vip','breña','lima','lima','1500','999785825','antonio2010@bcp @.com.pe','m'),('9','jimena','mejia','soto','casual','chorrillos','lima','lima','1000','978586936','ji
[email protected]','f'); INSERT INTO `orden_compra` VALUES ('1','1','1','2','2012-01-01'), ('1','3','2','2','2012-01-01'), ('2','5','1','2','2013-05-13'), ('3','6','1','1','2014-05-12'), ('4','8','2','3','2013-02-05'), ('5','2','2','4','2012-01-07'), ('6','4','2','5','2013-07-06'), ('6','6','2','6','2013-07-06'), ('7','3','1','8','2014-08-21'), ('8','2','2','8','2013-11-19'); INSERT INTO `PRODUCTO` VALUES ('1','sibila','casual','cartera','femenino','M','120','2'), ('2','bulls','casual','jean','masculino','L','50','2'), ('3','basement','casual','casaca','Unisex','m','250','1'), ('4','dunken volk','casual','polo','masculino','L','40','3'), ('5','adidas','deportivo','buzo','unisex','M','150','5'), ('6','bose','formal','pantalon','masculino','L','280','4'), ('7','go on','deportivo','polo','unisex','M','60','3'),('8','flamingo','formal','camisa','masculino','l','180','4') ; INSERT INTO `VENDEDOR` VALUES ('1','rino','sotomayor','3000','1'), ('2','rafael','valencia','2800','3'), ('3','fernando','rosas','4000','2'), ('4','Ana','vargas','3500','1'), ('5','cesar ','menacho','2000','3');
2) Modelo Dimensional Poblar cada una de las dimensiones Primero que todo, se noto que habían datos que presentaban errores y ta lvez se necesitaría normalizar pero cuando se ejecuto las sentencias SQL.
Se observa que no es necesario modificar los datos ya que el Navicat los puede reconocer si están con mayúscula o no.
Creación de la tabla DPRODUCTO create table dproducto as (select producto.idproducto, producto.marca,producto.categoria,producto.familia, producto.`TIPO PRENDA`, producto.talla from producto)
CREACION DE LA TABLA DVENDEDOR créate table dvendedor vendedor.AGENCIA,agencia.territorio vendedor.AGENCIA=agencia.codigoa)
as(select vendedor.codigov, from vendedor,agencia where
CREACION DE LA TABLA DCLIENTE create table dcliente as (select cliente.codigoc, cliente.tipo,cliente.distrito,cliente.provincia,cliente.departamento FROM cliente)
Creacion tabla Dtiempo Primero se debe de separar el tiempo en unidades de mes,año y semestre create table TIEMPO as (select no_orden , month(fecha) MES , floor((month(fecha)-1)/6)+1 SEMESTRE, year(fecha) AÑO FROM orden_compra)
se deberá de eliminar algunos datos por que no se puede generar una llave primaria única cuando no hay relación 1-1. Se puede usar
alter ignore table tiempo add unique index (no_orden);