如何使用id_user作为默认插入到子user_id中?我将立即更新,无需额外选择并插入我的程序。这可能吗?
CREATE TABLE IF NOT EXISTS `users` (
`id_user` int(10) NOT NULL AUTO_INCREMENT,
`name` varchar(25) NOT NULL DEFAULT '',
PRIMARY KEY (`id_user`)
) ENGINE=InnoDB;
CREATE TABLE IF NOT EXISTS `scores` (
`user_id` INT( 10 ) NOT NULL DEFAULT '0',
`score` INT( 10 ) NOT NULL DEFAULT '0',
PRIMARY KEY (`user_id`),
CONSTRAINT FOREIGN KEY ( `user_id` ) REFERENCES `users` ( `id_user` )
ON UPDATE CASCADE
) ENGINE = INNODB;
INSERT INTO users (name) VALUES ('i am');
UPDATE scores SET score = '10' WHERE user_id = '1';
答案 0 :(得分:0)
不确定我理解这个例子。如果您刚刚插入了用户编号1,那么scores
中有user_id = 1
的记录是怎么回事?
无论如何,如果您的问题是如何将您刚插入的用户的ID 导入users
,那么您可以将子记录插入scores
,您可以运行
SELECT LAST_INSERT_ID();
第一次插入后,并将结果用于第二次插入(/ update)。