用户,照片和照片类别,如何关联/连接这些记录/表格?

问题描述 投票:0回答:1

登录后的摄影师可以上传照片,并将其分类(人像,自然等)。如何关联这些表?

  1. 所以第一个表USERS->用于注册和登录,需要一些
    • 用户名,
    • 电子邮件,
    • 当然还有密码
    • 用户ID
  2. 第二张表-照片->
    • photoID,
    • userID,
    • categoryID?
  3. 第三张表-类别 ??

我不知道如何将类别与照片联系起来,也许第二张桌子的结构不正确?

mysql sql database database-design entity-relationship
1个回答
0
投票

您将使用四个表:userscategoriesphotos是引用表。 photos引用拍摄照片的用户的ID。然后,桥表photo_categories表示照片和类别之间的多对多关系。

这里是此架构的简化DDL:

create table users(
    user_id int primary key,
    name varchar(50),
    email varchar(50)
);

create table categories(
    category_id int primary key,
    name varchar(50)
);

create table photos(
    photo_id int primary key,
    user_id int,
    name varchar(50),
    foreign key(user_id) references users(user_id)
 );

create table photo_categories(
    photo_id int
    category_id int,
    primary key(photo_id, category_id),
    foreign key(photo_id) references photos(photo_id),
    foreign key(category_id) references categories(category_id)
);
© www.soinside.com 2019 - 2024. All rights reserved.