2015-10-24 6 views
0

Мне нужно написать триггер для моей таблицы catalog, и ее структура показана ниже. Structure of Table Catalogтриггер для обновления другой таблицы после обновления в mysql

Есть ли способ, что я могу написать триггер, так что если элемент в каталоге устанавливается из available в backordered, установите order статус delayed. В основном вам необходимо обновить таблицу order после команды обновления в таблице catalog.

Структура order таблицы:

phone, aname, config, o_time, quantity, price, status 
+0

@ChiefTwoPencils Не могли бы вы поделиться ссылками, которые будут полезны для моего дела? – python

+0

Откройте вкладку редактирования таблицы. Там вы найдете вкладку «Триггеры», которая позволит вам выбрать, куда должен идти триггер. Затем просто напишите триггер. Workbench должен получить синтаксис для вас. Когда у вас возникнет конкретный вопрос о его написании, это будут способы помочь. – ChiefTwoPencils

+0

Как этот каталог и порядок связаны? Как бы вы могли найти заказ в каталоге. – ChiefTwoPencils

ответ

1

Сделав еще несколько предположений здесь, но это не должно быть слишком много, чтобы приспособить его.

CREATE TRIGGER `catalog_AFTER_UPDATE` 
AFTER UPDATE ON `catalog` 
FOR EACH ROW 
BEGIN 
    if (old.status = 'available' and new.status = 'backordered') then 
     update _order 
     set _order.status = 'delayed' 
     where _order.aname = old.aname 
     and _order.config = old.config; 
    end if; 
END 

Это должно быть то, что вы ищете. order - ключевое слово; не уверен, что работает на вас или нет. Я, очевидно, использовал _order.

+0

Это очень полезно :) Спасибо – python

+0

Мне действительно нужно научиться добавлять 'if' и' else' в моих операциях sql – python

+1

Ну, это хороший старт @python. – ChiefTwoPencils

Смежные вопросы