2013-02-09 96 views
0
  • 问题1:我在一台服务器上为每个网站获取多个数据库。当创建用户时,我想要将数据复制到所有数据库。与触发器sql与phpadmin好吗?触发器错误1064

  • 问题2:我错过了我的要求吗?

我的要求:

CREATE TRIGGER `wordpress_database1`.`insert_user_from_database2` AFTER INSERT ON `wordpress_database2`.`wp_users` 
FOR EACH 
ROW 
BEGIN 
INSERT INTO `wordpress_database1`.`wp_users` (
ID, 
user_login, 
user_pass, 
user_nicename, 
user_email, 
user_url, 
user_registered, 
user_activation_key, 
user_status, 
display_name 
) 
VALUES (
New.ID, New.user_login, New.user_pass, New.user_nicename, New.user_email, New.user_url, New.user_registered, New.user_activation_key, New.user_status, New.display_name 
); 
END;$$ 

我得到这个错误与phpadmin SQL:

#1435 - Trigger in wrong schema 

回答

2

您还没有结束触发,

DELIMITER $$ 
CREATE TRIGGER `wordpress_database1`.`insert_user_from_database2` 
AFTER INSERT ON `wordpress_database2`.`wp_users` 
FOR EACH 
ROW 
BEGIN 
    INSERT INTO `wordpress_database1`.`wp_users` (ID, user_login, user_pass, user_nicename, user_email, user_url, user_registered, user_activation_key, user_status, display_name) 
    VALUES (New.ID, New.user_login, New.user_pass, New.user_nicename, New.user_email, New.user_url, New.user_registered, New.user_activation_key, New.user_status, New.display_name); 
END $$ 
DELIMITER ; 
+0

我通过添加结束更正。什么但#1435 - 触发错误的模式意味着什么? – Armanoide 2013-02-09 16:37:14

+0

其实我没有尝试这个,但我想不可能允许从一个数据库访问触发器到另一个数据库(*不是很确定*) – 2013-02-09 16:38:54

+0

所以你有任何想法我怎么可以将database1的表转移到database2? – Armanoide 2013-02-09 16:46:08