-- Tabela Titulares

CREATE TABLE titulares (
  id int NOT NULL AUTO_INCREMENT,
  Matricula int(15) unsigned zerofill NOT NULL,
  Nome varchar(50) DEFAULT NULL,
  Endereco varchar(100) DEFAULT NULL,
  Bairro varchar(50) DEFAULT NULL,
  Cidade int NOT NULL,
  UF int NOT NULL,
  CEP char(10) DEFAULT NULL,
  Email varchar(50) DEFAULT NULL,
  Telefone char(14) DEFAULT NULL,
  Nascimento date DEFAULT NULL,
  Data_Cadastro datetime DEFAULT CURRENT_TIMESTAMP,
  Atualizado datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (id,Matricula) USING BTREE,
  KEY Matricula (Matricula) USING BTREE
);

-- Tabela dependentes

CREATE TABLE dependentes (
  id int NOT NULL AUTO_INCREMENT,
  Matricula int(15) unsigned zerofill NOT NULL,
  Nome varchar(50) DEFAULT NULL,
  Endereco varchar(100) DEFAULT NULL,
  Bairro varchar(50) DEFAULT NULL,
  Cidade int NOT NULL,
  UF int NOT NULL,
  CEP char(10) DEFAULT NULL,
  Email varchar(50) DEFAULT NULL,
  Telefone char(14) DEFAULT NULL,
  Nascimento date DEFAULT NULL,
  Data_Cadastro datetime DEFAULT CURRENT_TIMESTAMP,
  Atualizado datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (id,Matricula) USING BTREE,
  KEY FK_DEPENDENTES_TITULARES (Matricula) USING BTREE,
  CONSTRAINT FK_DEPENDENTES_TITULARES 
  	FOREIGN KEY (Matricula) REFERENCES titulares (Matricula) ON DELETE CASCADE ON UPDATE CASCADE
);


-- Tabela documentação

CREATE TABLE documentacao (
  id int NOT NULL AUTO_INCREMENT,
  Matricula int(15) unsigned zerofill NOT NULL,
  CPF char(15) NOT NULL,
  CNH char(11) NOT NULL,
  RG char(11) NOT NULL,
  Cartao char(19) NOT NULL,
  CVV2 varchar(6) DEFAULT NULL,
  Expiracao varchar(10) DEFAULT NULL,
  Data_Cadastro datetime DEFAULT CURRENT_TIMESTAMP,
  Atualizado datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (id,Matricula,CPF,CNH,RG) USING BTREE,
  KEY FK_TITULARES_DOCUMENTACAO (Matricula) USING BTREE,
  CONSTRAINT FK_TITULARES_DOCUMENTACAO 
  	FOREIGN KEY (Matricula) REFERENCES titulares (Matricula) ON DELETE CASCADE ON UPDATE CASCADE
);

-- Tabela Filmes

CREATE TABLE filmes (
  id int NOT NULL AUTO_INCREMENT,
  Situacao int DEFAULT NULL,
  Nome varchar(200) DEFAULT NULL,
  Titulo_Original varchar(200) DEFAULT NULL,
  Diretor varchar(100) DEFAULT NULL,
  Ano int DEFAULT NULL,
  Genero int DEFAULT NULL,
  Franquia varchar(30) DEFAULT NULL,
  Classificacao int DEFAULT NULL,
  Sinopse longtext,
  Pais int DEFAULT NULL,
  Oscar int DEFAULT NULL,
  Globo_de_Ouro int DEFAULT NULL,
  Data_Cadastro datetime DEFAULT CURRENT_TIMESTAMP,
  Atualizado timestamp NULL DEFAULT NULL 
  	ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (id) USING BTREE
);

-- Tabela locacoes

CREATE TABLE locacoes (
  id int(15) unsigned zerofill NOT NULL AUTO_INCREMENT,
  Matricula_Locatario int(15) unsigned zerofill NOT NULL,
  id_Filme int NOT NULL,
  Data_Pedido datetime DEFAULT CURRENT_TIMESTAMP,
  Data_Devolucao datetime DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (id) USING BTREE
);



-- Tabela apoio_cidades

CREATE TABLE apoio_cidades (
  id int NOT NULL AUTO_INCREMENT,
  Descricao varchar(50) DEFAULT NULL,
  PRIMARY KEY (id) USING BTREE
);

-- Tabela apoio_genero

CREATE TABLE apoio_genero (
  id int NOT NULL AUTO_INCREMENT,
  Genero varchar(30) DEFAULT NULL,
  PRIMARY KEY (id) USING BTREE
);


-- Tabela apoio_pais

CREATE TABLE apoio_pais (
  id int NOT NULL AUTO_INCREMENT,
  Pais varchar(30) DEFAULT NULL,
  PRIMARY KEY (id) USING BTREE
);



-- Tabela apoio_situacao

CREATE TABLE apoio_situacao (
  id int NOT NULL AUTO_INCREMENT,
  Situacao varchar(15) DEFAULT 'Disponivel',
  PRIMARY KEY (id) USING BTREE
);



-- Tabela apoio_uf

CREATE TABLE apoio_uf (
  id int NOT NULL AUTO_INCREMENT,
  UF char(2) DEFAULT NULL,
  Descricao varchar(30) DEFAULT NULL,
  PRIMARY KEY (id) USING BTREE
) ;







