我对以下问题有困难:
我有两张桌子(例如)
Table CARS:
carID | Car Make
1 | Honda
2 | Misubishu
其中carID是主键
Table MODELS
modelID | mName | carID
1 | accord | 1
其中modelID是主键,carID是外键(对于汽车)。
现在让我们说,我想插入本田思域模型表。
我会把思域车从汽车桌上拿出来
我一直在玩INSERT SELECT语句,但是我不能让它工作;我一直在做这样的事情:https://dba.stackexchange.com/questions/46410/how-do-i-insert-a-row-which-contains-a-foreign-key
这似乎正是我想要的,但是我仍然得到关于f-key的sqlexception。
谢谢!
最佳答案
如果modelID是自动递增的,则可以执行以下操作:
INSERT INTO models(mName,carID)
SELECT 'Civic',carID
FROM cars
WHERE `Car Make` = 'Honda';
sqlfiddle demo
如果modelID不是自动递增的,则还必须传递该id。
关于mysql - 插入具有外键约束的数据库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20318320/