Está en la página 1de 11

Ao del Centenario de

Machu Picchu Para el Mundo


UNIVERSIDAD NACIONAL SAN LUIS GONZAGA DE ICA
FACULTAD DE INGENIERIA DE SISTEMAS

DOCENTE

Wilder Romn Munive

CURSO

Implementacin de Base de Datos

TEMA

Creacin de una base de datos

CICLO

VII

INTEGRANTES:

1. Ruiz Asto Luis Alberto

2. Valdivia Retamozo Alejandro

3. Pillpe Leon William

4. Condori Cruz Oscar

ICA PERU
2011

-- Creacin de la base de datos


-------------------------------

USE master
Go

CREATE DATABASE MarketPERU


ON PRIMARY
(NAME = MarketPERU_Dat,
FILENAME='D:\BaseDatosSql\MarketPeru\MarketPERU_Dat.mdf',
SIZE = 3MB, MAXSIZE = 200, FILEGROWTH = 1 )
LOG ON
(NAME = MarketPERU_Log, FILENAME
='D:\BaseDatosSql\MarketPeru\MarketPERU_Log.ldf',
SIZE = 1MB, MAXSIZE = 200, FILEGROWTH= 1MB)
GO

USE MarketPERU
Go

-- Creacin de las tablas

------------------------CREATE TABLE GUIA_DETALLE (


IdGuia
IdProducto
PrecioVenta
Cantidad
go

int NOT NULL,


int NOT NULL,
money NOT NULL,
smallint NOT NULL )

ALTER TABLE GUIA_DETALLE


ADD PRIMARY KEY (IdGuia, IdProducto)
go
CREATE TABLE ORDEN_DETALLE (
IdOrden
int NOT NULL,
IdProducto
int NOT NULL,
PrecioCompra
money NOT NULL,
CantidadSolicitada
smallint NOT NULL,
CantidadRecibida
smallint NULL,
Estado
varchar(10) NULL )
go
ALTER TABLE ORDEN_DETALLE
ADD PRIMARY KEY (IdOrden, IdProducto)
go
CREATE TABLE PRODUCTO (
IdProducto
IdCategoria
IdProveedor
Nombre
UnidadMedida
PrecioProveedor
StockActual
StockMinimo
Descontinuado
go

int IDENTITY,
int NOT NULL,
int NOT NULL,
varchar(40) NOT NULL,
varchar(30) NULL,
money NULL,
smallint NULL,
smallint NULL,
bit )

ALTER TABLE PRODUCTO


ADD PRIMARY KEY (IdProducto)
go
ALTER TABLE PRODUCTO
ADD UNIQUE (Nombre, UnidadMedida)
go
CREATE TABLE PROVEEDOR (
IdProveedor
Nombre
Representante
Direccion
Ciudad
Departamento
CodigoPostal
Telefono
Fax
go

int IDENTITY,
varchar(40) NOT NULL,
varchar(30) NULL,
varchar(60) NULL,
varchar(15) NULL,
varchar(15) NULL,
varchar(15) NULL,
varchar(15) NULL,
varchar(15) NULL )

ALTER TABLE PROVEEDOR


ADD PRIMARY KEY (IdProveedor)
go
CREATE TABLE CATEGORIA (
IdCategoria
Categoria
Descripcion
go

int IDENTITY,
varchar(20) NOT NULL,
varchar(40) NULL )

ALTER TABLE CATEGORIA


ADD PRIMARY KEY (IdCategoria)
go
ALTER TABLE CATEGORIA
ADD UNIQUE (Categoria)
go
CREATE TABLE GUIA (
IdGuia
IdLocal
FechaSalida
Transportista
go

int NOT NULL,


int NOT NULL,
datetime NOT NULL,
varchar(30) NOT NULL )

ALTER TABLE GUIA


ADD PRIMARY KEY (IdGuia)
go
CREATE TABLE LOCAL (
IdLocal
Direccion
Distrito
Telefono
Fax
go

int NOT NULL,


varchar(60) NULL,
varchar(20) NULL,
varchar(15) NULL,
varchar(15) NULL )

ALTER TABLE LOCAL


ADD PRIMARY KEY (IdLocal)
go
CREATE TABLE ORDEN (
IdOrden
FechaOrden
FechaEntrada
go

int NOT NULL,


datetime NOT NULL,
datetime NULL )

ALTER TABLE ORDEN


ADD PRIMARY KEY (IdOrden)
go

ALTER TABLE GUIA_DETALLE


ADD FOREIGN KEY (IdProducto)
REFERENCES PRODUCTO
go
ALTER TABLE GUIA_DETALLE
ADD FOREIGN KEY (IdGuia)
REFERENCES GUIA
go
ALTER TABLE ORDEN_DETALLE
ADD FOREIGN KEY (IdOrden)
REFERENCES ORDEN
go
ALTER TABLE ORDEN_DETALLE
ADD FOREIGN KEY (IdProducto)
REFERENCES PRODUCTO
go
ALTER TABLE PRODUCTO
ADD FOREIGN KEY (IdProveedor)
REFERENCES PROVEEDOR
go
ALTER TABLE PRODUCTO
ADD FOREIGN KEY (IdCategoria)
REFERENCES CATEGORIA
go
ALTER TABLE GUIA
ADD FOREIGN KEY (IdLocal)
REFERENCES LOCAL
Go

--Consultas
----------------------------------------------------------SELECT name as 'Tablas Creadas' FROM sysobjects WHERE type = 'U'
Go

select Nombre AS 'NOMBRE PRODUCTO',StockActual AS 'CANTIDAD',


PrecioProveedor AS 'PRECIO',PrecioProveedor*StockActual AS MONTO
FROM PRODUCTO
Go

SELECT Nombre,UnidadMedida,PrecioProveedor FROM PRODUCTO


WHERE (StockActual BETWEEN 100 AND 400) AND
(UnidadMedida='PAQUETE 454 GR' OR UnidadMedida='UNIDAD' )
GO

SELECT Nombre,Direccion,Ciudad FROM PROVEEDOR WHERE Representante LIKE 'A%'


GO

SELECT Nombre,UnidadMedida,StockMinimo FROM PRODUCTO


ORDER BY IdProducto DESC,Nombre
GO

SELECT PROVEEDOR.Nombre,PROVEEDOR.Direccion,PRODUCTO.Nombre,
PRODUCTO.PrecioProveedor
FROM
PROVEEDOR
INNER JOIN PRODUCTO
ON PROVEEDOR.IdProveedor = PRODUCTO.IdProveedor
GO

select IdProducto,COUNT(IdOrden)as 'Nro Pedidos'


from ORDEN_DETALLE
group by IdProducto
order by 2 desc

go

select IdProducto,AVG(PrecioProveedor) as 'Precio Promedio'


from PRODUCTO
group by IdProducto
go

select IdProducto,Nombre,PrecioProveedor
from PRODUCTO
where IdProveedor=(select IdProveedor from PROVEEDOR

go

where Direccion='AV. SAN VICENTE 1276 ATE-VITARTE')

select LOCAL.Distrito,GUIA.FechaSalida,GUIA_DETALLE.Cantidad
from LOCAL
inner join GUIA
on LOCAL.IdLocal =GUIA.IdLocal
inner join GUIA_DETALLE
on GUIA.IdGuia=GUIA_DETALLE.IdGuia
go

select CATEGORIA.Categoria,PRODUCTO.StockActual,GUIA_DETALLE.PrecioVenta
FROM CATEGORIA
inner join PRODUCTO

ON CATEGORIA.IdCategoria=PRODUCTO.IdCategoria
inner join GUIA_DETALLE
ON PRODUCTO.IdProducto=GUIA_DETALLE.IdProducto
GO

También podría gustarte