использование триггера для обновления таблицы другой базы данных на том же сервере - PullRequest
0 голосов
/ 18 октября 2018

Я пытаюсь вставить запись в db2.inventory всякий раз, когда в db1.sales происходит событие вставки с использованием триггеров.

 DROP TRIGGER IF EXISTS `insertintodb2`;
 CREATE DEFINER=`root`@`localhost`
 TRIGGER `insertintodb2` AFTER INSERT ON `sales`
 FOR EACH ROW 
 INSERT INTO `db2.dbo.inventory` (ID) VALUES (0);

это дает мне ошибку

db1.db2.dbo.inventoryне существует.

как я могу заставить эту работу.спасибо

Ответы [ 2 ]

0 голосов
/ 25 октября 2018

MySQL и MariaDB не используют синтаксис .dbo..Существует только имя базы данных (или схемы) и имя таблицы:

db2.inventory

или

`db2`.`inventory`

(Наличие или отсутствие backtics не имеет значения в this ситуация.)

0 голосов
/ 18 октября 2018

Как видите, здесь кавычки (обратная черта) используются для идентификации имен объектов, но вы должны использовать их для каждого отдельного объекта:

`db2`.`dbo`.`inventory`

или без них, если имена объектовне вводят в заблуждение:

db2.dbo.inventory
...