2014-01-26 24 views
0

我认为有一种方法是,通过不制作两个INSERT语句,我们可以在另一个表上添加一行。我不知道这是否是关于CASCADE ing,但没有找到任何关键字(也许错了!)我用过。基于当前插入的行在另一个表中创建一行

目前我有两个表,一个是users,另一个是data,当用户创建我想在data表中的行会添加所以这样我可以在以后更新。 data列除uiduid这是data表上的用户标识表 - 唯一 - 表示尊敬地生活在id列的users表中。

任何帮助表示赞赏。

+0

如果用户添加数据,请检查该行是否存在,如果不存在,请使用'uid' ='user id'插入它?如果该用户没有添加数据,那么你的数据库中有空行... – KarelG

+0

@KarelG是的,这是第一个想到的,但我不喜欢凌乱的东西,直到有更好的东西不在那里。 – revo

+0

为什么不在'用户'上使用触发器? – Rachcha

回答

0

感谢那些引发我使用TRIGGER的家伙。我根本不熟悉他们! 这里是触发,尽可能的简单,对于这个话题后来的参观者:

DELIMITER $$ 
CREATE 
    TRIGGER `user_after_insert` AFTER INSERT 
    ON `users` 
    FOR EACH ROW BEGIN 
     INSERT INTO data (uid) VALUES (NEW.id); 
END$$ 
DELIMITER ; 

,我不建议你阅读文档,如果你是他们中的一个新手像我,但this page,这将有助于你unserstand更多的例子!

相关问题