Задавайте вопросы, мы ответим
Вы не зашли.
Страниц: 1
Можно ли обойти такое ограничения и научиться дропать объекты с динамическими именами?
Почему собственно я не могу так делать? или это просто не доделано?
Вообще просто шантаж. А я так надеялся и верил
DROP EVENT IF EXISTS `e_second`;
DELIMITER @@@
CREATE EVENT IF NOT EXISTS `e_second`
ON SCHEDULE
EVERY 1 SECOND
COMMENT 'Saves total number of sessions then clears the table each day.'
DO
BEGIN
INSERT INTO test(txt)
SELECT now();
END;
@@@
DELIMITER ;
DROP PROCEDURE IF EXISTS `sp_delete_job`;
DELIMITER @@@
CREATE PROCEDURE `sp_delete_job`
(
Job_Name varchar(128)
)
Proc_Label:
BEGIN
SET @cmd= CONCAT('DROP EVENT IF EXISTS `',Job_Name,'` ');
PREPARE stmt FROM @cmd ;
EXECUTE stmt;
END;
@@@
DELIMITER ;
SET @CurDBName = database();
SET @JobName = CONCAT('dvftjob_', @CurDBName, '_system');
SET @JobName = 'e_second';
CALL `sp_delete_job` ( @JobName );
-- This command is not supported in the prepared statement protocol yet.
Неактивен
Это недореализация PREPARE
http://dev.mysql.com/doc/refman/5.1/en/ … ments.html
The following SQL statements can be used in prepared statements: ALTER TABLE, CALL, COMMIT, CREATE INDEX, CREATE TABLE, DELETE, DO, DROP INDEX, DROP TABLE, INSERT, RENAME TABLE, REPLACE, SELECT, SET, UPDATE, and most SHOW statements.
Напишите на bugs.mysql.com, но вряд ли они быстро пофиксят.
Неактивен
http://bugs.mysql.com/42337.
Это ссылка на поднятую проблему. Думаю, что это решат.
Неактивен
Feature request. Не думаю, что быстро...
Неактивен
Страниц: 1