-- ==========================================
-- PROJETO LOJA - ANHANGUERA
-- VERSAO COMPATIVEL COM MYCOMPILER
-- ==========================================

-- 1. TABELA ESTADO

CREATE TABLE Estado (
    ID INT NOT NULL AUTO_INCREMENT,
    Nome VARCHAR(50) NOT NULL,
    UF CHAR(2) NOT NULL,
    PRIMARY KEY (ID)
);

-- 2. TABELA MUNICIPIO

CREATE TABLE Municipio (
    ID INT NOT NULL AUTO_INCREMENT,
    Estado_ID INT NOT NULL,
    Nome VARCHAR(100) NOT NULL,
    CodIBGE INT NOT NULL,
    PRIMARY KEY (ID),
    FOREIGN KEY (Estado_ID) REFERENCES Estado(ID)
);

-- 3. TABELA CLIENTE

CREATE TABLE Cliente (
    ID INT NOT NULL AUTO_INCREMENT,
    Nome VARCHAR(100) NOT NULL,
    CPF CHAR(11) NOT NULL,
    Celular VARCHAR(20) NOT NULL,
    EndLogradouro VARCHAR(100) NOT NULL,
    EndNumero VARCHAR(10) NOT NULL,
    EndMunicipio INT NOT NULL,
    EndCEP CHAR(8),
    Municipio_ID INT NOT NULL,
    PRIMARY KEY (ID),
    FOREIGN KEY (Municipio_ID) REFERENCES Municipio(ID)
);

-- 4. TABELA CONTARECEBER

CREATE TABLE ContaReceber (
    ID INT NOT NULL AUTO_INCREMENT,
    Cliente_ID INT NOT NULL,
    FaturaVendaID INT,
    DataConta DATE NOT NULL,
    DataVencimento DATE NOT NULL,
    Valor DECIMAL(18,2) NOT NULL,
    Situacao ENUM('1','2','3') NOT NULL,
    PRIMARY KEY (ID),
    FOREIGN KEY (Cliente_ID) REFERENCES Cliente(ID)
);

-- 5. DADOS ESTADO

INSERT INTO Estado (Nome, UF) VALUES
('Rio de Janeiro', 'RJ'),
('Sao Paulo', 'SP'),
('Minas Gerais', 'MG');

-- 6. DADOS MUNICIPIO

INSERT INTO Municipio (Estado_ID, Nome, CodIBGE) VALUES
(1, 'Teresopolis', 3305802),
(2, 'Sao Paulo', 3550308),
(3, 'Belo Horizonte', 3106200);

-- 7. DADOS CLIENTE

INSERT INTO Cliente
(Nome, CPF, Celular, EndLogradouro, EndNumero,
 EndMunicipio, EndCEP, Municipio_ID)
VALUES
('Joao Silva', '12345678901', '21999990001',
 'Rua das Flores', '100', 1, '25953000', 1),

('Maria Oliveira', '98765432100', '11999990002',
 'Avenida Brasil', '200', 2, '01001000', 2),

('Carlos Santos', '11122233344', '31999990003',
 'Rua Central', '300', 3, '30130000', 3);

-- 8. DADOS CONTAS A RECEBER

INSERT INTO ContaReceber
(Cliente_ID, FaturaVendaID, DataConta,
 DataVencimento, Valor, Situacao)
VALUES
(1, 101, '2026-01-10', '2026-12-10', 1000.00, '1'),
(2, 102, '2026-01-15', '2026-12-15', 1500.00, '3'),
(3, 103, '2026-01-20', '2026-12-20', 2000.00, '1');

-- 9. VIEW DE CONTAS NAO PAGAS

CREATE VIEW ContasNaoPagas AS
SELECT
    CR.ID AS ID_Conta,
    C.Nome AS Nome_Cliente,
    C.CPF AS CPF_Cliente,
    CR.DataVencimento,
    CR.Valor
FROM ContaReceber CR
INNER JOIN Cliente C
    ON CR.Cliente_ID = C.ID
WHERE CR.Situacao = '1';

-- 10. TESTES

SELECT * FROM Estado;
SELECT * FROM Municipio;
SELECT * FROM Cliente;
SELECT * FROM ContaReceber;

-- RESULTADO DA VIEW

SELECT * FROM ContasNaoPagas;

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: