Как установить триггер для вставки в другую таблицу из другой схемы?
Краткое объяснение
Рассмотрение схемы "S"и схемы" 1 "до" n ".Учтите, что в схеме «S» есть таблица Users и таблица Company.Таблица пользователей имеет отношение 1: 1 к таблице Company.Каждый пользователь находится в компании.В таблице Company есть столбец "схема" (varchar (255))
В схеме "S" определены таблица Users и таблица Company.Любая другая схема должна иметь копию таблицы Users.
Однако таблица Users модифицируется только в схеме S.
Каждый раз, когда таблица Users в схеме "S" изменяется, я хочуповторить изменения в схеме 'n' ЕСЛИ и только ЕСЛИ столбец «схема» в таблице «Компания» == 'n'.
Это ограничение отличает этот вопрос от другихвопросы!
Ах да:
- Все схемы остаются в одной базе данных.
Пример
Рассмотрим таблицу У пользователей есть следующие столбцы:
Рассмотрим таблицу, в которой компания имеет следующие столбцы:
- Id - int
- схема - Varchar (255)
Когда я делаювставить в таблицу «Пользователи» схему «S»Я хочу, чтобы произошло следующее:
if User.Company.schema == "schema A"{
replicate to schema "A";
} else if User.Company.schema == "schema N"{
replicate to schema "N";
}
....
Я запутался в том, как сделать эту логику в приведенном ниже коде:
CREATE DEFINER=`root`@`localhost` TRIGGER `user_AFTER_INSERT` AFTER INSERT ON `user` FOR EACH ROW BEGIN
END