Mysql 基于当前插入的行在另一个表中创建行

Mysql 基于当前插入的行在另一个表中创建行,mysql,database,insert,Mysql,Database,Insert,我认为有一种方法,通过不做两个INSERT语句,我们可以在另一个表上添加一行。我不知道它是否是关于CASCADEing的,但是没有根据我使用的关键字找到任何东西(可能是错误的!) 目前我有两个表,一个是用户,另一个是数据,当创建用户时,我希望在数据表中添加一行,这样我以后可以更新它data列都可以为空,它是data表上的用户id-唯一-分别位于users表的id列中 感谢所有帮助。感谢那些促使我使用触发器的家伙。我对他们一点都不熟悉! 对于本主题的后续访问者,以下是尽可能简单的触发点: DELI

我认为有一种方法,通过不做两个
INSERT
语句,我们可以在另一个表上添加一行。我不知道它是否是关于
CASCADE
ing的,但是没有根据我使用的关键字找到任何东西(可能是错误的!)

目前我有两个表,一个是
用户
,另一个是
数据
,当创建用户时,我希望在
数据
表中添加一行,这样我以后可以更新它<除了
uid
之外,code>data列都可以为空,它是
data
表上的用户id-唯一-分别位于
users
表的
id
列中


感谢所有帮助。

感谢那些促使我使用
触发器的家伙。我对他们一点都不熟悉!
对于本主题的后续访问者,以下是尽可能简单的触发点:

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

如果你是像我一样的新手,我不建议你阅读文档,但这会帮助你通过一些例子来了解更多

如果用户添加数据,请检查该行是否存在,如果不存在,请使用
uid
=
用户id
插入该行?如果该用户没有添加数据,那么您的数据库中就有一个空行…@KarelG是的,这是我想到的第一件事,但在没有更好的东西出现之前,我不喜欢混乱的事情。为什么不在
用户上使用触发器呢
?如果您使用某种层次结构,我希望helpsJPA会这样做,但我认为在幕后,这是两个插页:-(