Você está na página 1de 3

3 tabelas:

imovel (cod_imov, desc_imov e id tipo)


tipo_imovel (id_tipo, tipo_imov)
pagamentos (id_pag, data_pag, val_pag e cod_imov)

criar pdf com


parte 1
a - scrip criação das tabelas
b - iscript de insert dos registros
c - iscript de insert dos imoveis
d - codigo SQL que retorne os resultados como apresentado (join)
e - codigo de linguagem backend que faça consulta no banco de dados
(anexar print)

(colocar o nome de todos na capa)

a -
CREATE TABLE TIPO_IMOV (
ID_tipo INT AUTO_INCREMENT PRIMARY KEY,
Tipo_imov VARCHAR(255)
);

CREATE TABLE Imovel


cod_imov INT AUTO_INCREMENT PRIMARY KEY,
desc_imov TEXT,
id_tipo INT,
FOREIGN KEY (id_tipo) REFERENCES TIPO_IMOV(ID_tipo)
);

CREATE TABLE Pagamentos (


id_pag INT AUTO_INCREMENT PRIMARY KEY,
data_pag DATE,
val_pag DECIMAL(10, 2),
cod_imov INT,
FOREIGN KEY (cod_imov) REFERENCES imovel(cod_imov)
);

b -

INSERT INTO Pagamentos (data_pag, val_pag, cod_imov)


VALUES
('2023-08-05', 1200.00, 1),
('2023-08-15', 800.50, 2),
('2023-09-01', 2500.00, 3),
('2023-09-10', 1500.00, 4),
('2023-10-01', 1800.00, 1);

c -

INSERT INTO TIPO_IMOV (Tipo_imov)


VALUES
('Casa'),
('Apartamento'),
('Sítio'),
('Terreno'),
('Comercial');

INSERT INTO Imovel (desc_imov, id_tipo)


VALUES
('Casa frente mar 150m', 1),
('Apartamento no centro 10 andar 60m', 2),
('Cchacaras medeiros com casa e piscina', 3),
('Sala comercial Avenida Ramos n 2460', 4),
('Casa na Colina Isolada', 1);

d -

SELECT
p.id_pag,
p.data_pag,
p.val_pag,
i.cod_imov,
i.desc_imov,
t.Tipo_imov
FROM
Pagamentos p
JOIN
Imovel i ON p.cod_imov = i.cod_imov
JOIN
TIPO_IMOV t ON i.id_tipo = t.ID_tipo;

e -

const mysql = require('mysql2/promise');

// Configurações da conexão com o banco de dados


const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'nan145092',
database: 'howvii'
});

async function fetchPaymentsAndImovelData() {


try {
const [rows, fields] = await (await connection).query(`
SELECT
p.id_pag AS id_venda,
p.data_pag,
p.val_pag,
i.cod_imov,
i.desc_imov,
t.Tipo_imov
FROM
Pagamentos p
JOIN
Imovel i ON p.cod_imov = i.cod_imov
JOIN
TIPO_IMOV t ON i.id_tipo = t.ID_tipo;
`);
return rows;
} catch (error) {
throw error;
}
}

async function main() {


try {
const results = await fetchPaymentsAndImovelData();
console.log(results);
} catch (error) {
console.error('Erro:', error.message);
} finally {
(await connection).end();
}
}

main();

Você também pode gostar