edrikfsteiner / aluguel-carros

3 stars 0 forks source link

Scripts do Banco #4

Closed edrikfsteiner closed 3 days ago

edrikfsteiner commented 3 weeks ago

criar as tabelas

edrikfsteiner commented 3 weeks ago

inserir elementos nas tabelas (mínimo de 10 itens)

BezerraLuiz commented 2 weeks ago

Aguardando criação do banco para inciar o desenvolvimento do script para preenchimento das tabelas.

gustavoniero commented 2 weeks ago

Script` em Deselvolvimento


-- Tabela forma_pagamento
CREATE TABLE forma_pagamento (
    cd_forma_pagamento INT PRIMARY KEY,
    tipo_pagamento VARCHAR(20)
);
GO

-- Tabela cliente
CREATE TABLE cliente (
    cd_cliente INT PRIMARY KEY,
    nm_cliente VARCHAR(200),
    telefone VARCHAR(15),
    email VARCHAR(200),
    cpf VARCHAR(11),
    rua VARCHAR(200),
    numero INT,
    bairro VARCHAR(50),
    cep VARCHAR(8),
    cidade VARCHAR(50),
    uf VARCHAR(2)
);
GO

-- Tabela cor
CREATE TABLE cor (
    id_cor INT PRIMARY KEY,
    cor VARCHAR(20)
);
GO

-- Tabela modelo
CREATE TABLE modelo (
    id_modelo INT PRIMARY KEY,
    modelo VARCHAR(20)
);
GO

-- Tabela marca
CREATE TABLE marca (
    id_marca INT PRIMARY KEY,
    marca VARCHAR(20)
);
GO

-- Tabela veiculos
CREATE TABLE veiculos (
    placa CHAR(7) PRIMARY KEY,
    ano INT,
    id_cor INT,
    chassi VARCHAR(17),
    id_modelo INT,
    id_marca INT,
    FOREIGN KEY (id_cor) REFERENCES cor(id_cor),
    FOREIGN KEY (id_modelo) REFERENCES modelo(id_modelo),
    FOREIGN KEY (id_marca) REFERENCES marca(id_marca)
);
GO

-- Tabela aluguel
CREATE TABLE aluguel (
    id_aluguel INT PRIMARY KEY,
    cd_cliente INT,
    placa CHAR(7),
    data_inicio DATETIME,
    data_fim DATETIME,
    valor DECIMAL(10, 2),
    FOREIGN KEY (cd_cliente) REFERENCES cliente(cd_cliente),
    FOREIGN KEY (placa) REFERENCES veiculos(placa)
);
GO

-- Tabela reserva
CREATE TABLE reserva (
    id_reserva INT PRIMARY KEY,
    cd_cliente INT,
    placa CHAR(7),
    data_reserva DATETIME,
    valor DECIMAL(10, 2),
    FOREIGN KEY (cd_cliente) REFERENCES cliente(cd_cliente),
    FOREIGN KEY (placa) REFERENCES veiculos(placa)
);
GO

-- Tabela pagamento
CREATE TABLE pagamento (
    cd_cliente INT,
    id_aluguel INT,
    cd_forma_pagamento INT,
    valor DECIMAL(10, 2),
    FOREIGN KEY (cd_cliente) REFERENCES cliente(cd_cliente),
    FOREIGN KEY (id_aluguel) REFERENCES aluguel(id_aluguel),
    FOREIGN KEY (cd_forma_pagamento) REFERENCES forma_pagamento(cd_forma_pagamento)
);
GO

-- Inserindo dados na tabela forma_pagamento
INSERT INTO forma_pagamento (cd_forma_pagamento, tipo_pagamento) VALUES
(1, 'Cartão de Crédito'),
(2, 'Boleto Bancário'),
(3, 'Transferência'),
(4, 'Dinheiro');
GO

-- Inserindo dados na tabela cliente
INSERT INTO cliente (cd_cliente, nm_cliente, telefone, email, cpf, rua, numero, bairro, cep, cidade, uf) VALUES
(1, 'Carlos Silva', '11999999999', 'carlos@email.com', '12345678901', 'Rua A', 100, 'Bairro A', '12345678', 'São Paulo', 'SP'),
(2, 'Ana Pereira', '21988888888', 'ana@email.com', '23456789012', 'Rua B', 200, 'Bairro B', '23456789', 'Rio de Janeiro', 'RJ');
GO

-- Inserindo dados na tabela cor
INSERT INTO cor (id_cor, cor) VALUES
(1, 'Preto'),
(2, 'Branco'),
(3, 'Azul'),
(4, 'Vermelho');
GO

-- Inserindo dados na tabela modelo
INSERT INTO modelo (id_modelo, modelo) VALUES
(1, 'Sedan'),
(2, 'SUV'),
(3, 'Hatch'),
(4, 'Picape');
GO

-- Inserindo dados na tabela marca
INSERT INTO marca (id_marca, marca) VALUES
(1, 'Toyota'),
(2, 'Honda'),
(3, 'Ford'),
(4, 'Chevrolet');
GO

-- Inserindo dados na tabela veiculos
INSERT INTO veiculos (placa, ano, id_cor, chassi, id_modelo, id_marca) VALUES
('ABC1234', 2020, 1, '1HGCM82633A123456', 1, 1),
('XYZ5678', 2019, 2, '2HGCM82633A654321', 2, 2),
('DEF9012', 2021, 3, '3HGCM82633A789012', 3, 3),
('GHI3456', 2018, 4, '4HGCM82633A345678', 4, 4);
GO
BezerraLuiz commented 2 weeks ago

Como são 10 itens para ser adicionado em cada tabela, pode deixar que eu crio o resto dos dados dos inserts.

BezerraLuiz commented 2 weeks ago

Claro! Vou substituir os tipos de pagamento (8) e (9) por outros diferentes. Aqui está a instrução SQL atualizada:

-- Inserindo dados na tabela forma_pagamento
INSERT INTO forma_pagamento (cd_forma_pagamento, tipo_pagamento) VALUES
(1, 'Cartão de Crédito'),
(2, 'Boleto Bancário'),
(3, 'Transferência'),
(4, 'Dinheiro'),
(5, 'Pix'),
(6, 'Cartão de Débito'),
(7, 'Cheque'),
(8, 'Crédito Consignado'),
(9, 'Crédito Pessoal'),
(10, 'Paypal');
GO

-- Inserindo dados na tabela cliente
INSERT INTO cliente (cd_cliente, nm_cliente, telefone, email, cpf, rua, numero, bairro, cep, cidade, uf) VALUES
(1, 'Carlos Silva', '11999999999', 'carlos@email.com', '12345678901', 'Rua A', 100, 'Bairro A', '12345678', 'São Paulo', 'SP'),
(2, 'Ana Pereira', '21988888888', 'ana@email.com', '23456789012', 'Rua B', 200, 'Bairro B', '23456789', 'Rio de Janeiro', 'RJ'),
(3, 'Marcos Souza', '31977777777', 'marcos@email.com', '34567890123', 'Rua C', 300, 'Bairro C', '34567890', 'Belo Horizonte', 'MG'),
(4, 'Luciana Alves', '41966666666', 'luciana@email.com', '45678901234', 'Rua D', 400, 'Bairro D', '45678901', 'Curitiba', 'PR'),
(5, 'Patricia Lima', '51955555555', 'patricia@email.com', '56789012345', 'Rua E', 500, 'Bairro E', '56789012', 'Porto Alegre', 'RS'),
(6, 'Rafael Costa', '61944444444', 'rafael@email.com', '67890123456', 'Rua F', 600, 'Bairro F', '67890123', 'Brasília', 'DF'),
(7, 'Fernanda Oliveira', '71933333333', 'fernanda@email.com', '78901234567', 'Rua G', 700, 'Bairro G', '78901234', 'Salvador', 'BA'),
(8, 'Gustavo Ferreira', '81922222222', 'gustavo@email.com', '89012345678', 'Rua H', 800, 'Bairro H', '89012345', 'Recife', 'PE'),
(9, 'Juliana Rocha', '91911111111', 'juliana@email.com', '90123456789', 'Rua I', 900, 'Bairro I', '90123456', 'Fortaleza', 'CE'),
(10, 'Ricardo Alves', '21900000000', 'ricardo@email.com', '01234567890', 'Rua J', 1000, 'Bairro J', '01234567', 'Manaus', 'AM');
GO

-- Inserindo dados na tabela cor
INSERT INTO cor (id_cor, cor) VALUES
(1, 'Preto'),
(2, 'Branco'),
(3, 'Azul'),
(4, 'Vermelho'),
(5, 'Verde'),
(6, 'Amarelo'),
(7, 'Cinza'),
(8, 'Prata'),
(9, 'Rosa'),
(10, 'Laranja');
GO

-- Inserindo dados na tabela modelo
INSERT INTO modelo (id_modelo, modelo) VALUES
(1, 'Sedan'),
(2, 'SUV'),
(3, 'Hatch'),
(4, 'Picape'),
(5, 'Conversível'),
(6, 'Coupé'),
(7, 'Minivan'),
(8, 'Crossover'),
(9, 'Wagon'),
(10, 'Caminhão');
GO

-- Inserindo dados na tabela marca
INSERT INTO marca (id_marca, marca) VALUES
(1, 'Toyota'),
(2, 'Honda'),
(3, 'Ford'),
(4, 'Chevrolet'),
(5, 'BMW'),
(6, 'Mercedes'),
(7, 'Audi'),
(8, 'Volkswagen'),
(9, 'Nissan'),
(10, 'Hyundai');
GO

-- Inserindo dados na tabela veiculos
INSERT INTO veiculos (placa, ano, id_cor, chassi, id_modelo, id_marca) VALUES
('ABC1234', 2020, 1, '1HGCM82633A123456', 1, 1),
('XYZ5678', 2019, 2, '2HGCM82633A654321', 2, 2),
('DEF9012', 2021, 3, '3HGCM82633A789012', 3, 3),
('GHI3456', 2018, 4, '4HGCM82633A345678', 4, 4),
('JKL7890', 2022, 5, '5HGCM82633A567890', 5, 5),
('MNO4567', 2017, 6, '6HGCM82633A123987', 6, 6),
('PQR2345', 2023, 7, '7HGCM82633A456123', 7, 7),
('STU3456', 2016, 8, '8HGCM82633A789456', 8, 8),
('VWX5678', 2024, 9, '9HGCM82633A012789', 9, 9),
('YZA6789', 2015, 10, '0HGCM82633A345012', 10, 10);
GO

Todos os INSERTS com 10 itens sendo adicionado

gustavoniero commented 2 weeks ago

Alterar o modelo para nome do carro.

edrikfsteiner commented 2 weeks ago

Scripts atualizados, seguindo a finalização do modelo físico. Os novos dados de insert têm de ser atualizados ainda, porém.

CREATE TABLE cliente ( cd_cliente INT PRIMARY KEY, nm_cliente VARCHAR(200), telefone INT, email VARCHAR(200), cpf INT );

CREATE TABLE endereco ( cd_cliente INT, uf CHAR(2), cep CHAR(8), cidade VARCHAR(100), bairro VARCHAR(50), rua VARCHAR(200), numero INT, FOREIGN KEY (cd_cliente) REFERENCES cliente(cd_cliente) );

CREATE TABLE veiculos ( placa CHAR(7) PRIMARY KEY, ano DATE, cor INT, modelo INT, FOREIGN KEY (cor) REFERENCES cor(id_cor), FOREIGN KEY (modelo) REFERENCES modelo(id_modelo) );

CREATE TABLE aluguel ( id_aluguel INT PRIMARY KEY, cd_cliente INT, placa CHAR(7), data_inicio DATETIME, data_fim DATETIME, valor DECIMAL(11,2), FOREIGN KEY (cd_cliente) REFERENCES cliente(cd_cliente), FOREIGN KEY (placa) REFERENCES veiculos(placa) );

CREATE TABLE pagamento ( id_aluguel INT, cd_forma_pagamento INT, valor DECIMAL(11,2), FOREIGN KEY (id_aluguel) REFERENCES aluguel(id_aluguel), FOREIGN KEY (cd_forma_pagamento) REFERENCES forma_pagamento(cd_forma_pagamento) );

CREATE TABLE forma_pagamento ( cd_forma_pagamento INT PRIMARY KEY, tipo_pagamento VARCHAR(20) );

CREATE TABLE cor ( id_cor INT PRIMARY KEY, cor VARCHAR(20) );

CREATE TABLE modelo ( id_modelo INT PRIMARY KEY, modelo VARCHAR(20), marca VARCHAR(20), FOREIGN KEY (marca) REFERENCES marca(id_marca) );

CREATE TABLE marca ( id_marca INT PRIMARY KEY, marca VARCHAR(20) );

arturoburigo commented 2 weeks ago

@BezerraLuiz consegue mandar os novos scripts de populacao de dados?

BezerraLuiz commented 2 weeks ago

Segue abaixo os scripts atualizados da população de dados das tabelas (inserts com 10)

INSERT INTO marca (id_marca, marca) VALUES (1, 'Ford'), (2, 'Chevrolet'), (3, 'Toyota'), (4, 'Honda'), (5, 'BMW'), (6, 'Mercedes-Benz'), (7, 'Volkswagen'), (8, 'Nissan'), (9, 'Hyundai'), (10, 'Kia');

INSERT INTO cor (id_cor, cor) VALUES (1, 'Preto'), (2, 'Branco'), (3, 'Vermelho'), (4, 'Azul'), (5, 'Prata'), (6, 'Cinza'), (7, 'Verde'), (8, 'Amarelo'), (9, 'Laranja'), (10, 'Marrom');

INSERT INTO forma_pagamento (cd_forma_pagamento, tipo_pagamento) VALUES (1, 'Cartão de Crédito'), (2, 'Cartão de Débito'), (3, 'Dinheiro'), (4, 'Pix'), (5, 'Boleto'), (6, 'Transferência Bancária'), (7, 'Cheque'), (8, 'Vale-aluguel'), (9, 'Paypal'), (10, 'Criptomoeda');

INSERT INTO modelo (id_modelo, modelo, marca) VALUES (1, 'Fiesta', 1), (2, 'Onix', 2), (3, 'Corolla', 3), (4, 'Civic', 4), (5, 'X5', 5), (6, 'C-Class', 6), (7, 'Golf', 7), (8, 'Sentra', 8), (9, 'Elantra', 9), (10, 'Sportage', 10);

INSERT INTO cliente (cd_cliente, nm_cliente, telefone, email, cpf) VALUES (1, 'João Silva', 11987654321, 'joao.silva@example.com', 12345678901), (2, 'Maria Santos', 21987654321, 'maria.santos@example.com', 12345678902), (3, 'Pedro Oliveira', 31987654321, 'pedro.oliveira@example.com', 12345678903), (4, 'Ana Pereira', 41987654321, 'ana.pereira@example.com', 12345678904), (5, 'Lucas Costa', 51987654321, 'lucas.costa@example.com', 12345678905), (6, 'Carla Souza', 61987654321, 'carla.souza@example.com', 12345678906), (7, 'Paulo Almeida', 71987654321, 'paulo.almeida@example.com', 12345678907), (8, 'Fernanda Lima', 81987654321, 'fernanda.lima@example.com', 12345678908), (9, 'Ricardo Rocha', 91987654321, 'ricardo.rocha@example.com', 12345678909), (10, 'Juliana Ramos', 101987654321, 'juliana.ramos@example.com', 12345678910);

INSERT INTO endereco (cd_cliente, uf, cep, cidade, bairro, rua, numero) VALUES (1, 'SP', '01001000', 'São Paulo', 'Centro', 'Rua A', 100), (2, 'RJ', '20040002', 'Rio de Janeiro', 'Centro', 'Rua B', 200), (3, 'MG', '30140071', 'Belo Horizonte', 'Savassi', 'Rua C', 300), (4, 'RS', '90020003', 'Porto Alegre', 'Moinhos de Vento', 'Rua D', 400), (5, 'PR', '80020004', 'Curitiba', 'Batel', 'Rua E', 500), (6, 'SC', '88020005', 'Florianópolis', 'Centro', 'Rua F', 600), (7, 'BA', '40020006', 'Salvador', 'Pelourinho', 'Rua G', 700), (8, 'PE', '50020007', 'Recife', 'Boa Viagem', 'Rua H', 800), (9, 'CE', '60020008', 'Fortaleza', 'Meireles', 'Rua I', 900), (10, 'AM', '69020009', 'Manaus', 'Centro', 'Rua J', 1000);

INSERT INTO veiculos (placa, ano, cor, modelo) VALUES ('ABC1234', '2020-01-01', 1, 1), ('DEF5678', '2019-05-12', 2, 2), ('GHI9012', '2021-03-23', 3, 3), ('JKL3456', '2018-07-15', 4, 4), ('MNO7890', '2020-11-30', 5, 5), ('PQR1234', '2017-02-28', 6, 6), ('STU5678', '2021-09-10', 7, 7), ('VWX9012', '2019-06-25', 8, 8), ('YZA3456', '2020-10-05', 9, 9), ('BCD7890', '2018-04-14', 10, 10);

INSERT INTO aluguel (id_aluguel, cd_cliente, placa, data_inicio, data_fim, valor) VALUES (1, 1, 'ABC1234', '2023-01-10 10:00:00', '2023-01-15 10:00:00', 500.00), (2, 2, 'DEF5678', '2023-02-05 09:00:00', '2023-02-10 09:00:00', 600.00), (3, 3, 'GHI9012', '2023-03-15 11:00:00', '2023-03-20 11:00:00', 700.00), (4, 4, 'JKL3456', '2023-04-20 08:00:00', '2023-04-25 08:00:00', 800.00), (5, 5, 'MNO7890', '2023-05-25 12:00:00', '2023-05-30 12:00:00', 900.00), (6, 6, 'PQR1234', '2023-06-30 07:00:00', '2023-07-05 07:00:00', 1000.00), (7, 7, 'STU5678', '2023-07-05 06:00:00', '2023-07-10 06:00:00', 1100.00), (8, 8, 'VWX9012', '2023-08-10 05:00:00', '2023-08-15 05:00:00', 1200.00), (9, 9, 'YZA3456', '2023-09-15 04:00:00', '2023-09-20 04:00:00', 1300.00), (10, 10, 'BCD7890', '2023-10-20 03:00:00', '2023-10-25 03:00:00', 1400.00);

INSERT INTO pagamento (id_aluguel, cd_forma_pagamento, valor) VALUES (1, 1, 500.00), (2, 2, 600.00), (3, 3, 700.00), (4, 4, 800.00), (5, 5, 900.00), (6, 6, 1000.00), (7, 7, 1100.00), (8, 8, 1200.00), (9, 9, 1300.00), (10, 10, 1400.00);

arturoburigo commented 2 weeks ago

ORDEM DE CRIACAO DE TABELA

CREATE TABLE marca ( id_marca INT PRIMARY KEY, marca VARCHAR(20) );

CREATE TABLE modelo ( id_modelo INT PRIMARY KEY, modelo VARCHAR(20), id_marca INT, FOREIGN KEY (id_marca) REFERENCES marca(id_marca) );

CREATE TABLE cor ( id_cor INT PRIMARY KEY, cor VARCHAR(20) );

CREATE TABLE cliente ( cd_cliente INT PRIMARY KEY, nm_cliente VARCHAR(200), telefone INT, email VARCHAR(200), cpf INT );

CREATE TABLE endereco ( cd_cliente INT, uf CHAR(2), cep CHAR(8), cidade VARCHAR(100), bairro VARCHAR(50), rua VARCHAR(200), numero INT, FOREIGN KEY (cd_cliente) REFERENCES cliente(cd_cliente) );

CREATE TABLE veiculos ( placa CHAR(7) PRIMARY KEY, ano DATE, id_cor INT, id_modelo INT, FOREIGN KEY (id_cor) REFERENCES cor(id_cor), FOREIGN KEY (id_modelo) REFERENCES modelo(id_modelo) );

CREATE TABLE aluguel ( id_aluguel INT PRIMARY KEY, cd_cliente INT, placa CHAR(7), data_inicio DATETIME, data_fim DATETIME, valor DECIMAL(11,2), FOREIGN KEY (cd_cliente) REFERENCES cliente(cd_cliente), FOREIGN KEY (placa) REFERENCES veiculos(placa) );

CREATE TABLE forma_pagamento ( cd_forma_pagamento INT PRIMARY KEY, tipo_pagamento VARCHAR(20) );

CREATE TABLE pagamento ( id_aluguel INT, cd_forma_pagamento INT, valor DECIMAL(11,2), FOREIGN KEY (id_aluguel) REFERENCES aluguel(id_aluguel), FOREIGN KEY (cd_forma_pagamento) REFERENCES forma_pagamento(cd_forma_pagamento) );

BezerraLuiz commented 1 week ago

SCRIPT DA CRIAÇÃO DAS TABELAS Ordem Correta

CREATE TABLE marca ( id_marca INT PRIMARY KEY, marca VARCHAR(20) );

CREATE TABLE modelo ( id_modelo INT PRIMARY KEY, modelo VARCHAR(20), id_marca INT, FOREIGN KEY (id_marca) REFERENCES marca(id_marca) );

CREATE TABLE cor ( id_cor INT PRIMARY KEY, cor VARCHAR(20) );

CREATE TABLE cliente ( cd_cliente INT PRIMARY KEY, nm_cliente VARCHAR(200), telefone BIGINT, email VARCHAR(200), cpf BIGINT );

CREATE TABLE endereco ( cd_cliente INT, uf CHAR(2), cep CHAR(8), cidade VARCHAR(100), bairro VARCHAR(50), rua VARCHAR(200), numero INT, FOREIGN KEY (cd_cliente) REFERENCES cliente(cd_cliente) );

CREATE TABLE veiculos ( placa CHAR(7) PRIMARY KEY, ano DATE, id_cor INT, id_modelo INT, FOREIGN KEY (id_cor) REFERENCES cor(id_cor), FOREIGN KEY (id_modelo) REFERENCES modelo(id_modelo) );

CREATE TABLE aluguel ( id_aluguel INT PRIMARY KEY, cd_cliente INT, placa CHAR(7), data_inicio DATETIME, data_fim DATETIME, valor DECIMAL(11,2), FOREIGN KEY (cd_cliente) REFERENCES cliente(cd_cliente), FOREIGN KEY (placa) REFERENCES veiculos(placa) );

CREATE TABLE forma_pagamento ( cd_forma_pagamento INT PRIMARY KEY, tipo_pagamento VARCHAR(20) );

CREATE TABLE pagamento ( id_aluguel INT, cd_forma_pagamento INT, valor DECIMAL(11,2), FOREIGN KEY (id_aluguel) REFERENCES aluguel(id_aluguel), FOREIGN KEY (cd_forma_pagamento) REFERENCES forma_pagamento(cd_forma_pagamento) );

BezerraLuiz commented 1 week ago

SCRIPT INSERT'S NAS TABELAS

-- Insert statements for marca INSERT INTO marca (id_marca, marca) VALUES (1, 'Ford'), (2, 'Chevrolet'), (3, 'Toyota'), (4, 'Honda'), (5, 'BMW'), (6, 'Audi'), (7, 'Mercedes'), (8, 'Volkswagen'), (9, 'Hyundai'), (10, 'Nissan');

-- Insert statements for modelo INSERT INTO modelo (id_modelo, modelo, id_marca) VALUES (1, 'Fiesta', 1), (2, 'Cruze', 2), (3, 'Corolla', 3), (4, 'Civic', 4), (5, '3 Series', 5), (6, 'A4', 6), (7, 'C-Class', 7), (8, 'Golf', 8), (9, 'Elantra', 9), (10, 'Altima', 10);

-- Insert statements for cor INSERT INTO cor (id_cor, cor) VALUES (1, 'Red'), (2, 'Blue'), (3, 'Black'), (4, 'White'), (5, 'Silver'), (6, 'Green'), (7, 'Yellow'), (8, 'Gray'), (9, 'Brown'), (10, 'Orange');

-- Insert statements for cliente INSERT INTO cliente (cd_cliente, nm_cliente, telefone, email, cpf) VALUES (1, 'John Doe', 1234567890, 'john@example.com', 11122233344), (2, 'Jane Smith', 1234567891, 'jane@example.com', 11122233345), (3, 'Robert Johnson', 1234567892, 'robert@example.com', 11122233346), (4, 'Michael Brown', 1234567893, 'michael@example.com', 11122233347), (5, 'William Jones', 1234567894, 'william@example.com', 11122233348), (6, 'David Miller', 1234567895, 'david@example.com', 11122233349), (7, 'Richard Davis', 1234567896, 'richard@example.com', 11122233350), (8, 'Joseph Wilson', 1234567897, 'joseph@example.com', 11122233351), (9, 'Charles Moore', 1234567898, 'charles@example.com', 11122233352), (10, 'Thomas Taylor', 1234567899, 'thomas@example.com', 11122233353);

-- Insert statements for endereco INSERT INTO endereco (cd_cliente, uf, cep, cidade, bairro, rua, numero) VALUES (1, 'SC', '88801000', 'Criciúma', 'Centro', 'Rua A', 100), (2, 'SC', '88704000', 'Tubarão', 'Centro', 'Rua B', 200), (3, 'SC', '88820000', 'Içara', 'Centro', 'Rua C', 300), (4, 'SC', '88790000', 'Laguna', 'Centro', 'Rua D', 400), (5, 'SC', '88900000', 'Araranguá', 'Centro', 'Rua E', 500), (6, 'SC', '88801001', 'Criciúma', 'Centro', 'Rua F', 600), (7, 'SC', '88704001', 'Tubarão', 'Centro', 'Rua G', 700), (8, 'SC', '88820001', 'Içara', 'Centro', 'Rua H', 800), (9, 'SC', '88790001', 'Laguna', 'Centro', 'Rua I', 900), (10, 'SC', '88900001', 'Araranguá', 'Centro', 'Rua J', 1000);

-- Insert statements for veiculos INSERT INTO veiculos (placa, ano, id_cor, id_modelo) VALUES ('ABC1234', '2020-01-01', 1, 1), ('DEF5678', '2019-02-01', 2, 2), ('GHI9101', '2018-03-01', 3, 3), ('JKL1121', '2021-04-01', 4, 4), ('MNO3141', '2017-05-01', 5, 5), ('PQR5161', '2016-06-01', 6, 6), ('STU7181', '2020-07-01', 7, 7), ('VWX9202', '2019-08-01', 8, 8), ('YZA1223', '2018-09-01', 9, 9), ('BCD3245', '2021-10-01', 10, 10);

-- Insert statements for aluguel INSERT INTO aluguel (id_aluguel, cd_cliente, placa, data_inicio, data_fim, valor) VALUES (1, 1, 'ABC1234', '2023-01-01 10:00:00', '2023-01-05 10:00:00', 200.00), (2, 2, 'DEF5678', '2023-02-01 11:00:00', '2023-02-06 11:00:00', 250.00), (3, 3, 'GHI9101', '2023-03-01 12:00:00', '2023-03-05 12:00:00', 220.00), (4, 4, 'JKL1121', '2023-04-01 13:00:00', '2023-04-07 13:00:00', 300.00), (5, 5, 'MNO3141', '2023-05-01 14:00:00', '2023-05-05 14:00:00', 180.00), (6, 6, 'PQR5161', '2023-06-01 15:00:00', '2023-06-06 15:00:00', 280.00), (7, 7, 'STU7181', '2023-07-01 16:00:00', '2023-07-05 16:00:00', 260.00), (8, 8, 'VWX9202', '2023-08-01 17:00:00', '2023-08-05 17:00:00', 240.00), (9, 9, 'YZA1223', '2023-09-01 18:00:00', '2023-09-06 18:00:00', 320.00), (10, 10, 'BCD3245', '2023-10-01 19:00:00', '2023-10-05 19:00:00', 210.00);

-- Insert statements para forma_pagamento INSERT INTO forma_pagamento (cd_forma_pagamento, tipo_pagamento) VALUES (1, 'Cartão de Crédito'), (2, 'Cartão de Débito'), (3, 'Dinheiro'), (4, 'Pix'), (5, 'Paypal'), (6, 'Apple Pay'), (7, 'Google Pay'), (8, 'Boleto'), (9, 'Cheque'), (10, 'Transf. Bancária');

-- Insert statements for pagamento INSERT INTO pagamento (id_aluguel, cd_forma_pagamento, valor) VALUES (1, 1, 200.00), (2, 2, 250.00), (3, 3, 220.00), (4, 4, 300.00), (5, 5, 180.00), (6, 6, 280.00), (7, 7, 260.00), (8, 8, 240.00), (9, 9, 320.00), (10, 10, 210.00);

arturoburigo commented 1 week ago

DEFINTIVA 2.0

CREATE TABLE marca ( id_marca INT AUTO_INCREMENT PRIMARY KEY, marca VARCHAR(20) );

CREATE TABLE modelo ( id_modelo INT AUTO_INCREMENT PRIMARY KEY, modelo VARCHAR(20), id_marca INT, FOREIGN KEY (id_marca) REFERENCES marca(id_marca) );

CREATE TABLE cor ( id_cor INT AUTO_INCREMENT PRIMARY KEY, cor VARCHAR(20) );

CREATE TABLE endereco ( id_endereco INT AUTO_INCREMENT PRIMARY KEY, uf CHAR(2), cep CHAR(15), cidade VARCHAR(100), bairro VARCHAR(50), rua VARCHAR(200), numero INT );

CREATE TABLE cliente ( cd_cliente INT AUTO_INCREMENT PRIMARY KEY, nm_cliente VARCHAR(200), telefone INT, email VARCHAR(200), cpf BIGINT, id_endereco INT, FOREIGN KEY (id_endereco) REFERENCES endereco(id_endereco) );

CREATE TABLE veiculos ( placa CHAR(7) PRIMARY KEY, ano DATE, id_cor INT, id_modelo INT, FOREIGN KEY (id_cor) REFERENCES cor(id_cor), FOREIGN KEY (id_modelo) REFERENCES modelo(id_modelo) );

CREATE TABLE forma_pagamento ( cd_forma_pagamento INT AUTO_INCREMENT PRIMARY KEY, tipo_pagamento VARCHAR(50) );

CREATE TABLE pagamento ( id_pagamento INT AUTO_INCREMENT PRIMARY KEY, cd_forma_pagamento INT, valor DECIMAL(11,2), FOREIGN KEY (cd_forma_pagamento) REFERENCES forma_pagamento(cd_forma_pagamento) );

CREATE TABLE aluguel ( id_aluguel INT AUTO_INCREMENT PRIMARY KEY, cd_cliente INT, placa CHAR(7), id_pagamento INT, data_inicio DATETIME, data_fim DATETIME, valor DECIMAL(11,2), FOREIGN KEY (cd_cliente) REFERENCES cliente(cd_cliente), FOREIGN KEY (placa) REFERENCES veiculos(placa), FOREIGN KEY (id_pagamento) REFERENCES pagamento(id_pagamento) );

BezerraLuiz commented 1 week ago

SCRITS DML E DDL ATUALIZADOS

CREATE TABLE marca ( id_marca INT identity PRIMARY KEY, marca VARCHAR(20) );

CREATE TABLE modelo ( id_modelo INT identity PRIMARY KEY, modelo VARCHAR(20), id_marca INT, FOREIGN KEY (id_marca) REFERENCES marca(id_marca) );

CREATE TABLE cor ( id_cor INT identity PRIMARY KEY, cor VARCHAR(20) );

CREATE TABLE endereco ( id_endereco INT identity PRIMARY KEY, uf CHAR(2), cep CHAR(15), cidade VARCHAR(100), bairro VARCHAR(50), rua VARCHAR(200), numero INT );

CREATE TABLE cliente ( cd_cliente INT identity PRIMARY KEY, nm_cliente VARCHAR(200), telefone BIGINT, email VARCHAR(200), cpf BIGINT, id_endereco INT, FOREIGN KEY (id_endereco) REFERENCES endereco(id_endereco) );

CREATE TABLE veiculos ( placa CHAR(7) PRIMARY KEY, ano DATE, id_cor INT, id_modelo INT, FOREIGN KEY (id_cor) REFERENCES cor(id_cor), FOREIGN KEY (id_modelo) REFERENCES modelo(id_modelo) );

CREATE TABLE forma_pagamento ( cd_forma_pagamento INT identity PRIMARY KEY, tipo_pagamento VARCHAR(50) );

CREATE TABLE pagamento ( id_pagamento INT identity PRIMARY KEY, cd_forma_pagamento INT, valor DECIMAL(11,2), FOREIGN KEY (cd_forma_pagamento) REFERENCES forma_pagamento(cd_forma_pagamento) );

CREATE TABLE aluguel ( id_aluguel INT identity PRIMARY KEY, cd_cliente INT, placa CHAR(7), id_pagamento INT, data_inicio DATETIME, data_fim DATETIME, valor DECIMAL(11,2), FOREIGN KEY (cd_cliente) REFERENCES cliente(cd_cliente), FOREIGN KEY (placa) REFERENCES veiculos(placa), FOREIGN KEY (id_pagamento) REFERENCES pagamento(id_pagamento) );


-- Insert statements for table marca INSERT INTO marca (marca) VALUES ('Ford'); INSERT INTO marca (marca) VALUES ('Toyota'); INSERT INTO marca (marca) VALUES ('Honda'); INSERT INTO marca (marca) VALUES ('Chevrolet'); INSERT INTO marca (marca) VALUES ('Nissan'); INSERT INTO marca (marca) VALUES ('Volkswagen'); INSERT INTO marca (marca) VALUES ('Hyundai'); INSERT INTO marca (marca) VALUES ('Kia'); INSERT INTO marca (marca) VALUES ('BMW'); INSERT INTO marca (marca) VALUES ('Mercedes-Benz');

-- Insert statements for table modelo INSERT INTO modelo (modelo, id_marca) VALUES ('Fiesta', 1); INSERT INTO modelo (modelo, id_marca) VALUES ('Corolla', 2); INSERT INTO modelo (modelo, id_marca) VALUES ('Civic', 3); INSERT INTO modelo (modelo, id_marca) VALUES ('Cruze', 4); INSERT INTO modelo (modelo, id_marca) VALUES ('Sentra', 5); INSERT INTO modelo (modelo, id_marca) VALUES ('Golf', 6); INSERT INTO modelo (modelo, id_marca) VALUES ('Elantra', 7); INSERT INTO modelo (modelo, id_marca) VALUES ('Optima', 8); INSERT INTO modelo (modelo, id_marca) VALUES ('3 Series', 9); INSERT INTO modelo (modelo, id_marca) VALUES ('C-Class', 10);

-- Insert statements for table cor INSERT INTO cor (cor) VALUES ('Vermelho'); INSERT INTO cor (cor) VALUES ('Azul'); INSERT INTO cor (cor) VALUES ('Preto'); INSERT INTO cor (cor) VALUES ('Branco'); INSERT INTO cor (cor) VALUES ('Prata'); INSERT INTO cor (cor) VALUES ('Cinza'); INSERT INTO cor (cor) VALUES ('Verde'); INSERT INTO cor (cor) VALUES ('Amarelo'); INSERT INTO cor (cor) VALUES ('Marrom'); INSERT INTO cor (cor) VALUES ('Roxo');

-- Insert statements for table endereco INSERT INTO endereco (uf, cep, cidade, bairro, rua, numero) VALUES ('SC', '88800-000', 'Criciuma', 'Centro', 'Rua A', 1); INSERT INTO endereco (uf, cep, cidade, bairro, rua, numero) VALUES ('SC', '88701-000', 'Tubarao', 'Vila Moema', 'Rua B', 2); INSERT INTO endereco (uf, cep, cidade, bairro, rua, numero) VALUES ('SC', '88790-000', 'Laguna', 'Centro', 'Rua C', 3); INSERT INTO endereco (uf, cep, cidade, bairro, rua, numero) VALUES ('SC', '88820-000', 'Icara', 'Presidente Vargas', 'Rua D', 4); INSERT INTO endereco (uf, cep, cidade, bairro, rua, numero) VALUES ('SC', '88900-000', 'Ararangua', 'Cidade Alta', 'Rua E', 5); INSERT INTO endereco (uf, cep, cidade, bairro, rua, numero) VALUES ('SC', '88801-000', 'Criciuma', 'Comerciario', 'Rua F', 6); INSERT INTO endereco (uf, cep, cidade, bairro, rua, numero) VALUES ('SC', '88702-000', 'Tubarao', 'Oficinas', 'Rua G', 7); INSERT INTO endereco (uf, cep, cidade, bairro, rua, numero) VALUES ('SC', '88791-000', 'Laguna', 'Progresso', 'Rua H', 8); INSERT INTO endereco (uf, cep, cidade, bairro, rua, numero) VALUES ('SC', '88821-000', 'Icara', 'Centro', 'Rua I', 9); INSERT INTO endereco (uf, cep, cidade, bairro, rua, numero) VALUES ('SC', '88901-000', 'Ararangua', 'Centro', 'Rua J', 10);

-- Insert statements for table cliente INSERT INTO cliente (nm_cliente, telefone, email, cpf, id_endereco) VALUES ('Joao Silva', 11987654321, 'joao.silva@example.com', 12345678901, 1); INSERT INTO cliente (nm_cliente, telefone, email, cpf, id_endereco) VALUES ('Maria Santos', 21987654321, 'maria.santos@example.com', 12345678902, 2); INSERT INTO cliente (nm_cliente, telefone, email, cpf, id_endereco) VALUES ('Pedro Costa', 31987654321, 'pedro.costa@example.com', 12345678903, 3); INSERT INTO cliente (nm_cliente, telefone, email, cpf, id_endereco) VALUES ('Ana Lima', 41987654321, 'ana.lima@example.com', 12345678904, 4); INSERT INTO cliente (nm_cliente, telefone, email, cpf, id_endereco) VALUES ('Carlos Souza', 51987654321, 'carlos.souza@example.com', 12345678905, 5); INSERT INTO cliente (nm_cliente, telefone, email, cpf, id_endereco) VALUES ('Fernanda Pereira', 61987654321, 'fernanda.pereira@example.com', 12345678906, 6); INSERT INTO cliente (nm_cliente, telefone, email, cpf, id_endereco) VALUES ('Lucas Oliveira', 71987654321, 'lucas.oliveira@example.com', 12345678907, 7); INSERT INTO cliente (nm_cliente, telefone, email, cpf, id_endereco) VALUES ('Juliana Almeida', 81987654321, 'juliana.almeida@example.com', 12345678908, 8); INSERT INTO cliente (nm_cliente, telefone, email, cpf, id_endereco) VALUES ('Rafael Fernandes', 91987654321, 'rafael.fernandes@example.com', 12345678909, 9); INSERT INTO cliente (nm_cliente, telefone, email, cpf, id_endereco) VALUES ('Patricia Gomes', 101987654321, 'patricia.gomes@example.com', 12345678910, 10);

-- Insert statements for table veiculos INSERT INTO veiculos (placa, ano, id_cor, id_modelo) VALUES ('ABC1234', '2015-01-01', 1, 1); INSERT INTO veiculos (placa, ano, id_cor, id_modelo) VALUES ('DEF5678', '2016-01-01', 2, 2); INSERT INTO veiculos (placa, ano, id_cor, id_modelo) VALUES ('GHI9012', '2017-01-01', 3, 3); INSERT INTO veiculos (placa, ano, id_cor, id_modelo) VALUES ('JKL3456', '2018-01-01', 4, 4); INSERT INTO veiculos (placa, ano, id_cor, id_modelo) VALUES ('MNO7890', '2019-01-01', 5, 5); INSERT INTO veiculos (placa, ano, id_cor, id_modelo) VALUES ('PQR2345', '2020-01-01', 6, 6); INSERT INTO veiculos (placa, ano, id_cor, id_modelo) VALUES ('STU6789', '2021-01-01', 7, 7); INSERT INTO veiculos (placa, ano, id_cor, id_modelo) VALUES ('VWX1234', '2022-01-01', 8, 8); INSERT INTO veiculos (placa, ano, id_cor, id_modelo) VALUES ('YZA5678', '2023-01-01', 9, 9); INSERT INTO veiculos (placa, ano, id_cor, id_modelo) VALUES ('BCD9012', '2024-01-01', 10, 10);

-- Insert statements for table forma_pagamento INSERT INTO forma_pagamento (tipo_pagamento) VALUES ('Cartão de Crédito'); INSERT INTO forma_pagamento (tipo_pagamento) VALUES ('Cartão de Débito'); INSERT INTO forma_pagamento (tipo_pagamento) VALUES ('Dinheiro'); INSERT INTO forma_pagamento (tipo_pagamento) VALUES ('Pix'); INSERT INTO forma_pagamento (tipo_pagamento) VALUES ('PayPal'); INSERT INTO forma_pagamento (tipo_pagamento) VALUES ('Apple Pay'); INSERT INTO forma_pagamento (tipo_pagamento) VALUES ('Google Pay'); INSERT INTO forma_pagamento (tipo_pagamento) VALUES ('Cheque'); INSERT INTO forma_pagamento (tipo_pagamento) VALUES ('Transf. Bancária'); INSERT INTO forma_pagamento (tipo_pagamento) VALUES ('Voucher');

-- Insert statements for table pagamento INSERT INTO pagamento (cd_forma_pagamento, valor) VALUES (1, 150.50); INSERT INTO pagamento (cd_forma_pagamento, valor) VALUES (2, 200.75); INSERT INTO pagamento (cd_forma_pagamento, valor) VALUES (3, 100.00); INSERT INTO pagamento (cd_forma_pagamento, valor) VALUES (4, 300.20); INSERT INTO pagamento (cd_forma_pagamento, valor) VALUES (5, 250.00); INSERT INTO pagamento (cd_forma_pagamento, valor) VALUES (6, 175.80); INSERT INTO pagamento (cd_forma_pagamento, valor) VALUES (7, 225.90); INSERT INTO pagamento (cd_forma_pagamento, valor) VALUES (8, 400.60); INSERT INTO pagamento (cd_forma_pagamento, valor) VALUES (9, 320.40); INSERT INTO pagamento (cd_forma_pagamento, valor) VALUES (10, 500.00);

-- Insert statements for table aluguel INSERT INTO aluguel (cd_cliente, placa, id_pagamento, data_inicio, data_fim, valor) VALUES (1, 'ABC1234', 1, '2023-01-01 09:00:00', '2023-01-05 09:00:00', 150.50); INSERT INTO aluguel (cd_cliente, placa, id_pagamento, data_inicio, data_fim, valor) VALUES (2, 'DEF5678', 2, '2023-02-01 09:00:00', '2023-02-07 09:00:00', 200.75); INSERT INTO aluguel (cd_cliente, placa, id_pagamento, data_inicio, data_fim, valor) VALUES (3, 'GHI9012', 3, '2023-03-01 09:00:00', '2023-03-03 09:00:00', 100.00); INSERT INTO aluguel (cd_cliente, placa, id_pagamento, data_inicio, data_fim, valor) VALUES (4, 'JKL3456', 4, '2023-04-01 09:00:00', '2023-04-10 09:00:00', 300.20); INSERT INTO aluguel (cd_cliente, placa, id_pagamento, data_inicio, data_fim, valor) VALUES (5, 'MNO7890', 5, '2023-05-01 09:00:00', '2023-05-08 09:00:00', 250.00); INSERT INTO aluguel (cd_cliente, placa, id_pagamento, data_inicio, data_fim, valor) VALUES (6, 'PQR2345', 6, '2023-06-01 09:00:00', '2023-06-05 09:00:00', 175.80); INSERT INTO aluguel (cd_cliente, placa, id_pagamento, data_inicio, data_fim, valor) VALUES (7, 'STU6789', 7, '2023-07-01 09:00:00', '2023-07-10 09:00:00', 225.90); INSERT INTO aluguel (cd_cliente, placa, id_pagamento, data_inicio, data_fim, valor) VALUES (8, 'VWX1234', 8, '2023-08-01 09:00:00', '2023-08-12 09:00:00', 400.60); INSERT INTO aluguel (cd_cliente, placa, id_pagamento, data_inicio, data_fim, valor) VALUES (9, 'YZA5678', 9, '2023-09-01 09:00:00', '2023-09-05 09:00:00', 320.40); INSERT INTO aluguel (cd_cliente, placa, id_pagamento, data_inicio, data_fim, valor) VALUES (10, 'BCD9012', 10, '2023-10-01 09:00:00', '2023-10-15 09:00:00', 500.00);