我对 PHP 和 MySQL 都比较陌生,这是我的第一个问题:
我有 3 张 table 。一个作为“主表”,两个作为基本列表/类别,我可以选择它们并将它们与我的主表相关联。
表1
id name hobby color
1 Peter 1 2
2 Simon 3 2
3 Lisa 2 3
表 2 就是爱好
id name
1 Swimming
2 Football
3 Piano
与表 3 和颜色相同。
id name
1 red
2 blue
3 green
现在,我已成功将这些表与 PHPMyAdmin 进行“关联”,但我该如何执行以下操作:
我想将数据插入到第一个表中。问题是,我想在爱好或颜色中插入一个简单的数字,但在 HTML 表单中应该有与 is 相关的文本。
因此,如果我选择“green”(作为字符串),它应该将 3 插入到表 1 中。
我希望大家清楚我想要做什么。 感谢您提前提供的所有帮助。
西蒙
最佳答案
这是您要找的吗?
INSERT INTO table1(姓名、爱好、颜色)
值(value)观
(“汤姆”,
(从表 2 中选择 id,其中名称 = '游泳'),
(从 Table3 中选择 id,其中 name = 'green')
);
请注意,如果要使其正常工作,名称列必须是唯一的,否则您可能会收到“查询返回多行”错误。
此外,我会将此语句编写为存储过程,以实现安全性和额外的错误检查。
关于mysql - HTML 表单 : Insert id into related table,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26414186/