-- https://www.phpmyadmin.net/
--
-- Tempo de geração: 12/05/2026 Ã s 22:21
-- Versão do servidor: 10.4.32-MariaDB
-- Versão do PHP: 8.2.12

START TRANSACTION;



--
-- Banco de dados: `provafernando`
--

DELIMITER $$
--
-- Procedimentos
--
CREATE DEFINER=`root`@`localhost` PROCEDURE `validamacfernando` (IN `$idmac` VARCHAR(17), OUT `$ativo` TINYINT)   BEGIN
select ativo into $ativo from mac
WHERE idmac=$idmac;
END$$

DELIMITER ;

-- --------------------------------------------------------

--
-- Estrutura para tabela `leiturafernando`
--

CREATE TABLE `leiturafernando` (
  `idleiturafernando` int(10) UNSIGNED NOT NULL,
  `sensorfernando_idsensorfernando` int(10) UNSIGNED NOT NULL,
  `macfernando_idmacfernando` varchar(17) NOT NULL,
  `dataleitura` date DEFAULT NULL,
  `horaleitura` time DEFAULT NULL,
  `valor` double DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Despejando dados para a tabela `leiturafernando`
--

INSERT INTO `leiturafernando` (`idleiturafernando`, `sensorfernando_idsensorfernando`, `macfernando_idmacfernando`, `dataleitura`, `horaleitura`, `valor`) VALUES
(11, 1212, 'trtr', '2026-05-12', '16:20:54', 5.5),
(1010, 6060, 'mac', '2026-05-14', '16:20:54', 5.5);

--
-- Acionadores `leiturafernando`
--
DELIMITER $$
CREATE TRIGGER `tgdeletefernando` AFTER DELETE ON `leiturafernando` FOR EACH ROW BEGIN
UPDATE macfernando
SET contador=contador-1
WHERE idmacfernando=OLD.macfernando_idmacfernando;
UPDATE sensorfernando
SET contador=contador-1
WHERE idsensorfernando=OLD.sensorfernando_idsensorfernando;

END
$$
DELIMITER ;
DELIMITER $$
CREATE TRIGGER `tginsertfernando` AFTER INSERT ON `leiturafernando` FOR EACH ROW BEGIN
UPDATE macfernando 
SET contador=contador+1 
WHERE idmacfernando=new.macfernando_idmacfernando; 
UPDATE sensorfernando
SET contador=contador+1
WHERE idsensorfernando=new.sensorfernando_idsensorfernando;
END
$$
DELIMITER ;
DELIMITER $$
CREATE TRIGGER `tgverificamacfernando` BEFORE INSERT ON `leiturafernando` FOR EACH ROW begin
CALL validamacfernando(new.macfernando_idmacfernando,@$ativo);
if @$ativo=0
then SIGNAL SQLSTATE '45000' SET
MESSAGE_TEXT = 'Placa inativa';
end if;
end
$$
DELIMITER ;

-- --------------------------------------------------------

--
-- Estrutura para tabela `macfernando`
--

CREATE TABLE `macfernando` (
  `idmacfernando` varchar(17) NOT NULL,
  `nome` varchar(45) DEFAULT NULL,
  `ativo` tinyint(1) DEFAULT 1,
  `contador` int(10) UNSIGNED DEFAULT 0,
  `limite` int(10) UNSIGNED DEFAULT 50
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Despejando dados para a tabela `macfernando`
--

INSERT INTO `macfernando` (`idmacfernando`, `nome`, `ativo`, `contador`, `limite`) VALUES
('mac', NULL, 1, 1, 50),
('trtr', NULL, 1, 1, 50);

-- --------------------------------------------------------

--
-- Estrutura para tabela `sensorfernando`
--

CREATE TABLE `sensorfernando` (
  `idsensorfernando` int(10) UNSIGNED NOT NULL,
  `nome` varchar(45) DEFAULT NULL,
  `contador` int(10) UNSIGNED DEFAULT 50
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Despejando dados para a tabela `sensorfernando`
--

INSERT INTO `sensorfernando` (`idsensorfernando`, `nome`, `contador`) VALUES
(1212, NULL, 51),
(6060, NULL, 51);

--
-- Ãndices para tabelas despejadas
--

--
-- Ãndices de tabela `leiturafernando`
--
ALTER TABLE `leiturafernando`
  ADD PRIMARY KEY (`idleiturafernando`),
  ADD KEY `leiturafernando_FKIndex1` (`macfernando_idmacfernando`),
  ADD KEY `leiturafernando_FKIndex2` (`sensorfernando_idsensorfernando`);

--
-- Ãndices de tabela `macfernando`
--
ALTER TABLE `macfernando`
  ADD PRIMARY KEY (`idmacfernando`);

--
-- Ãndices de tabela `sensorfernando`
--
ALTER TABLE `sensorfernando`
  ADD PRIMARY KEY (`idsensorfernando`);

--
-- AUTO_INCREMENT para tabelas despejadas
--

--
-- AUTO_INCREMENT de tabela `leiturafernando`
--
ALTER TABLE `leiturafernando`
  MODIFY `idleiturafernando` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1011;

--
-- AUTO_INCREMENT de tabela `sensorfernando`
--
ALTER TABLE `sensorfernando`
  MODIFY `idsensorfernando` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6061;

--
-- Restrições para tabelas despejadas
--

--
-- Restrições para tabelas `leiturafernando`
--
ALTER TABLE `leiturafernando`
  ADD CONSTRAINT `leiturafernando_ibfk_1` FOREIGN KEY (`macfernando_idmacfernando`) REFERENCES `macfernando` (`idmacfernando`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  ADD CONSTRAINT `leiturafernando_ibfk_2` FOREIGN KEY (`sensorfernando_idsensorfernando`) REFERENCES `sensorfernando` (`idsensorfernando`) ON DELETE NO ACTION ON UPDATE NO ACTION;
COMMIT;

