lunes, 15 de mayo de 2023

Vídeo de la base de datos planteada en la TIA 2: Implementación y manipulación de bases de datos.

Enlace video de sustentación

https://youtu.be/4CvjK2AQg7E

Reflexión sobre la importancia de utilizar el lenguaje SQL para la creación y manipulación de las bases de datos relacionales

El lenguaje SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y potencia de los sistemas relacionales y permite así una gran variedad de operaciones. El lenguaje SQL está compuesto por: comandos, cláusulas, operadores y funciones de agregado². Las bases de datos relacionales utilizan el lenguaje SQL, muy parecido al lenguaje natural, con lo que permite una fácil interacción con la base de datos. Además, el SQL hace que sea posible consultar datos de manera muy sencilla, a través de comandos para seleccionar, actualizar, insertar y averiguar la ubicación de información específica.

El uso del lenguaje SQL es importante para la creación y manipulación de las bases de datos relacionales porque permite una fácil interacción con la base de datos y hace posible consultar datos de manera muy sencilla.

 


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'

 



Cronograma y presupuesto del Proyecto