ЕСЛИ условие в сценарии mysql - PullRequest
0 голосов
/ 28 марта 2012

Я пытаюсь написать скрипт для исправления нашей базы данных mysql.Что-то вроде этого я могу запустить:

If IsTargetVersion(1.1) 
THEN
ALTER TABLE t1 ENGINE = InnoDB;
END IF;

Самое забавное, что я обнаружил в MySql: он не поддерживает условие if в скрипте.Я не хочу создавать процедуру хранилища, вызывать ее и помещать в мой скрипт.Это выглядит глупо ...

У кого-нибудь есть лучший подход?

Спасибо

1 Ответ

1 голос
/ 28 марта 2012

Это (шаблонное) решение - просто обходной путь, который поможет вам использовать условие IF в сценариях MySQL -

SET @s = IF(IsTargetVersion(1.1), 'ALTER TABLE t1 ENGINE = InnoDB', 'DO SLEEP(0)');
PREPARE stmt1 FROM @s;
EXECUTE stmt1;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...