You are on page 1of 4

---------------------------BASE DE DATOS RIVAS/GRIMALDI-------------------------Create database GRIMALDI_RIVAS; --Use GRIMALDI_RIVAS; ---------------------areas(cod_area, nom_area) ----articulos(cod_art, nom_art, pre_vta, costo, cod_area) ----vendedores(

cuil, nom_ven, com_ven, cod_area) ----supervisores(id_sup, cuil) ----clientes(nro_cli, nom_cli, tel_cli) ----fact_cab(nro_fact, tipo_fact, nro_cli, cuil, fech_fact, tot_fact) ----fact_det(nro_fact, tipo_fact, cod_art, cant_fact, pre_fact) ---Create table areas -(cod_area int primary key check (cod_area >0), -nom_area varchar(20), -superv char(11)); ---Create table articulos -(cod_art int primary key check (cod_art >0), -nom_art varchar(15), -pre_vta decimal(9,2), -costo_adq decimal(9,2), -cod_area int FOREIgn KEY REFERENCES areas -ON UPDATE cascade ON DELETE NO ACTION); ---Create table vendedores -(cuil char(11) primary key check (cuil<> ' '), -nom_ven varchar(15), -ape_ven varchar(15), -com_ven decimal(4,2), -cod_area int FOREIgn KEY REFERENCES areas ON -UPDATE cascade ON DELETE NO ACTION); ---alter table areas add foreign key (superv) references vendedores -ON UPDATE NO ACTION ON DELETE NO ACTION; ---Create table clientes -(cuit char(11) primary key check (cuit<> ' '), -nom_cli varchar(15), -ape_cli varchar(15), -tel_cli char(15)); ---set dateformat dmy; ---Create table fact_cab -(nro_fact int check (nro_fact >0), -tipo_fact char(1) CHECK(tipo_fact= 'A' or tipo_fact= 'B' or tipo_fact =

'C' ), -cuit char(11), -cuil char(11), -fech_fact datetime, -tot_fact decimal(9,2), -CONSTRAINT CHK_FECHA CHECK( fech_fact >='01-01-2010'), --PRiMARY KEY(nro_fact, tipo_fact), -FOREIGN KEY(cuil) REFERENCES vendedores ON UPDATE cascade ON DELETE NO A CTION, -FOREIGN KEY(cuit) REFERENCES clientes ON UPDATE cascade ON DELETE NO ACT ION); ---Create table fact_det --(nro_fact int, -- tipo_fact char(1), -- cod_art int, -- cant_fact int, -- pre_fact decimal(9,2), -- FOREIGn KEY(nro_fact, tipo_fact) REFERENCES fact_cab ON UPDATE NO ACTION ON D ELETE NO ACTION, -- FOREIGn KEY(cod_art) REFERENCES articulos ON UPDATE NO ACTION ON DELETE NO AC TION); -----BEGIN TRANSACTION; --insert into areas (cod_area,nom_area)values(1,'Metales'); --insert into areas (cod_area,nom_area)values(2,'Plasticos'); --insert into areas (cod_area,nom_area)values(3,'mat elctricos'); --insert into areas (cod_area,nom_area)values(4,'Jardineria'); -----insert into vendedores(cuil,nom_ven, ape_ven, com_ven) values(23293050619,'nic o','Rivas',25); --insert into vendedores(cuil,nom_ven, ape_ven, com_ven) values(23313038339,'cri stian','Rojas',30); --insert into vendedores(cuil,nom_ven, ape_ven, com_ven) values(23293050618,'pab lo','Rivas',25); --insert into vendedores(cuil,nom_ven, ape_ven, com_ven) values(23313038337,'fer nando','recuerdos',30); --insert into vendedores(cuil,nom_ven, ape_ven, com_ven) values(23293050616,'gri selda','Rivas',25); --insert into vendedores(cuil,nom_ven, ape_ven, com_ven) values(23313038335,'agu stin','recuerdos',30); ----insert into articulos(cod_art, cod_area, nom_art, pre_vta, costo_adq ) values( 1,1,'acero',600,60); --insert into articulos(cod_art, cod_area, nom_art, pre_vta, costo_adq ) values( 2,1,'bronce',400,40); --insert into articulos(cod_art, cod_area, nom_art, pre_vta, costo_adq ) values( 3,1,'aluminio',500,50); --insert into articulos(cod_art, cod_area, nom_art, pre_vta, costo_adq ) values( 4,2,'pvc',100,10); --insert into articulos(cod_art, cod_area, nom_art, pre_vta, costo_adq ) values( 5,2,'ajw',150,15); --insert into articulos(cod_art, cod_area, nom_art, pre_vta, costo_adq ) values( 6,2,'pvc-refozado',300,30);

--insert into articulos(cod_art, cod_area, nom_art, pre_vta, costo_adq ) values( 7,3,'fusibles',230,23); --insert into articulos(cod_art, cod_area, nom_art, pre_vta, costo_adq ) values( 8,3,'mancuerna APR',250,25); --insert into articulos(cod_art, cod_area, nom_art, pre_vta, costo_adq ) values( 9,3,'tester',200,20); --insert into articulos(cod_art, cod_area, nom_art, pre_vta, costo_adq ) values( 10,4,'pala jardinera',45,12); --insert into articulos(cod_art, cod_area, nom_art, pre_vta, costo_adq ) values( 11,4,'regador',78,4); --insert into articulos(cod_art, cod_area, nom_art, pre_vta, costo_adq ) values( 12,4,'rastrillo',245,34); ---insert into clientes(cuit,nom_cli,ape_cli,tel_cli) values (11111111111,'Juan', 'Martinez',4776987); --insert into clientes(cuit,nom_cli,ape_cli,tel_cli) values (11111111121,'Pedro' ,'Garcia',4776897); --insert into clientes(cuit,nom_cli,ape_cli,tel_cli) values (11111111311,'Pablo' ,'Perez',43181909); --insert into clientes(cuit,nom_cli,ape_cli,tel_cli) values(11111114111,'Silvana ','Gomez',4999382); --insert into clientes(cuit,nom_cli,ape_cli,tel_cli) values(11111511111,'Natalia ','Lopez',4321002); --insert into clientes(cuit,nom_cli,ape_cli,tel_cli) values (11116111111,'Pamela ','Gil',44321123); --insert into clientes(cuit,nom_cli,ape_cli,tel_cli) values (11171111111,'Juan P ablo','Santos',4993882); ---insert into fact_cab(nro_fact,tipo_fact,cuit,cuil,fech_fact,tot_fact)values(15 ,'B',11111111111,23293050619,'13/8/2011',1400); --insert into fact_cab(nro_fact,tipo_fact,cuit,cuil,fech_fact,tot_fact)values(25 ,'A',11111111121,23293050619,'27/8/2011',1900); --insert into fact_cab(nro_fact,tipo_fact,cuit,cuil,fech_fact,tot_fact)values(35 ,'C',11111114111,23293050618,'15/8/2011',1050); --insert into fact_cab(nro_fact,tipo_fact,cuit,cuil,fech_fact,tot_fact)values(45 ,'A',11111511111,23313038337,'28/8/2011',730); --insert into fact_cab(nro_fact,tipo_fact,cuit,cuil,fech_fact,tot_fact)values(65 ,'C',11116111111,23313038337,'01/8/2011',780); --insert into fact_cab(nro_fact,tipo_fact,cuit,cuil,fech_fact,tot_fact)values(75 ,'B',11171111111,23313038337,'12/8/2011',724); --insert into fact_cab(nro_fact,tipo_fact,cuit,cuil,fech_fact,tot_fact)values(95 ,'A',11171111111,23293050618,'25/8/2011',128); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(15, 'B',1,1,600); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(15, 'B',2,2,400); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(25, 'A',3,3,500); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(25, 'A',4,4,100); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(35, 'C',5,3,150); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(35, 'C',6,2,300); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(45, 'A',7,1,230); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(45, 'A',8,2,250); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(65, 'C',9,3,200);

--insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(65, 'C',10,4,45); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(75, 'B',11,3,78); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(75, 'B',12,2,245); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(95, 'A',11,1,78); --insert into fact_det(nro_fact,tipo_fact,cod_art,cant_fact,pre_fact)values(95, 'A',10,2,45); ---commit --a) --select v.* from vendedores v where cuil in (Select cuil From fact_cab Where fe ch_fact between '1/8/2011' and '31/8/2011' -Group by Cuil -Having count(*) < 3) --b) --select * from clientes where cuit not in ( --select cuit from articulos a, areas, fact_cab fc, fact_det fd -where a.cod_area = areas.cod_area -and a.cod_art = fd.cod_art -and fd.nro_fact = fc.nro_fact and fd.tipo_fact = fc.tipo_fact -and nom_area like 'mat elctricos') -----c) --UPDATE vendedores set cod_area = 4 -where cuil in (select cuil from vendedores -where cuil not in ( -select v.cuil from vendedores v where cuil in (S elect cuil From fact_cab -Group by Cuil -Having count(*) > 1)))

You might also like