数据库设计案例 ---- 音乐专辑软件数据库设计

风陵南·2022-09-09 00:52·803 次阅读

数据库设计案例 ---- 音乐专辑软件数据库设计

                            ----------为这个音乐软件设计数据库----------

 

    画出数据库关系图

  

     我的设计:

复制代码
--  ============数据库设计案例==============

-- 创建专辑表
create table Music(
    id int primary key auto_increment,  -- 编号
    title varchar(32),        -- 专辑名
    alias varchar(32),  --  专辑别名
    image varchar(64),  -- 封面图片
    style varchar(8),   -- 流派(如经典、流行、民谣等)
    type varchar(4),   -- 类型(如专辑、单曲等)
    medium varchar(4),   -- 介质(如cd、黑胶、数字等)
    publish_time date,  --  发行时间
    publisher varchar(16),  --  出版者
    number tinyint,   -- 唱片数
    barcode bigint,   -- 条形码
    summary varchar(1024),   --  简介
    artist varchar(16)   -- 艺术家 
);

-- 创建曲目表
create table Song(
    id int primary key auto_increment,  -- 编号
    name varchar(32),  -- 歌曲名
    serial_number tinyint,  -- 歌曲序号
    Music_id int
);

-- 创建评论表
create table Review(
    content varchar(256),   -- 评论内容
    rating tinyint,   -- 评分(1-5)
    review_time datetime,   -- 评论时间
    User_id int,
    Music_id int
);

-- 创建用户表
create table User(
    id int primary key auto_increment, -- 编号
    username varchar(16) UNIQUE,   -- 用户名(唯一)
    image varchar(64),   -- 用户头像图片地址
    signature varchar(64),   -- 个性签名
    nickname varchar(16)   -- 昵称
);

-- 创建用户与专辑的多对多中间关联表
create table User_Music(
    id int primary key auto_increment,
    User_id int,
    Music_id int
);


-- ========  添加外键 ======

-- 专辑 与 曲目 一对多
alter table Song add constraint fk_Song_Music foreign key  (Music_id) references Music (id);

-- 用户 与 评论 一对多
alter table Review add constraint fk_Review_User foreign key (User_id) references User (id);

-- 专辑 与 评论 一对多
alter table Review add constraint fk_Review_Music foreign key (Music_id) references Music (id);

-- 用户 与 专辑 多对多
alter table User_Music add constraint fk_User_id foreign key (User_id) references User (id);
alter table User_Music add constraint fk_Music_id foreign key (Music_id) references Music (id);
复制代码

  

   模型:

  

 

posted @   风陵南  阅读(803)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示