Как прописать тело тригера в миграции yii1?

В базе создан тригер, нужно перенести его в проект. Файл миграции в проекте я создал. в up я не могу понять как правильно прописать
BEGIN 
DECLARE cnt INT; 
SELECT COUNT(*) FROM phone WHERE FIO_ID = OLD. FIO_ID INTO cnt; 
IF cnt = 1 THEN 
SIGNAL SQLSTATE '45000' 
SET MESSAGE_TEXT = 'Отмена удаления'; 
END IF; 
END
  • Вопрос задан
  • 168 просмотров
Решения вопроса 1
@Ababinili Автор вопроса
$this->execute("
CREATE TRIGGER last_number_fio
BEFORE DELETE ON phone
FOR EACH ROW
BEGIN
DECLARE cnt INT;
SELECT COUNT(*) FROM phone WHERE FIO_ID = OLD. FIO_ID INTO cnt;
IF cnt = 1 THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'Отмена удаления';
END IF;
END");
короче вот конечный вариант триггера в миграции
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы