jueves, 25 de junio de 2015

Script Base de Datos de Ejemplo

Buenos días gente, el día de hoy les voy a publicar el script de base de Datos de ejemplo utilizado en el libro de la imagen, ya que partiendo de esa base de datos, vamos a poder realizar las consultas que se realizarán en próximos post. La idea es aprender a realizar consultas de una manera eficaz y correcta (INSERT, DELETE, UPDATE y por supuesto el SELECT). Pues bien, les dejo publicado el Script para que lo vayan probando y creando la base de datos


Script Agencia de viajes

De cualquier manera pondre el script en la parte de abajo







--BASE DE DATOS
IF DB_ID('AGENCIA') IS NOT NULL
BEGIN
USE master
DROP DATABASE AGENCIA
END

CREATE DATABASE AGENCIA
GO

--Activando la base de datos AGENCIA
USE AGENCIA
GO

--Creando las tablas
CREATE TABLE AEROLINEA(
RUC CHAR(11) NOT NULL,
NOMBRE VARCHAR(40) NOT NULL
)
GO

CREATE TABLE AVION(
IDAVION CHAR(5) NOT NULL,
RUC CHAR(11) NOT NULL,
COMPAÑIA VARCHAR(40) NOT NULL,
TIPO VARCHAR(30) NOT NULL,
PASAJEROS INT NOT NULL
)
GO

CREATE TABLE TARIFA(
CLASE VARCHAR(20) NOT NULL,
PRECIO MONEY NOT NULL,
IMPUESTO MONEY NOT NULL
)
GO

CREATE TABLE RESERVA(
IDRESERVA INT IDENTITY NOT NULL,
COSTO MONEY DEFAULT 0,
FECHA DATE DEFAULT GETDATE()
)
GO

CREATE TABLE PASAJERO(
IDPASAJERO CHAR(5) NOT NULL,
NOMBRES VARCHAR(50) NOT NULL,
IDPAIS CHAR(4) NOT NULL,
TELEFONO CHAR(15) NOT NULL,
EMAIL VARCHAR(50) NOT NULL
)
GO

CREATE TABLE PAIS(
IDPAIS CHAR(4) NOT NULL,
PAIS VARCHAR(30) NOT NULL
)
GO

CREATE TABLE ASIENTO(
NUMVUELO INT NOT NULL,
LETRA CHAR(2) NOT NULL,
FILA INT NOT NULL
)
GO

CREATE TABLE PAGO(
NUMPAGO INT NOT NULL,
IDRESERVA INT NOT NULL,
IDPASAJERO CHAR(5) NOT NULL,
FECHA DATE NOT NULL,
MONTO MONEY NOT NULL
)
GO

CREATE TABLE AEROPUERTO(
IDAERO CHAR(5) NOT NULL,
NOMBRE VARCHAR(40) NOT NULL,
IDPAIS CHAR(4) NOT NULL
)
GO

CREATE TABLE VUELO(
NUMVUELO INT NOT NULL,
IDAERO CHAR(5) NOT NULL,
IDRESERVA INT NOT NULL,
IDAVION CHAR(5) NOT NULL,
CLASE VARCHAR(20) NOT NULL
)
GO

--Implementado las Llaves Primarias
ALTER TABLE AEROLINEA
ADD PRIMARY KEY NONCLUSTERED (RUC)
ALTER TABLE AVION
ADD PRIMARY KEY NONCLUSTERED (IDAVION)
ALTER TABLE AEROPUERTO
ADD PRIMARY KEY NONCLUSTERED (IDAERO)
ALTER TABLE TARIFA
ADD PRIMARY KEY NONCLUSTERED (CLASE)
ALTER TABLE VUELO
ADD PRIMARY KEY NONCLUSTERED (NUMVUELO,IDAERO,IDRESERVA,IDAVION)
ALTER TABLE RESERVA
ADD PRIMARY KEY NONCLUSTERED (IDRESERVA)
ALTER TABLE PAIS
ADD PRIMARY KEY NONCLUSTERED (IDPAIS)
ALTER TABLE ASIENTO
ADD PRIMARY KEY NONCLUSTERED (NUMVUELO)
ALTER TABLE PASAJERO
ADD PRIMARY KEY NONCLUSTERED (IDPASAJERO)
ALTER TABLE PAGO
ADD PRIMARY KEY NONCLUSTERED (NUMPAGO)
GO

--Implementando las llaves Secundarias
ALTER TABLE PAGO
ADD FOREIGN KEY (IDRESERVA) REFERENCES RESERVA
ALTER TABLE PAGO
ADD FOREIGN KEY (IDPASAJERO) REFERENCES PASAJERO
ALTER TABLE AVION
ADD FOREIGN KEY (RUC) REFERENCES AEROLINEA
ALTER TABLE VUELO
ADD FOREIGN KEY (IDAERO) REFERENCES AEROPUERTO
ALTER TABLE VUELO
ADD FOREIGN KEY (IDRESERVA) REFERENCES RESERVA
ALTER TABLE VUELO
ADD FOREIGN KEY (IDAVION) REFERENCES AVION
ALTER TABLE VUELO
ADD FOREIGN KEY (CLASE) REFERENCES TARIFA
ALTER TABLE VUELO
ADD FOREIGN KEY (NUMVUELO) REFERENCES ASIENTO
ALTER TABLE AEROPUERTO
ADD FOREIGN KEY (IDPAIS) REFERENCES PAIS
ALTER TABLE PASAJERO
ADD FOREIGN KEY (IDPAIS) REFERENCES PAIS
GO

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

--Insertando registros
INSERT INTO AEROLINEA VALUES('10123456789','LAN PERU')
INSERT INTO AEROLINEA VALUES('10123456710','AEROPERU')
INSERT INTO AEROLINEA VALUES('10123456711','TACA')
INSERT INTO AEROLINEA VALUES('10123456712','BIRD PERU')
INSERT INTO AEROLINEA VALUES('10123456713','LAN CUSCO')


INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0001','PERU')
INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0002','ARGENTINA')
INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0003','CHILE')
INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0004','ECUADOR')
INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0005','BRASIL')
INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0006','VENEZUELA')
INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0007','PARAGUAY')
INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0008','URUGUAY')
INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0009','BOLIVIA')
INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0010','MEXICO')
INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0011','HONDURAS')
INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0012','EEUU')
INSERT INTO PAIS (IDPAIS,PAIS) VALUES('0013','PUERTO RICO')


SET DATEFORMAT DMY
GO

INSERT INTO RESERVA (COSTO,FECHA)
VALUES (500,'01/10/11'),
(900,'06/10/11'),
(500,'14/11/11'),
(1200,'16/11/11'),
(1500,'12/12/11'),
(590,'17/12/11'),
(400,'14/01/12'),
(1300,'15/01/12'),
(1000,'01/02/12'),
(1800,'02/04/12'),
(1200,'09/04/12'),
(400,'01/08/12'),
(800,GETDATE())
GO

INSERT INTO PASAJERO
VALUES('P0001','ANGELA TORRES LAZARO','0001','999999999','ATORRES@HOTMAIL.COM'),
('P0002','FERNANDA TORRES LAZARO','0001','999999999','FTORRES@HOTMAIL.COM'),
('P0003','MARIA ZAMORA MEJIA','0005','957564526','MZAMORA@GMAIL.COM'),
('P0004','GUADALUPE ACOSTA FERRER','0002','957564526','GACOSTA@HOTMAIL.COM'),
('P0005','LUZ LAZARO MENOR','0001','999999999','LLAZARO@GMAIL.COM'),
('P0006','KARLA GALLEGOS SILVA','0007','957564526','KGALLEGOS@HOTMAIL.COM'),
('P0007','NERY CALLE DE LA CRUZ','0010','957564526','NCALLE@GMAIL.COM'),
('P0008','HEIDI RENGIFO REATEGUI','0004','957564526','HRENGIFO@HOTMAIL.COM'),
('P0009','MARISOL DIAZ ZAMBRANO','0004','957564526','MDIAZ@GMAIL.COM'),
('P0010','LINDA TUME VARAS','0008','957564526','LTUME@HOTMAIL.COM')
GO

INSERT INTO PAGO
VALUES (1,1,'P0005','01/10/11',500),
(2,2,'P0003','06/10/11',900),
(3,2,'P0008','14/11/11',500),
(4,3,'P0002','16/11/11',1200),
(5,3,'P0001','12/12/11',1500),
(6,5,'P0006','17/12/11',590),
(7,6,'P0003','14/01/12',400),
(8,5,'P0003','15/01/12',1300),
(9,7,'P0008','01/02/12',1000),
(10,3,'P0002','02/04/12',1800),
(11,8,'P0001','09/04/12',1200),
(12,9,'P0006','01/08/12',400),
(13,9,'P0003',GETDATE()+1,800)
GO


INSERT INTO TARIFA
VALUES('SUPER VIP',1200,12),
('VIP',1000,12),
('NACIONAL',800,12),
('ECONOMICO',500,0)
GO

INSERT INTO AEROPUERTO
VALUES('AE01','BARILOCHE','0002'),
('AE02','MAR DEL PLATA','0002'),
('AE03','JORGE CHAVEZ','0001'),
('AE04','SANTIAGO','0003'),
('AE05','AICM','0010'),
('AE06','JOSE JOAQUIN DE OLMEDO','0004'),
('AE07','SIMON BOLIVAR','0006'),
('AE08','SAO PAULO CONGONHAS','0005'),
('AE09','SILVIO PETTIROSSI','0007'),
('AE10','CARRASCO PUERTA DEL SUR','0008')
GO

Banderas de Visitantes

Flag Counter