我有以下實體:住宅列表,商業列表,租賃列表和特色列表,其中包含每個用戶的特色屬性。最合乎邏輯似乎利用超/亞型的方法,創建下表:幫助Mysql數據庫設計
CREATE TABLE listings (
id ...,
listPrice ...,
...
PRIMARY KEY (id)
)
CREATE TABLE residential (
id ...
...
PRIMARY KEY (id),
FOREIGN KEY id REFERENCES listings(id)
)
CREATE TABLE featuredListings (
id ..,
userId ...,
featuredListingId ...
PRIMARY KEY (id),
FOREIGN KEY featuredListingId REFERENCES listings(id)
)
但是,當我嘗試創建住宅表時,MySQL返回錯誤「MySQL的錯誤號1005無法創建表‘住宅’(錯誤:150)「
也許我的DDL不正確。或者甚至有可能在MySQL中同時使用PK呢?如果不是,這種情況下最好的設計是什麼?
啊,沒關係。即使我指定InnoDB爲「住宅」表,我忘了將「列表」表更改爲InnoDB。現在它可以工作。 – Zhaidarbek