Я хочу, чтобы выбрать любое случайное значение я хочу с помощью этой процедурыпроцедура Присвоить переменной
delimiter $$
CREATE PROCEDURE randomdigit(troy INT)
BEGIN
select troy;
END$$
delimiter ;
Чтобы использовать его, я звоню call randomdigit(n);
Однако, когда я пытаюсь использовать назначая процедуру к переменная в триггере, я получаю эту ошибку
/* Ошибка SQL (1064): У вас возникла ошибка в синтаксисе SQL; проверьте руководство , соответствующее вашей версии сервера MySQL, для правильного синтаксиса для использования рядом с 'call randomdigit (1); SET the_class_id = (выберите examination_class_id из й»в строке 11 */
Это мой триггер
DELIMITER //
CREATE TRIGGER lestrigger
AFTER INSERT ON examinations
FOR EACH ROW
BEGIN
DECLARE the_last_inserted_id INT ;
DECLARE the_class_id INT;
DECLARE the_year_id INT;
DECLARE lesrandom INT;
SET the_last_inserted_id = LAST_INSERT_ID();
SET lesrandom = call randomdigit(1);
SET the_class_id = (select examination_class_id from examinations where examination_id = 1);
SET the_year_id = (select examination_class_id from examinations where examination_id = 1);
insert into examination_data (ed_cs_id,ed_examination_id) VALUES ((select cs_id from class_students where cs_class_id = 1 AND cs_year_id = 1),lesrandom);
END //
DELIMITER ;
Правильно ли назначить процедуру переменного таким образом ?.
Пожалуйста, используйте функции вместо – Akhil