我的MySQL数据库只包含一个表,有100行和12列:ID(主键),NAME,LATITUDE,LONGITUDE,TYPE,COUNTRY,CONTINENT,DESCRIPTION_PATH,STORY_PATH,PICTURE_PATH,ICON_PATH和VIDEO_PATH。您认为将所有数据保存在一个表中还是应该将数据分布在更多表中是否可以?
答案 0 :(得分:3)
这是一个非常精细的表格设计,只要您的名称行最多只需要一个描述,一个故事,一个图片,一个图标和一个视频。
一旦你想要有人有两张照片,你就需要为照片创建另一张桌子并每行存储一张照片,每张照片都会引用你的第一张照片。
例如:
CREATE TABLE Pictures (
picture_id INT,
name_id INT,
picture_path VARCHAR(100),
PRIMARY KEY (picture_id, name_id)
FOREIGN KEY (name_id) REFERENCES Names (id)
);
当然,你要从第一张表中删除picture_path列。