gpt4 book ai didi

mysql - 如何插入相同值的主键和外键?

转载 作者:行者123 更新时间:2023-11-29 07:27:52 25 4
gpt4 key购买 nike

我有两个表,t1是a1表的主键,t1是引用表(t1)的a2的外键

A1创建表

    CREATE TABLE `a1` (
`t1` INT(11) NOT NULL AUTO_INCREMENT,
`t2` CHAR(50) NOT NULL DEFAULT '0',
PRIMARY KEY (`t1`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=0
;

A2创建表格

CREATE TABLE `a2` (
`t1` INT(11) NULL DEFAULT NULL,
`t2` CHAR(50) NULL DEFAULT NULL,
INDEX `FK__a1` (`t1`),
CONSTRAINT `FK__a1` FOREIGN KEY (`t1`) REFERENCES `a1` (`t1`) ON UPDATE CASCADE ON DELETE CASCADE
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
;

我尝试插入如下查询

插入 a1(t2) 值 ('test1');插入 a2(t2) 值 ('test2');

查看执行结果

A1 Table
t1 │ t2
─────────
1 │ test1

A2 Table
t1 │ t2
─────────
null│ test1

为什么a2表的t1值为空?我想插入auto_increment t1(a1表)的值来插入t1(a2表)

请告诉我最好的方法!谢谢您的回答!

最佳答案

A2表的t1中有null值,因为您在A2表中的t1列的表设计中提到了NULL DEFAULT NULL

插入到 A2 表时,必须从 A1 列传递 t1 的值。

您可以使用这样的查询。我不确定。

插入 a2(t1,t2) 值(从 A1 中选择 t1 ,'test2',其中 t2='test2');

关于mysql - 如何插入相同值的主键和外键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33914051/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com