You are on page 1of 26

Indice:

FACTURA.......................................................................................................................16

SITIO WEB COMERCIO ELECTRONICO


Una empresa desea crear un sitio WEB de comercio electrnico al que se podrn conectar clientes para realizar sus compras. Se tiene que realizar un diseo de la Base de Datos que soporte la operativa de este sitio WEB. Cuando un usuario intenta entrar en este sitio, se le pedir un login y un password. El sistema comprobar si el usuario tiene cuenta y en caso negativo se le pedirn los siguientes datos de alta antes de darle acceso: NIF, correo, nombre, direccin, telfono, login y password. Se comprobar si ya exista con distinto login y password para darle un mensaje de error en caso afirmativo. Una vez el usuario se ha dado de alta o ha entrado con su login y password correctos, puede visitar las distintas secciones de la tienda virtual. Nuestra empresa cliente quiere que quede constancia de las secciones visitadas por los distintos usuarios en una fecha dada. El formato de la fecha ser AA:MM:DD:hh:mm:ss (Ao, Mes, Da, hora, minuto, segundo). Por supuesto un usuario podr visitar varias secciones y cada una de stas ser visitada por varios usuarios. De las secciones se almacenar un cdigo de seccin, nombre, descripcin de la seccin y fecha de creacin en el sitio WEB. Los usuarios pueden realizar sus compras utilizando un "carrito virtual". Cuando un usuario decide utilizar un carrito, el sistema crear uno almacenando la fecha de creacin con el formato de fecha ya descrito. El usuario puede entonces poner productos, detallando cuantas unidades desea, en el carrito o eliminarlos. Un carrito podr contener varios productos y un producto aparecer en carritos de distintos usuarios. De los productos se almacenar el cdigo de producto, el nombre, la descripcin y el precio por unidad. Cuando el usuario decide finalizar sus compras, el sistema le pedir entonces los datos bancarios (en caso de que no los tuviese dados de alta previamente) y dar el carrito por "comprado". El usuario puede dejar un carrito lleno y no completar la compra en esa sesin, para completarla otro da. El usuario debe poder comprobar cul es el coste total de un carrito de compra antes de pagarlo. Adems podr comprobar el coste de todos sus carritos virtuales anteriores y su contenido. En este sitio WEB los productos estn en las secciones, teniendo en cuenta que un producto puede aparecer en varias secciones y una seccin tener varios productos. Nuestra empresa cliente quiere que quede constancia que qu productos ha comprado un usuario de cual seccin en particular.

Sitio Web Diagrama E-R

Sitio Web Modelo Relacional

Sitio Web Usuario(login, password, NIF, NP, AP, AM, calle, NE, NI, col, correo, tel)
PK

Secciones(codigo_seccion, nombre, descripcion, fecha_creacion)


PK

Ingresa(login, codigo_seccion,num_sesion, fecha)


FK(Usuario) PK FK(Secciones)

Carrito(num_carrito, login, codigo_seccion, num_sesion, coste_total, fecha)


PK FK(Ingresa)

Productos(codigo_producto, nombre, descripcion, precio_unidad)


PK

Contiene(num_carrito, login, codigo_seccion, num_sesion, codigo_producto, PK unidades)


FK(Carrito) FK(Productos)

Pertenecen(codigo_seccion, codigo_producto, unidades)


PK FK(Secciones) FK(Productos)

Tarjeta_credito(login, num_cuenta, tipo, fecha_exp)


FK(Usuario) PK

Compra(num_carrito, login, codigo_seccion, num_sesion, loginUsuario, PK num_cuenta, fecha)


FK(Carrito) FK(Tarjeta_credito)

Sitio Web Cdigo

CREATE TABLE USUARIO( LOGIN NVARCHAR2(100), PASSWORD NUMBER, NIF NUMBER, NP NVARCHAR2(100), AP NVARCHAR2(100), AM NVARCHAR2(100), CALLE NVARCHAR2(100), NE NUMBER, NI NUMBER, COL NVARCHAR2(100), CORREO NVARCHAR2(100), TEL NVARCHAR2(100) ); CREATE TABLE SECCIONES( CODIGO_SECCION NUMBER, NOMBRE NVARCHAR2(100), DESCRIPCION NVARCHAR2(100), FECHA_CREACION DATE ); CREATE TABLE INGRESA( LOGIN NVARCHAR2(100), CODIGO_SECCION NUMBER, NUM_SESION NUMBER, FECHA DATE ); CREATE TABLE CARRITO( NUM_CARRITO NUMBER, LOGIN NVARCHAR2(100), CODIGO_SECCION NUMBER, NUM_SESION NUMBER, COSTE_TOTAL NUMBER, FECHA DATE ); CREATE TABLE PRODUCTOS( CODIGO_PRODUCTO NUMBER, NOMBRE NVARCHAR2(100), DESCRIPCION NVARCHAR2(100), PRECIO_UNIDAD NUMBER );

CREATE TABLE CONTIENE( NUM_cARRITO NUMBER, LOGIN NVARCHAR2(100), CODIGO_SECCION NUMBER, NUM_SESION NUMBER, CODIGO_PRODUCTO NUMBER, UNIDADES NUMBER ); CREATE TABLE PERTENECEN( CODIGO_SECCION NUMBER, CODIGO_PRODUCTO NUMBER, UNIDADES NUMBER ); CREATE TABLE TARJETA_CREDITO( LOGIN NVARCHAR2(100), NUM_CUENTA NUMBER, TIPO NVARCHAR2(100), FECHA_EXP DATE ); CREATE TABLE COMPRA( NUM_CARRITO NUMBER, LOGIN NVARCHAR2(100), CODIGO_SECCION NUMBER, NUM_SESION NUMBER, LOGIN_USUARIO NVARCHAR2(100), NUM_CUENTA NUMBER, FECHA DATE ); ALTER TABLE USUARIO ADD CONSTRAINT USUARIO_PK PRIMARY KEY(LOGIN); ALTER TABLE SECCIONES ADD CONSTRAINT SECCIONES_PK PRIMARY KEY(CODIGO_SECCION); ALTER TABLE INGRESA ADD CONSTRAINT INGRESA_PK PRIMARY KEY(LOGIN,CODIGO_SECCION,NUM_SESION); ALTER TABLE CARRITO ADD CONSTRAINT CARRITO_PK PRIMARY KEY(NUM_CARRITO, LOGIN, CODIGO_SECCION, NUM_SESION);

ALTER TABLE PRODUCTOS ADD CONSTRAINT PRODUCTOS_PK PRIMARY KEY(CODIGO_PRODUCTO); ALTER TABLE CONTIENE ADD CONSTRAINT CONTIENE_PK PRIMARY KEY(NUM_CARRITO, LOGIN, CODIGO_SECCION, NUM_SESION, CODIGO_PRODUCTO); ALTER TABLE PERTENECEN ADD CONSTRAINT PERTENECEN_PK PRIMARY KEY(CODIGO_SECCION, CODIGO_PRODUCTO); ALTER TABLE TARJETA_CREDITO ADD CONSTRAINT TARJETA_CREDITO_PK PRIMARY KEY(LOGIN, NUM_CUENTA); ALTER TABLE COMPRA ADD CONSTRAINT COMPRA_PK PRIMARY KEY(NUM_CARRITO,LOGIN,CODIGO_SECCION,NUM_SESION,LOGIN_USUARIO,NU M_CUENTA); ALTER TABLE INGRESA ADD CONSTRAINT INGRESA_USUARIO_FK FOREIGN KEY(LOGIN) REFERENCES USUARIO(LOGIN); ALTER TABLE INGRESA ADD CONSTRAINT INGRESA_SECCIONES_FK FOREIGN KEY(CODIGO_SECCION) REFERENCES SECCIONES(CODIGO_SECCION); ALTER TABLE CARRITO ADD CONSTRAINT CARRITO_INGRESA_FK FOREIGN KEY(LOGIN, CODIGO_SECCION, NUM_SESION) REFERENCES INGRESA(LOGIN, CODIGO_SECCION,NUM_SESION); ALTER TABLE CONTIENE ADD CONSTRAINT CONTIENE_CARRITO_FK FOREIGN KEY(NUM_CARRITO, LOGIN, CODIGO_SECCION, NUM_SESION) REFERENCES CARRITO(NUM_CARRITO, LOGIN, CODIGO_SECCION, NUM_SESION); ALTER TABLE CONTIENE ADD CONSTRAINT CONTIENE_PRODUCTOS_FK FOREIGN KEY(CODIGO_PRODUCTO) REFERENCES PRODUCTOS(CODIGO_PRODUCTO); 7

ALTER TABLE PERTENECEN ADD CONSTRAINT PERTENECEN_SECCIONES_FK FOREIGN KEY(CODIGO_SECCION) REFERENCES SECCIONES(CODIGO_SECCION); ALTER TABLE PERTENECEN ADD CONSTRAINT PERTENECEN_PRODUCTOS_FK FOREIGN KEY(CODIGO_PRODUCTO) REFERENCES PRODUCTOS(CODIGO_PRODUCTO); ALTER TABLE TARJETA_CREDITO ADD CONSTRAINT TARJETA_CREDITO_USUARIO_FK FOREIGN KEY(LOGIN) REFERENCES USUARIO(LOGIN); ALTER TABLE COMPRA ADD CONSTRAINT COMPRA_CARRITO_FK FOREIGN KEY(NUM_CARRITO, LOGIN, CODIGO_SECCION, NUM_SESION) REFERENCES CARRITO(NUM_CARRITO, LOGIN, CODIGO_SECCION, NUM_SESION); ALTER TABLE COMPRA ADD CONSTRAINT COMPRA_TARJETA_CREDITO_FK FOREIGN KEY(LOGIN_USUARIO,NUM_CUENTA) REFERENCES TARJETA_CREDITO(LOGIN, NUM_CUENTA);

Sitio Web Datos

INSERT INTO USUARIO(LOGIN, PASSWORD,NIF,NP,AP,AM,CALLE,NE,NI,COL,CORREO,TEL) VALUES('SAAR_AHY','159856','102598746','JUAREZ','SMITH','PERLA','MEXICO','118' ,NULL,'LAS TORRES','JUAREZ.S.PERLA@GMAIL.COM','9053000'); INSERT INTO USUARIO(LOGIN, PASSWORD,NIF,NP,AP,AM,CALLE,NE,NI,COL,CORREO,TEL) VALUES('LULU','1111','1589647','REYES','SOLORZANO','LOURDES','AZUIL','2256',NU LL,'CIMA','LULU9111@GMAIL.COM','6845972'); INSERT INTO USUARIO(LOGIN, PASSWORD,NIF,NP,AP,AM,CALLE,NE,NI,COL,CORREO,TEL) VALUES('LAMPIHO','589746','78965412','PEREZ','GARCIA','CHRISTIAN','ESCONDIDO' ,'459',NULL,'FUNDADORES','LAMPIHO_CHRIS@GMAIL.COM','6895472'); INSERT INTO USUARIO(LOGIN, PASSWORD,NIF,NP,AP,AM,CALLE,NE,NI,COL,CORREO,TEL) VALUES('RENEE','496514','369852147','RENTERIA','TELLEZ','RENE','LIBERACION','4 985',NULL,'VILLA FONTANA','RENTERIA@GMAIL.COM','3698547'); INSERT INTO USUARIO(LOGIN, PASSWORD,NIF,NP,AP,AM,CALLE,NE,NI,COL,CORREO,TEL) VALUES('JOSE_C','897562','5795653152','ROMERO','VALENCIA','JOSE','PARANOIA',' 9586',NULL,'LOS PINOS','JOSE_CARLOS@GMAIL.COM','6459215'); INSERT INTO SECCIONES(CODIGO_SECCION, NOMBRE, DESCRIPCION, FECHA_CREACION) VALUES('301','ROPA','ARTICULOS DE VESTIR', TO_DATE('05-04-2011','DD-MMYY')); INSERT INTO SECCIONES(CODIGO_SECCION, NOMBRE, DESCRIPCION, FECHA_CREACION) VALUES('302','HOGAR','ARTICULOS PARA EL HOGAR', TO_DATE('05-04-2011','DDMM-YY')); INSERT INTO SECCIONES(CODIGO_SECCION, NOMBRE, DESCRIPCION, FECHA_CREACION) VALUES('303','JUGUETES','ARTICULOS DIVERSOS PARA NINOS', TO_DATE('05-042011','DD-MM-YY')); INSERT INTO SECCIONES(CODIGO_SECCION, NOMBRE, DESCRIPCION, FECHA_CREACION) VALUES('304','TECNOLOGIA','ARTICULOS DE PRIMERA TECNOLOGIA', TO_DATE('05-04-2011','DD-MM-YY')); 9

INSERT INTO SECCIONES(CODIGO_SECCION, NOMBRE, DESCRIPCION, FECHA_CREACION) VALUES('305','HERRAMIENTAS','ARTICULOS PARA USO RUDO', TO_DATE('05-042011','DD-MM-YY')); INSERT INTO INGRESA(LOGIN,CODIGO_SECCION,NUM_SESION,FECHA) VALUES('SAAR_AHY','301','1',TO_DATE('06-04-2011','DD-MM-YY')); INSERT INTO INGRESA(LOGIN,CODIGO_SECCION,NUM_SESION,FECHA) VALUES('LULU','302','5',TO_DATE('06-04-2011','DD-MM-YY')); INSERT INTO INGRESA(LOGIN,CODIGO_SECCION,NUM_SESION,FECHA) VALUES('LAMPIHO','303','2',TO_DATE('06-04-2011','DD-MM-YY')); INSERT INTO INGRESA(LOGIN,CODIGO_SECCION,NUM_SESION,FECHA) VALUES('SAAR_AHY','304','2',TO_DATE('06-04-2011','DD-MM-YY')); INSERT INTO INGRESA(LOGIN,CODIGO_SECCION,NUM_SESION,FECHA) VALUES('RENEE','305','1',TO_DATE('06-04-2011','DD-MM-YY')); INSERT INTO CARRITO(NUM_CARRITO, LOGIN, CODIGO_SECCION, NUM_SESION, COSTE_TOTAL, FECHA) VALUES('1','SAAR_AHY','301','1','250',TO_DATE('06-04-2011','DD-MM-YY')); INSERT INTO CARRITO(NUM_CARRITO, LOGIN, CODIGO_SECCION, NUM_SESION, COSTE_TOTAL, FECHA) VALUES('1','LULU','302','5','55',TO_DATE('06-04-2011','DD-MM-YY')); INSERT INTO CARRITO(NUM_CARRITO, LOGIN, CODIGO_SECCION, NUM_SESION, COSTE_TOTAL, FECHA) VALUES('1','LAMPIHO','303','2','180',TO_DATE('06-04-2011','DD-MM-YY')); INSERT INTO CARRITO(NUM_CARRITO, LOGIN, CODIGO_SECCION, NUM_SESION, COSTE_TOTAL, FECHA) VALUES('1','SAAR_AHY','304','2','100',TO_DATE('06-04-2011','DD-MM-YY')); INSERT INTO CARRITO(NUM_CARRITO, LOGIN, CODIGO_SECCION, NUM_SESION, COSTE_TOTAL, FECHA) VALUES('1','RENEE','305','1','75',TO_DATE('06-04-2011','DD-MM-YY')); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9001','BLUSA','PRENDA DE VESTIR MARCA X','15'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9002','VESTIDO','PRENDA DE VESTIR MARCA X','150');

10

INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9016','VESTIDO','PRENDA DE VESTIR MARCA X','100'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9003','PANTALON','PRENDA DE VESTIR MARCA X','30'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9004','PLATOS','UTILIDAD PARA EL HOGAR MARCA Y','30'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9005','HORNO','UTILIDAD PARA EL HOGAR MARCA Y','280'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9006','BANDEJAS','UTILIDAD PARA EL HOGAR MARCA Y','20'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9007','CARRITO','JUGUETE PARA NINOS MARCA Z','10'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9008','MUNECAS','JUGUETE PARA NINOS MARCA Z','25'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9009','PISTA DE CARROS','JUGUETE PARA NINOS MARCA Z','50'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9010','LAPTOP','COMPUTADORA PORTATIL MARCA B','700'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9011','CAMARA DIGITAL','APARATO FOTOGRAFICO MARCA G','120'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9012','USB','DISPOSITIVO ELECTRONICO MARCA F','25'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9013','CAJA PARA HERRAMIENTAS','CAJA PORTATIL MARCA U','25'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) 11

VALUES('9014','TALADRO','APARATO DE FACIL MANEJO MARCA W','36'); INSERT INTO PRODUCTOS(CODIGO_PRODUCTO,NOMBRE, DESCRIPCION,PRECIO_UNIDAD) VALUES('9015','SET DE TUERCAS','TUERCAS PARA TODO USO MARCA Q','15'); INSERT INTO CONTIENE(NUM_CARRITO,LOGIN, CODIGO_SECCION, NUM_SESION,CODIGO_PRODUCTO,UNIDADES) VALUES('1','SAAR_AHY','301','1','9002','1'); INSERT INTO CONTIENE(NUM_CARRITO,LOGIN, CODIGO_SECCION, NUM_SESION,CODIGO_PRODUCTO,UNIDADES) VALUES('1','SAAR_AHY','301','1','9016','1'); INSERT INTO CONTIENE(NUM_CARRITO,LOGIN, CODIGO_SECCION, NUM_SESION,CODIGO_PRODUCTO,UNIDADES) VALUES('1','LULU','302','5','9004','1'); INSERT INTO CONTIENE(NUM_CARRITO,LOGIN, CODIGO_SECCION, NUM_SESION,CODIGO_PRODUCTO,UNIDADES) VALUES('1','LULU','302','5','9006','1'); INSERT INTO CONTIENE(NUM_CARRITO,LOGIN, CODIGO_SECCION, NUM_SESION,CODIGO_PRODUCTO,UNIDADES) VALUES('1','LAMPIHO','303','2','9009','2'); INSERT INTO CONTIENE(NUM_CARRITO,LOGIN, CODIGO_SECCION, NUM_SESION,CODIGO_PRODUCTO,UNIDADES) VALUES('1','LAMPIHO','303','2','9008','1'); INSERT INTO CONTIENE(NUM_CARRITO,LOGIN, CODIGO_SECCION, NUM_SESION,CODIGO_PRODUCTO,UNIDADES) VALUES('1','SAAR_AHY','304','2','9012','4'); INSERT INTO CONTIENE(NUM_CARRITO,LOGIN, CODIGO_SECCION, NUM_SESION,CODIGO_PRODUCTO,UNIDADES) VALUES('1','RENEE','305','1','9013','2'); INSERT INTO CONTIENE(NUM_CARRITO,LOGIN, CODIGO_SECCION, NUM_SESION,CODIGO_PRODUCTO,UNIDADES) VALUES('1','RENEE','305','1','9015','1'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('301','9001','15'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('301','9002','16');

12

INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('301','9003','17'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('301','9016','18'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('302','9004','19'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('302','9005','11'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('302','9006','12'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('303','9007','13'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('303','9008','14'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('303','9009','15'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('304','9010','16'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('304','9011','17'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('304','9012','18'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('305','9013','19'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('305','9014','15'); INSERT INTO PERTENECEN(CODIGO_SECCION,CODIGO_PRODUCTO, UNIDADES) VALUES('305','9015','16'); INSERT INTO TARJETA_CREDITO(LOGIN, NUM_CUENTA, TIPO, FECHA_EXP) VALUES('SAAR_AHY','0506090802','VISA DEBITO', TO_DATE('19-06-2022','DD-MMYY')); INSERT INTO TARJETA_CREDITO(LOGIN, NUM_CUENTA, TIPO, FECHA_EXP) VALUES('LULU','18191613','MASTER CARD CREDITO', TO_DATE('20-07-2019','DDMM-YY'));

13

INSERT INTO TARJETA_CREDITO(LOGIN, NUM_CUENTA, TIPO, FECHA_EXP) VALUES('LAMPIHO','2829242526','VISA CREDITO', TO_DATE('21-08-2020','DD-MMYY')); INSERT INTO TARJETA_CREDITO(LOGIN, NUM_CUENTA, TIPO, FECHA_EXP) VALUES('RENEE','3635343738','VISA DEBITO', TO_DATE('22-09-2021','DD-MMYY')); INSERT INTO TARJETA_CREDITO(LOGIN, NUM_CUENTA, TIPO, FECHA_EXP) VALUES('JOSE_C','4946434845','VISA DEBITO', TO_DATE('23-10-2018','DD-MMYY')); INSERT INTO COMPRA(NUM_CARRITO,LOGIN,CODIGO_SECCION,NUM_SESION,LOGIN_USUARIO ,NUM_CUENTA,FECHA) VALUES('1','SAAR_AHY','301','1','SAAR_AHY','0506090802',TO_DATE('06-062011','DD-MM-YY')); INSERT INTO COMPRA(NUM_CARRITO,LOGIN,CODIGO_SECCION,NUM_SESION,LOGIN_USUARIO ,NUM_CUENTA,FECHA) VALUES('1','LULU','302','5','LULU','18191613',TO_DATE('08-06-2011','DD-MM-YY')); INSERT INTO COMPRA(NUM_CARRITO,LOGIN,CODIGO_SECCION,NUM_SESION,LOGIN_USUARIO ,NUM_CUENTA,FECHA) VALUES('1','LAMPIHO','303','2','LAMPIHO','2829242526',TO_DATE('09-052011','DD-MM-YY')); INSERT INTO COMPRA(NUM_CARRITO,LOGIN,CODIGO_SECCION,NUM_SESION,LOGIN_USUARIO ,NUM_CUENTA,FECHA) VALUES('1','RENEE','305','1','RENEE','3635343738',TO_DATE('08-05-2011','DD-MMYY')); INSERT INTO COMPRA(NUM_CARRITO,LOGIN,CODIGO_SECCION,NUM_SESION,LOGIN_USUARIO ,NUM_CUENTA,FECHA) VALUES('1','SAAR_AHY','304','2','SAAR_AHY','0506090802',TO_DATE('08-062011','DD-MM-YY'));

14

15

FACTURA

16

Factura Diagrama E-R

17

Factura Modelo Relacional

Compaa (RFC, nombre, cp, pagweb, calle, numInt, numExt, col) PK TelefonoCompaia (RFC, telefono) FK (Compaa) Cliente (ClaveCliente, nombre, RFC) PK TelefonoCliente (ClaveCliente, telfono) FK(Cliente) Productos (ClaveProducto, cantidad, precio, descripcin) PK Tiene (RFC, ClaveProducto, unidades) PK FK(Compania) FK(Productos) Compra (ClaveCliente, ClaveProducto, NumOrden, fecha) PK FK(Cliente) FK(Productos) Factura (NumFactura, lugar, fecha, formaPago, total, subtotal, iva) PK Describe (NumFactura, ClaveProducto) PK FK (Factura) FK (Productos) Direccion (ClaveCliente, direccin) PK FK (Cliente) Entrega (NumFactura, ClaveProducto, PK FK (Describe) ClaveCliente, direccin) FK(Direccion)

18

Factura Cdigo

create table Compania( RFC Nvarchar2(100), nombre Nvarchar2(100), cp Nvarchar2(100), pagweb Nvarchar2(100), calle Nvarchar2(100), numInt Nvarchar2(100), numExt Nvarchar2(100), col Nvarchar2(100) ); create table telefonoCompania( RFC Nvarchar2(100), telefono nvarchar2(100) ); create table cliente( ClaveCliente number, nombre Nvarchar2(100), RFC Nvarchar2(100) ); create table telefonoCliente( ClaveCliente number, telefono Nvarchar2(100) ); create table productos( claveProducto number, cantidad number, precio number, descripcion Nvarchar2(100) ); create table factura( NumFactura number, lugar Nvarchar2(100), fecha date, formaPago Nvarchar2(100), total number, subtotal number, iva number ); create table describe( NumFactura number, ClaveProducto number );

19

create table direccion( ClaveCliente number, direccion Nvarchar2(100) ); create table entrega( NumFactura number, ClaveProducto number, ClaveCliente number, direccion Nvarchar2(100) ); create table Tiene( RFC Nvarchar2(100), claveProducto number, unidades number ); create table compra( claveCliente number, claveProducto number, NumOrden number, fecha date ); alter table Compania add constraint compania_pk primary key (RFC); alter table TelefonoCompania add constraint TelefonoCompania_pk primary key (RFC,telefono); alter table cliente add constraint cliente_pk primary key (claveCliente); alter table TelefonoCliente add constraint TelefonoCliente_pk primary key (ClaveCliente, telefono); alter table Productos add constraint Productos_pk primary key (claveProducto); alter table factura add constraint factura_pk primary key (NumFactura); alter table describe add constraint describe_pk primary key (NumFactura,ClaveProducto);

20

alter table direccion add constraint direccion_pk primary key (ClaveCliente, direccion); alter table entrega add constraint entrega_pk primary key (NumFactura,ClaveProducto,ClaveCliente,direccion); alter table Tiene add constraint Tiene_pk primary key (RFC,ClaveProducto); alter table compra add constraint compra_pk primary key (claveCliente,claveProducto); alter table telefonoCompania add constraint Telefono_compania_fk foreign key(RFC) references Compania(RFC); alter table telefonoCliente add constraint TelefonoCliente_Cliente_fk foreign key(ClaveCliente) references Cliente(ClaveCliente); alter table describe add constraint describe_factura_fk foreign key(NumFactura) references factura(NumFactura); alter table describe add constraint describe_Productos_fk foreign key(claveProducto) references productos(claveProducto); alter table Direccion add constraint Direccion_Cliente_fk foreign key(claveCliente) references Cliente(claveCliente); alter table entrega add constraint entrega_describe_fk foreign key(NumFactura,ClaveProducto) references describe(NumFactura,ClaveProducto); alter table entrega add constraint entrega_direccion_fk foreign key(ClaveCliente, direccion) references direccion(ClaveCliente, direccion); 21

alter table Tiene add constraint Tiene_compania_fk foreign key(RFC) references Compania(RFC); alter table Tiene add constraint Tiene_Productos_fk foreign key(claveProducto) references productos(claveProducto); alter table compra add constraint compra_cliente_fk foreign key(claveCliente) references cliente(claveCliente); alter table compra add constraint compra_productos_fk foreign key(claveProducto) references productos(claveProducto);

22

Factura Datos

insert into compania(RFC,nombre,cp,pagweb,calle,numInt,numExt,col) values('DELL01','DELL','2323','DELL@hotmail.com',null,'1111','1221',null); insert into compania(RFC,nombre,cp,pagweb,calle,numInt,numExt,col) values('HP2410','HP','1212','HP@hotmail.com',null,'3421','1221',null); insert into compania(RFC,nombre,cp,pagweb,calle,numInt,numExt,col) values('OD2805','OFFICE DEPOT','1314','OFFICE@hotmail.com',null,'2443','2341',null); insert into compania(RFC,nombre,cp,pagweb,calle,numInt,numExt,col) values('TEL211','TELCEL','4334','TELCEL@hotmail.com',null,'0931','0049',null); insert into compania(RFC,nombre,cp,pagweb,calle,numInt,numExt,col) values('IC0203','IUSACEL','0043','@hotmail.com',null,'5511','0921',null); insert into telefonocompania(RFC,telefono) values ('DELL01','6845228'); insert into telefonocompania(RFC,telefono) values ('HP2410','6738229'); insert into telefonocompania(RFC,telefono) values ('DELL01','6738109'); insert into telefonocompania(RFC,telefono) values ('TEL211','6129232'); insert into telefonocompania(RFC,telefono) values ('IC0203','6812982'); insert into cliente(ClaveCliente,nombre,RFC) values (001,'Lourdes Reyes','LR1101'); insert into cliente(ClaveCliente,nombre,RFC) values (002,'Perla Juarez','PJ1101'); insert into cliente(ClaveCliente,nombre,RFC) values (003,'Joshua Aranda','JA2805'); insert into cliente(ClaveCliente,nombre,RFC) values (004,'Christian Perez','CP1005'); insert into cliente(ClaveCliente,nombre,RFC) values (005,'Rene Renteria','RR0203'); insert into telefonoCliente(ClaveCliente,telefono) values(001,'7043434'); insert into telefonoCliente(ClaveCliente,telefono) values(002,'1234349'); insert into telefonoCliente(ClaveCliente,telefono) values(002,'6845112'); insert into telefonoCliente(ClaveCliente,telefono) values(004,'2323912'); insert into telefonoCliente(ClaveCliente,telefono) 23

values(003,'9011193'); insert into productos(claveProducto,cantidad,precio,descripcion) values(1110,20,230,'Monitor'); insert into productos(claveProducto,cantidad,precio,descripcion) values(1212,12,120,'mouse'); insert into productos(claveProducto,cantidad,precio,descripcion) values(1313,20,260,'CD-RW/DVD ROM'); insert into productos(claveProducto,cantidad,precio,descripcion) values(1414,9,6500,'MINILAPTOP'); insert into productos(claveProducto,cantidad,precio,descripcion) values(1515,13,950,'IMPRESORA'); insert into factura(NumFactura,lugar,fecha,formaPago,total,subtotal,iva) values (100,'Tijuana BC',TO_DATE('21-09-2011','DD-MMYY'),'credito',null,null,null); insert into factura(NumFactura,lugar,fecha,formaPago,total,subtotal,iva) values (200,'Tecate BC',TO_DATE('12-04-2011','DD-MMYY'),'Contado',null,null,null); insert into factura(NumFactura,lugar,fecha,formaPago,total,subtotal,iva) values (300,'Mexicali BC',TO_DATE('28-05-2011','DD-MMYY'),'credito',null,null,null); insert into factura(NumFactura,lugar,fecha,formaPago,total,subtotal,iva) values (400,'Ensenada BC',TO_DATE('27-04-2011','DD-MMYY'),'Debito',null,null,null); insert into factura(NumFactura,lugar,fecha,formaPago,total,subtotal,iva) values (500,'Rosarito BC',TO_DATE('12-01-2011','DD-MMYY'),'contado',null,null,null); insert into describe(NumFactura,claveproducto) values(0100,1110); insert into describe(NumFactura,claveproducto) values(0200,1212); insert into describe(NumFactura,claveproducto) values(0300,1313); insert into describe(NumFactura,claveproducto) values(0400,1414); insert into describe(NumFactura,claveproducto) values(0500,1515); insert into direccion(claveCliente,direccion) values(001,'Tijuana'); insert into direccion(claveCliente,direccion) values(002,'Mexicali'); insert into direccion(claveCliente,direccion) values(003,'Ensenada'); insert into direccion(claveCliente,direccion) values(004,'Rosarito'); insert into direccion(claveCliente,direccion) values(002,'Tijuana'); 24

insert into entrega(NumFactura,claveProducto,ClaveCliente,Direccion) values(0100,1110,001,'Tijuana'); insert into entrega(NumFactura,claveProducto,ClaveCliente,Direccion) values(0500,1515,004,'Rosarito'); insert into entrega(NumFactura,claveProducto,ClaveCliente,Direccion) values(0100,1110,002,'Tijuana'); insert into entrega(NumFactura,claveProducto,ClaveCliente,Direccion) values(0400,1414,003,'Ensenada'); insert into entrega(NumFactura,claveProducto,ClaveCliente,Direccion) values(0300,1313,004,'Rosarito'); insert into tiene(RFC,ClaveProducto,unidades) values ('DELL01',1110,20); insert into tiene(RFC,ClaveProducto,unidades) values ('HP2410',1313,20); insert into tiene(RFC,ClaveProducto,unidades) values ('TEL211',1212,11); insert into tiene(RFC,ClaveProducto,unidades) values ('DELL01',1414,14); insert into tiene(RFC,ClaveProducto,unidades) values ('OD2805',1515,10); insert into compra(claveCliente,claveProducto,NumOrden,fecha) values (001,1110,123,TO_DATE('12-02-2011','DD-MM-YY')); insert into compra(claveCliente,claveProducto,NumOrden,fecha) values (004,1110,124,TO_DATE('11-01-2011','DD-MM-YY')); insert into compra(claveCliente,claveProducto,NumOrden,fecha) values (002,1414,125,TO_DATE('22-10-2011','DD-MM-YY')); insert into compra(claveCliente,claveProducto,NumOrden,fecha) values (003,1212,126,TO_DATE('14-09-2011','DD-MM-YY')); insert into compra(claveCliente,claveProducto,NumOrden,fecha) values (005,1313,127,TO_DATE('28-01-2011','DD-MM-YY'));

25

26

You might also like