Alguém pode me ajudar a ver onde estou errando na sintaxe?
DELIMITER //
CREATE PROCEDURE DATA_HORA_VENDA (‘data_insercao’ date, ‘hora’ time)
BEGIN
declare maximo = MAX(codigo_venda)from venda;
UPDATE venda SET data_insercao = CURDATE(), hora = CURTIME()
WHERE codigo_venda =maximo;
END //
DELIMITER;
Para qual banco de dados é isso?
Qual a mensagem de erro ao tentar compilar?
Salvo engano, seu declare deve ser antes do begin, e a seleção do valor máximo deve ser separada da declaração da variável maximo. Algo mais ou menos assim:
DELIMITER //
CREATE PROCEDURE DATA_HORA_VENDA ('data_insercao' date, 'hora' time)
DECLARE
maximo number;
BEGIN
select MAX(codigo_venda) into :maximo from venda;
UPDATE venda SET data_insercao = CURDATE(), hora = CURTIME()
WHERE codigo_venda =maximo;
END //
DELIMITER;
Abraço.