我的问题是,我在Tarife上得到了重复的主键,所以我的问题是如何在不获得重复素数的情况下更改布局?
到db:我有一些“从,到”的路线,它们之间有一定的距离,有不同的高速公路,->高速公路,它们有2种类型--有些是平坦的-> eben或山区-> berg,你必须区分这5类,所以我得到了27条高速公路*2 typs *5级。我希望你能帮我:)我想要这个在mysql中
这里有一些桌子的图片
http://imgur.com/ZFRLgTs http://imgur.com/XiveTv9
发布于 2015-02-25 11:20:10
通过查看屏幕截图,我假设AutobahnID和typID是主键。如果是这样,则需要稍微更改Tarif表的结构。有很多方法可以做到这一点,但在这里我要做的是:
id ->是int类型的自动递增主键.
autobahn_id ->引用Autobahn表的id的外键。
typ_id ->引用Typ表的id的外键。
klasse_id ->引用Klasse表的id的外键。
外键是引用其他表中的行的理想方法。我建议阅读有关外国钥匙这里。注意,并非所有数据库引擎都支持外键,例如MyISAM。InnoDB是支持外国密钥的引擎之一。
我建议先从Tarif表中删除所有主键,然后添加这样的Foreign:
ALTER TABLE Tarif ADD CONSTRAINT FK_autobahn_id FOREIGN KEY (autobahn_id) REFERENCES Autobahn(ID) ON UPDATE CASCADE ON DELETE CASCADEhttps://stackoverflow.com/questions/28716628
复制相似问题