0% encontró este documento útil (0 votos)
573 vistas12 páginas

Reporte de Ventas SQL

Este documento presenta el reporte de ventas de una base de datos SQL creada para administrar información sobre clientes, autos vendidos, vendedores y ventas. Incluye la creación de tablas, triggers para seguridad y registros de ejemplo.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
573 vistas12 páginas

Reporte de Ventas SQL

Este documento presenta el reporte de ventas de una base de datos SQL creada para administrar información sobre clientes, autos vendidos, vendedores y ventas. Incluye la creación de tablas, triggers para seguridad y registros de ejemplo.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 12

Reporte de Ventas SQL

Administración de Base de datos

PROGRAMA:

Ingeniería en sistemas Computacionales

PRESENTA

Alumnos:

 Francia Stephany Salas Dorantes


 Salvador de la Cruz Cruz
 Ernesto Villaseñor Cabrera
 Ramon Jesus Mejia Perez

PROFESOR:

SERRANO RODRIGUEZ ROCIO

El Marqués, Querétaro Enero de 2018


DIAGRA DE LA BASE DE DATOS SOBRE VENTAS
CREACION DE LA BD Y TABLAS
create database ProyectoBDD;
use ProyectoBDD;

create table Bitacora(


Id_Movimiento int,
Usuario varchar(20),
Tabla_Operacion varchar(30),
Tipo_Movimiento varchar(35),
Fecha date,
);

create table Cliente(


Id_Cliente int,
Nombre varchar(35),
Apellido_Paterno varchar(35),
Apellido_Materno varchar(35),
Direccion varchar(35),
Ciudad varchar(35),
Telefono varchar(13),
primary key(Id_Cliente)
);

create table Autos(


Numero_Serie int,
Modelo varchar(35),
Financiamiento money,
Stock varchar(35),
Color varchar(10),
Transmicion varchar(10),
Id_Cliente int,
foreign key(Id_Cliente) references Cliente(Id_Cliente) on delete cascade on
update cascade,
primary key(Numero_Serie)
);

create table Vendedores(


Id_Vendedores int,
Nombre varchar(35),
Apellido_Materno varchar(35),
Apellido_Paterno varchar(35),
Direccion varchar(35),
Ciudad varchar(35),
Telefono varchar(13),
primary key(Id_Vendedores)
);

create table Ventas(


Id_Venta int,
Id_Vendedor int,
Id_Cliente int,
Unidades int,
Monto_Total float,
primary key(Id_Venta),
foreign key(Id_Vendedor) references Vendedores(Id_Vendedores) on delete
cascade on update cascade
);

create table Registro(


Id_Registro int,
Fecha date,
Id_Venta int,
Numero_Serie int,
primary key(Id_Registro),
foreign key(Numero_Serie) references Autos(Numero_Serie) on delete cascade on
update cascade,
foreign key(Id_Venta) references Ventas(Id_Venta) on delete cascade on update
cascade
);

create table Cuenta_Banco(


Id_Cuenta int,
Id_Genera int,
Tipo_Cuenta varchar(35),
Banco varchar(35),
Id_Cliente int,
primary key(Id_Cuenta),
foreign key(Id_Cliente) references Cliente(Id_Cliente) on delete cascade on
update cascade ,
foreign key(Id_Genera) references Registro(Id_Registro)
);

create table Pedido_Unidades(


Id_Pedido int,
Unidades int,
Comision int
);
Triggers de la BD

Seguridad de la BD, cada que hay una inserción se ejecuta un disparador dependiendo
de la tabla e inserta en una tabla llamada bitácora la cual registra el tipo de cliente
que realizo dicha operación y la fecha.
go
create trigger Segurity_Cliente
on Cliente
after insert
as
begin
insert into Bitacora(Usuario, Tabla_Operacion,Tipo_Movimiento,Fecha)
values(SUSER_NAME(),'Cliente','Insert Client',GETDATE());
end

go
create trigger Segurity_Banc
on Cuenta_Banco
after insert
as
begin
insert into Bitacora(Usuario, Tabla_Operacion,Tipo_Movimiento,Fecha)
values(SUSER_NAME(),'Cuenta_Banco','Insert Segurity Bank',GETDATE());
end

go
create Trigger Segurity_Registry
on Registro
after insert
as
begin
insert into Bitacora(Usuario, Tabla_Operacion,Tipo_Movimiento,Fecha)
values(SUSER_NAME(),'Registro','Insert Registry',GETDATE());
end

go
create trigger Segurity_Cars
on Autos
after insert
as
begin
insert into Bitacora(Usuario, Tabla_Operacion,Tipo_Movimiento,Fecha)
values(SUSER_NAME(),'Autos','Insert auto',GETDATE());
end

go
create trigger Segurity_Ventas
on Ventas
after insert
as
begin
insert into Bitacora(Usuario, Tabla_Operacion,Tipo_Movimiento,Fecha)
values(SUSER_NAME(),'Ventas','Insert Ventas',GETDATE());
end

go
create trigger Segurity_Vendedores
on Vendedores
after insert
as
begin
insert into Bitacora(Usuario, Tabla_Operacion,Tipo_Movimiento,Fecha)
values(SUSER_NAME(),'Vendedores','Insert Vendedor',GETDATE());
end

Pro seguridad de la BD existe un disparador que tiene como función mandar un mensaje
a la hora de eliminar un tabla y si no tienes los permisos necesarios como usuario te
saldrá el mensaje.
go
create trigger Users
on database
for Drop_table
as
begin
print'consulta al admin';
end

triggers con operaciones aritmeticas

El disparador, muestra al id del vendedor y las unidades mayores a 100 agregando una
extra al pedido.

go
create trigger VentasVol
on Ventas
after insert
as
begin
select Id_Vendedor, Unidades + 1 from Ventas where Monto_Total >=100;
end

El disparador, muestra al id del vendedor y las unidades mayores a 200 agregando una
extra al pedido.

go
create trigger VentasVo2
on Ventas
after insert
as
begin
select Id_Vendedor, Unidades + 2 from Ventas where Monto_Total >=200;
end

El disparador muestra el Id y el monto total haciendo un descuento del 20% mayores a


100 unidades

go
create trigger VentasVo3
on Ventas
after insert
as
begin
select Id_Vendedor, Monto_Total * 0.20 from Ventas where Unidades > 100;
end
El disparador muestra el Financiamiento y haciendo un descuento del 20% mayores a
$10000

go

create trigger VentasVo4


on Autos
after insert
as
begin
select Financiamiento from Autos *0.10 from Autos where Financiamiento >
10000;
end

Registros de la BD
insert into Cliente values(1, 'Cristhian', 'Alvarez', 'Cano', 'La tuna',
'Badirapuato', 123123242);
insert into Vendedores values(1,'Jaime','Guevon', 'Teporocho', 'La tuna',
'Badiraguato', 12345667);
insert into Ventas values(1,1,1,1,200000.00);
insert into Autos values(1,'Jetta 2.0T', 50000.00, 'S5','Rojo lava','Automatico',1);
insert into Genera values(1, '2018-03-15',1,1);
insert into CuentaBanco values (5,1, 'Debito', 'Bancomer', 1);

insert into Cliente values(2, 'Diego', 'Telles', 'Aguilar', 'Atongo', 'El Marques',
123153242);
insert into CuentaBanco values (3,2, 'Credito', 'Banamex', 2);
insert into Vendedores values(2,'Erick','Mejia', 'Aguas', 'Cuevas :v', 'Pinal de
Amoles', 123434667);
insert into Autos values(2,'Jetta 2.0', 50000.00, 'S5','Rojo','Manual',2);
insert into Genera values(2, '2018-03-15',2,2);
insert into Ventas values(2,2,2,2,250000.00);

insert into Cliente values(3,'armando','mota','de


la','satelite','queretaro',11114508);
insert into Vendedores values(3,'kakaroto','sanchez', 'medina', 'loma bonita',
'celaya', 98765);
insert into Ventas values (3,3,3,3,340000.00);
insert into Autos values (3,'jetta 2.0',50000.00,'s5','negro','estandar',3);
insert into Genera values (3,'2018-04-12',3,3);
insert into CuentaBanco values (4,3,'credito','banorte',3);

insert into Cliente values(4,'rosa','huerta','del


campo','tiznada','queretaro',442945);
insert into Vendedores values(4,'rocky','balboa', 'stallone', 'lomas', 'queretaro',
9326543);
insert into Ventas values (4,4,4,2,340000.00);
insert into Autos values (4,'jetta 2.0',50000.00,'s5','negro','estandar',4);
insert into Genera values (4,'2018-04-12',4,4);
insert into CuentaBanco values (1,4,'credito','banorte',4);

insert into Cliente values(5,'marco','sierra','del


sol','tiznada','queretaro',444695);
insert into Vendedores values(5,'monsamo','benito', 'guerra', 'de la cruz',
'queretaro', 362783);
insert into Ventas values (5,5,5,1,640000.00);
insert into Autos values (5,'beatle',25000.00,'s5','purpurina','manual',5);
insert into Genera values (5,'2018-04-16',5,5);
insert into CuentaBanco values (6,5,'credito','banorte',5);

insert into Cliente values(6,'diego','cortes','alverez','soliz','queretaro',465495);


insert into Vendedores values(6,'flabia','maria', 'contreras', 'correguidora',
'queretaro', 647783);
insert into Ventas values (6,6,6,2,240000.00);
insert into Autos values (6,'beatle',25000.00,'s5','verde','manual',6);
insert into Genera values (6,'2018-04-16',6,6);
insert into CuentaBanco values (7,6,'credito','banorte',6);

insert into Cliente values(7,'dora','marselin','diaz','marques','queretaro',75495);


insert into Vendedores values(7,'memo','dadillo', 'olvera', 'cerritocolorado',
'queretaro', 865783);
insert into Ventas values (7,7,7,1,210000.00);
insert into Autos values (7,'jetta 2.0',25000.00,'s5','roble','estandar',7);
insert into Genera values (7,'2018-04-11',7,7);
insert into CuentaBanco values (8,7,'credito','banamex',7);

insert into Cliente values(8,'botas','molina','del


pajaro','queretaro','queretaro',82631);
insert into Vendedores values(8,'sergey','fornic', 'sido', 'cerritocolorado',
'queretaro', 63019);
insert into Ventas values (8,8,8,1,260000.00);
insert into Autos values (8,'jetta 2.0',26000.00,'s5','cobre','estandar',8);
insert into Genera values (8,'2018-04-15',8,8);
insert into CuentaBanco values (9,8,'credito','banamex',8);

insert into Cliente values(9,'Ricardo','molina','Martinez','El


Marquez','Queretaro',4423445323);
insert into Vendedores values(9,'Zaide','Gamez', 'Hernandez', 'El
Regugio','Queretaro',4434234354);
insert into Ventas values (9,9,9,100,160000.00);
insert into Autos values (9,'jetta',29000.00,'s5','blanco','estandar',9);
insert into Genera values (9,'2018-05-25',9,9);
insert into CuentaBanco values (10,9,'credito','santander',9);

insert into Cliente


values(10,'Rene','Sanchez','Molina','Zibata','queretaro',4423554452);
insert into Vendedores values(10,'sergey','fornic', 'sido', 'cerritocolorado',
'queretaro', 4423124534);
insert into Ventas values (10,10,10,1,220000.00);
insert into Autos values (10,'jetta 2.0',22000.00,'s5','azul','Automatico',10);
insert into Genera values (10,'2018-05-15',10,10);
insert into CuentaBanco values (11,10,'credito','bancomer',10);

insert into Cliente


values(11,'Zamuel','Casas','Hernandez','queretaro','queretaro',4423554534);
insert into Vendedores values(11,'sergey','fornic', 'sido', 'cerritocolorado',
'queretaro', 4423124389);
insert into Ventas values (11,11,11,200,260000.00);
insert into Autos values (11,'Polo',26000.00,'s5','blanco','estandar',11);
insert into Genera values (11,'2018-05-5',11,11);
insert into CuentaBanco values (12,11,'credito','banamex',11);
insert into Cliente
values(12,'Salvador','Casas','Alfaro','queretaro','queretaro',4422345434);
insert into Vendedores values(12,'sergey','fornic', 'sido', 'cerritocolorado',
'queretaro', 4423124389);
insert into Ventas values (12,12,12,1,260000.00);
insert into Autos values (12,'Polo',26000.00,'s5','negro','Automatico',12);
insert into Genera values (12,'2018-05-22',12,12);
insert into CuentaBanco values (13,12,'credito','bancomer',13);

insert into Cliente


values(13,'Ernesto','Cabrera','Villaseñor','queretaro','queretaro',4422345434);
insert into Vendedores values(13,'beto','cabrera', 'cabrera', 'el refugio',
'queretaro', 4423124399);
insert into Ventas values (13,13,13,1,360000.00);
insert into Autos values (13,'Jetta',36000.00,'s5','negro','Estandar',13);
insert into Genera values (13,'2018-05-22',13,13);
insert into CuentaBanco values (13,12,'credito','bancomer',13);

insert into Cliente


values(14,'Salvador','Casas','Alfaro','queretaro','queretaro',4422345434);
insert into Vendedores values(14,'beto','cabrera', 'cabrera', 'el refugio',
'queretaro', 4423124399);
insert into Ventas values (14,14,14,300,460000.00);
insert into Autos values (14,'Jetta',46000.00,'s5','rojo','Estandar',14);
insert into Genera values (14,'2018-05-22',14,14);
insert into CuentaBanco values (14,13,'credito','bancomer',14);

insert into Cliente


values(15,'Salvador','Casas','Alfaro','queretaro','queretaro',4422345434);
insert into Vendedores values(15,'beto','cabrera', 'cabrera', 'el refugio',
'queretaro', 4423124399);
insert into Ventas values (15,15,15,1,460000.00);
insert into Autos values (15,'Jetta',46000.00,'s5','rojo','Estandar',15);
insert into Genera values (15,'2018-05-22',14,14);
insert into CuentaBanco values (15,14,'credito','Banamex',15);
Consultas

Muestra la lista de vendedores y la cantidad de unidades vendidos y el monto total


de la venta

select Nombre,Apellido_Paterno,Unidades, Monto_Total from Vendedores inner join


Ventas on Vendedores.Id_Vendedores =Ventas.Id_Vendedor;

Muestra el nombre del vendedor y fecha de dicha venta(Factura)


select V.Nombre,Ve.Unidades,R.Fecha,R.Numero_Serie from Vendedores as V inner join
Ventas as Ve on V.Id_Vendedores =Ve.Id_Vendedor
inner join Registro as R on R.Id_Venta=Ve.Id_Venta;
---Muestra los datos del vendedor y la venta que realizo
Select V.Nombre,V.Apellido_Paterno,V.Telefono,Ve.Unidades,C.Nombre,
C.Apellido_Paterno from Vendedores as V inner join Ventas as Ve on V.Id_Vendedores
=Ve.Id_Vendedor inner join Cliente as C on C.Id_Cliente=Ve.Id_Cliente;
Cliente/Servidor
El Usuario user1 es el servidor.

El usuario “user2” es solo un cliente con permisos de escritura y lectura.


El usurario Franc es un cliente el cual tiene permisos de lectura y escritura.

También podría gustarte