Задавайте вопросы, мы ответим
Вы не зашли.
Страниц: 1
Как парвильно составлять SQL скрипт и выполнять его разбиение на запросы, если необходимо чтобы он содержал составные операторы
BEGIN
оператор;
оператор;
........
END;
Например, если нужно, чтобы при выполнении скрипта создавались процедуры, функции, события и т.д.
Нужно ли использовать DELIMITER или по-хорошему нужно чтобы при разбиении таких скриптов запросы на создание процедур и функций выделялись и без использования выражения DELIMITER?
Есть ли какой-нибудь общий стандарт выполнения таких скриптов?
Знаю, что полюзуясь mysqldump можно получить скрипт содержадщий выражения подобные
DELIMITER ;;
/*!50003 SET SESSION SQL_MODE="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" */;;
/*!50003 CREATE */ /*!50017 DEFINER=`root`@`localhost` */ /*!50003 TRIGGER `trigger2` AFTER UPDATE ON `tablename` FOR EACH ROW BEGIN
END */;;
Но вопрос в другом: является ли это общим стандартом или подходит только для mysqldump?
Неактивен
Это стандарт. Все клиентские программы позволяющие выполнять скрипты стараются его поддерживать.
Неактивен
Спасибо.
В официальной документации описания такого стандарта не нашел.
Наверное стандартным просто считается функционал mysqldump.
Неактивен
Это документировано - Defining Stored Programs
Неактивен
Страниц: 1