使用触发器更新同一服务器上的另一个数据库的表

时间:2018-10-18 09:16:48

标签: mysql triggers mariadb

每当db1.sales中有使用触发器的插入事件时,我都试图在db2.inventory中插入记录。

 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 :(得分:1)

您可以看到here引号(反引号)用于标识对象名称,但是必须在每个对象上使用它们:

libcurl.def

,或者如果对象名称没有误导性,则不使用它们:

`db2`.`dbo`.`inventory`

答案 1 :(得分:0)

MySQL和MariaDB不使用.dbo.语法。只有数据库(aka模式)名称和表名称:

db2.inventory

`db2`.`inventory`

(在这种情况下,是否存在支持者并不重要。)