Создать событие MySQL с динамическим именем события - PullRequest
2 голосов
/ 04 июня 2011

Мне нужно написать хранимую процедуру, в которой нужно создать событие.Поскольку вызов хранимой процедуры зависит от инициируемого действия, другому событию необходимо присвоить другое имя.

CREATE EVENT variable
    ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 MINUTE
    DO
    Insert into dummy ('abc');

Имя переменной должно быть динамической переменной, однако mysql не позволяет мне делать это из хранимой процедуры.Как этого достичь?

1 Ответ

0 голосов
/ 04 июня 2011

Это невозможно в MySQL, это:

PREPARE stmt_name FROM CONCAT(CREATE EVENT ",@variable
    ,"ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 MINUTE "
    ,"DO Insert into dummy (test) VALUES (?);"

SET @test_parm = "abc";

EXECUTE stmt_name USING @test_parm;
DEALLOCATE PREPARE stmt_name;

Не работает, потому что вы не можете сделать это в подготовленном утверждении.

См .: http://dev.mysql.com/doc/refman/5.5/en/sql-syntax-prepared-statements.html

...