1

我的 MySQL 数据库只包含一个表,有 100 行和 12 列:ID(主键)、NAME、LATITUDE、LONGITUDE、TYPE、COUNTRY、CONTINENT、DESCRIPTION_PATH、STORY_PATH、PICTURE_PATH、ICON_PATH 和 VIDEO_PATH。您认为将所有数据保存在一个表中是否可以,还是应该将数据分布在多个表中?

4

1 回答 1

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)
);

你当然会从第一个表中删除图片路径列。

于 2013-05-16T22:23:28.380 回答