lunes, 15 de mayo de 2023

Implementación y Manipulación de Bases de Datos.

 Creación de la base de datos, es el script con comandos DDL del diseño entregado en la unidad 1.

--TIA 2: IMPLEMENTACIÓN Y MANIPULACIÓN DE BASES DE DATOS

create database Agencia_Santafe_Arrendamientos

use Agencia_Santafe_Arrendamientos

--CREACION DE TABALAS

--Tabla Agencia

create table Agencia(

nit int not null primary key,

nombre varchar(50) not null,

direccion varchar(50) not null,

contacto int not null

);

--Tabla Sede

create table Sede(

cod_sede int not null primary key,

direccion varchar (50) not null,

telefono int not null,

nit_agencia int not null,

foreign key (nit_agencia) references Agencia(nit)

);

--Tabla Administrador

create table Administrador(

cod_administrador int not null primary key,

nombre varchar(50) not null,

contacto int not null,

cedula int not null

);

--Tabla Fiador

create table Fiador(

id_fiador int not null primary key,

nombre_fiador varchar(55) not null,

telefono_fiador int not null,

cant_bienes int not null

);

--Tabla Cliente

create table Cliente(

cedula_clien int not null primary key,

nombre_clien varchar(55) not null,

telefono_clien int not null,

id_fiador1 int,

foreign key (id_fiador1) references Fiador(id_fiador)

);

--Tabla Dueño

create table Dueño(

id_dueño int not null primary key,

nombre_dueño varchar(50) not null,

telefono_dueño int not null,

num_cuenta int not null,

);

select * from Dueño

--Tabla Propiedad

create table Propiedad(

cod_prop int not null primary key,

direccion_prop varchar(55) not null,

barrio_prop varchar(50) not null,

precio_prop float not null,

metros_cuadrados float not null,

num_habitaciones int not null,

num_baños int not null,

tipo_propiedad varchar(50) not null,

id_dueño1 int,

cod_sede2 int,

cedula_clien1 int,

foreign key (id_dueño1) references Dueño(id_dueño),

foreign key (cod_sede2) references Sede(cod_sede),

foreign key (cedula_clien1) references Cliente(cedula_clien),

);

--Tabla Contrato

create table Contrato(

num_contrato int not null primary key,

fecha_inicio varchar(100) not null,

fecha_venc varchar(100) not null,

precio_prop float not null,

cod_sede1 int,

cedula_clien2 int,

cod_prop1 int

foreign key (cedula_clien2) references Cliente(cedula_clien),

foreign key (cod_sede1) references Sede(cod_sede),

foreign key (cod_prop1) references Propiedad(cod_prop)

);ALTER TABLE Contrato ALTER COLUMN fecha_inicio date

ALTER TABLE Contrato ALTER COLUMN fecha_venc date

--Tabla Pago

create table Pago(

ref_pago int not null primary key,

val_pago float not null,

fecha_pago date not null,

cod_prop2 int,

num_contrato1 int,

foreign key (num_contrato1) references Contrato(num_contrato)

);

Insertar el diagrama generado por el sistema gestor de base de datos SQL Server, y de ser necesario indicar si debieron realizar alguna modificación o depurar el modelo con respecto a la entrega realizada en la primera unidad.


Comandos DDL utilizados para insertar mínimo tres registros por tabla:

--INSERTAR DATOS EN LAS TABLAS

--Agencia

insert into Agencia values (81133, 'Santa Fe Arrendamientos', 'Av San Juan #71-34', 4484015)

select * from Agencia

--Sede

insert into Sede values (101, 'Av San Juan # 71-2', 4783198, 81133)

insert into Sede values (102, 'Av San Juan # 71-2', 2489637, 81133)

insert into Sede values (103, 'Calle 36A Sur # 46A-81', 3214789, 81133)

select * from Sede

--Administrador

insert into Administrador values (800, 'Juan Marin', 313775637, 1234567890)

insert into Administrador values (801, 'Marcela Madrid', 317459631, 115789634)

insert into Administrador values (802, 'Diego Zapata', 317896349, 43096137)

select * from Administrador

--Fiador

insert into Fiador values (216981, 'Beatriz Marin', 3543960, 5)

insert into Fiador values (325967, 'Omar Torres', 4762745, 2)

insert into Fiador values (435969, 'Gloria Rendón', 2376806, 1)

select * from Fiador

--Cliente

insert into Cliente values (329864, 'Sebastian Salazar', 43896214, 325967)

insert into Cliente values (516975, 'Camila Agudelo', 15698765, 216981)

insert into Cliente values (113698, 'Sandra Torres', 43896214, 435969)

select * from Cliente

   --Dueño

insert into Dueño values (11569876, 'Jorge Perez', 312896743, 331896478)

insert into Dueño values (43964782, 'Celeste Madrid', 318964120, 159634203)

insert into Dueño values (79623975, 'Anibal Ruiz', 314601265, 108963471)

select * from Dueño

--Propiedad

insert into Propiedad values (001, 'Calle 25# 12-12', 'Poblado', 879.563, 78.1, 4, 2, 'Casa', 11569876, 101, 329864)

insert into Propiedad values (002, 'Cra 72 A # 57-26', 'Poblado', 998.796, 98.5, 6, 3, 'Apartamento', 79623975, 103, 113698)

insert into Propiedad values (003, 'Calle 105 c # 70 - 45', 'Pedregal', 778.591, 68.0, 3, 1, 'Apartaestudio',  43964782, 102, 516975)

select * from Propiedad

   --Contrato

insert into Contrato values (14863, '15/08/2022', '15/02/2023', 778,591, 102, 516975,002)

insert into Contrato values (15896, '01/06/2015', '01/06/2016', 879,563, 101, 329864, 001 )

insert into Contrato values (51896, '27/09/2014', '27/09/2017', 998,796, 103, 113698, 003)

select * from Contrato

--Pago

insert into Pago values (500, 879,563, '15-09-2022', 002, 14863)

insert into Pago values (501, 998,796, '27-10-2014', 003, 51896)

insert into Pago values (502, 778,591, '01-07-2015', 001, 15896)

select * from Pago

Comandos DML para dar solución a las siguientes consultas

Mostrar los datos de las propiedades con número de habitaciones mayor que 3 y tiene un área mayor que 68 mts2 o son tipo casa

select * from Propiedad where (num_habitaciones>3 AND metros_cuadrados>68) OR (tipo_propiedad = 'casa')

Mostrar los datos de los pagos generados por la propiedad con dirección: Calle 25# 12-12

select ref_pago, val_pago, fecha_pago, direccion_prop, precio_prop, num_contrato1

from Pago, Propiedad where cod_prop = 001 AND num_contrato1 = 15896 AND direccion_prop = 'Calle 25 # 12-12'

Mostrar los datos de las propiedades arrendadas en fechas menores a 01/01/2016

select * from Contrato where fecha_inicio < '2016-01-01'

Mostrar los datos de clientes que han arrendado casas en el poblado y sus dueños son Jorge Pérez y Aníbal Ruíz

select * from Cliente JOIN Propiedad ON cod_prop = cod_prop

Where id_dueño1 = 11569876 AND id_dueño1= 79623975 OR barrio_prop = 'Poblado'

 



No hay comentarios:

Publicar un comentario

Presentación Fundamentos en Big Data

El Big Data se refiere a la gestión y análisis de grandes volúmenes de datos que no pueden ser procesados eficazmente con las herramientas t...