DAYNAME(CURDATE() - MySQL
Формулировка задачи:
Как можно добавить в таблицу колонку, в поля которой(при добавлении записи) записывались бы название текущего дня недели. Типа такого
select DAYNAME(CURDATE())
Решение задачи: «DAYNAME(CURDATE()»
textual
Листинг программы
CREATE TRIGGER `add_day_name` BEFORE INSERT ON `week_delivery_repo` FOR EACH ROW IF NEW.`day_name` IS NULL THEN SET NEW.`day_name` = DAYNAME(CURDATE()); END IF;
Объяснение кода листинга программы
Объяснение:
CREATE TRIGGER— команда для создания триггераBEFORE INSERT— указывает, что триггер будет выполняться перед вставкой данныхON week_delivery_repo— указывает, что триггер будет применяться к таблицеweek_delivery_repoFOR EACH ROW— указывает, что триггер будет выполняться для каждой строки, вставляемой в таблицуIF NEW.day_nameIS NULL— условие, которое проверяет, является ли значение нового поляday_nameпустымSET NEW.day_name= DAYNAME(CURDATE());— если условие истинно, то устанавливает значение поляday_nameравным текущему дню неделиEND IF;— завершает условие Таким образом, данный код создает триггерadd_day_name, который проверяет, является ли полеday_nameновой записи пустым. Если это так, то он устанавливает значение этого поля равным текущему дню недели.