数据库设计案例

简单构建设计数据库

数据库设计案例

描述:简单构建设计数据库

数据库设计案例

数据库设计案例

sql代码实现

/*
        数据库设计案例
*/

-- 音乐表
CREATE TABLE Music (
    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),
    -- 艺术家
    id INT UNIQUE -- 编号(唯一)
);

INSERT INTO music
VALUES
    (
        '我只在乎你',
        '留声经典复刻版',
        'xxx',
        '流行',
        '专辑',
        'CD',
        '1987-01-02',
        '环球',
        1,
        2341613523,
        '邓丽君在1987年推出的唱片专辑,我只在乎你中有三首歌的歌,作者是陶粒砂,其实,陶粒砂极是邓丽君自己英文名的忠义,根据我手上的资料,邓丽君做的词并不多尿,他确曾向媒体表示最大的心愿使出一招,一脚踢的唱片。',
        '邓丽君',
        1
    );

SHOW TABLES;

SELECT
    *
FROM
    music;

-- 曲目表
create table song (
    name varchar (32),
    -- 歌曲名
    serial_number TINYINT,
    -- 歌曲序号
    id INT UNIQUE -- 编号(唯一)
);

SELECT
    *
FROM
    song;

-- 短评
CREATE TABLE review (
    id int,
    content VARCHAR (256),
    -- 评论内容
    rating TINYINT,
    -- 评分(1~5)
    review_time datetime -- 评论时间
);

drop table if exists review;

SELECT
    *
FROM
    review;

drop table if exists user;

-- 用户
CREATE TABLE USER (
    username VARCHAR (16),
    -- 用户名
    image VARCHAR (64),
    -- 用户头像图片地址
    signature VARCHAR (64),
    -- 个人签名,例如(我是灰太狼,我爱喜羊羊)
    nickname VARCHAR (16),
    -- 用户昵称
    id INT UNIQUE-- 用户编号(主键)
);

insert into user values(
'卡拉米',
'哆啦爱梦.jpg',
'我是卡拉米,我喜欢唱跳Rap,打篮球!',
'一念神魔',
1);

alter table song add constraint fk_song_music foreign key (id) references music(id); -- 曲目(多) --- 专辑(1)
alter table review add constraint fk_review_music foreign key (id) references music(id); -- 短评(多) --- 专辑(1)

-- 用户(多) --- 专辑(多)
alter table user_music_mid add constraint fk_music_id foreign key (music_id) references music(id);
alter table user_music_mid add constraint fk_user_id foreign key (user_id) references user(id);

alter table review add constraint fk_review_user foreign key (id) references user(id); -- 短评(多) --- 用户(1)

-- 删除外键
alter table user_music_mid drop FOREIGN key fk_music_id;
alter table user_music_mid drop FOREIGN key fk_user_id;

create table user_music_mid(  -- 多对多的中间表
id int,
user_id int,
music_id int
);

select * from user_music_mid;

SELECT
    *
FROM
    USER;

数据库设计案例

Original: https://www.cnblogs.com/zhangyouren/p/16489363.html
Author: Haziy
Title: 数据库设计案例

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/622543/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 安装Pycharm2022.2.1版本操作说明

    下载pycharm:https://www.jetbrains.com.cn/pycharm/download/#section=windows 我下载的是社区版”Co…

    数据库 2023年6月14日
    0196
  • 猿创征文|小而巧的API文档生成工具之smart-doc

    文章目录 smart-doc介绍 smart-doc特性 smart-doc的最佳搭档 谁在使用smart-doc smart-doc的优缺点 smart-doc和swagger区…

    数据库 2023年6月6日
    0310
  • MyBatis中模糊搜索使用like匹配带%字符时失效问题

    1.问题背景 Mybatis是我们日常项目中经常使用的框架,在项目中我们一般会使用like查询作为模糊匹配字符进行搜索匹配,下面的Mapper.xml是我们使用like在项目中进行…

    数据库 2023年6月6日
    0119
  • 第十七章 AOP编程

    1.AOP概念 AOP(Aspect Oriented Programing) 面向切面编程 = Spring动态代理开发 以切面为基本单位的程序开发,通过切面间的相互协同,相互调…

    数据库 2023年6月14日
    0118
  • CentOS 7 RabbitMQ 单机部署

    RabbitMQ版本:3.8.5 安装Erlang RabbitMQ的集群基于Erlang的分布式特性实现,所以需要先安装Erlang。 下载yum源配置脚本: curl -#LO…

    数据库 2023年6月9日
    0132
  • MySQL–数据过滤(AND、OR、IN、NOT操作符)

    MySQL允许给出多个WHERE子句。这些子句可以两种方式使用:以AND子句的方式或OR子句的方式使用。 1、组合WHERE子句 此SQL语句检索由供应商1003制造且价格小于等于…

    数据库 2023年6月16日
    0140
  • 草图?不管黑猫白猫,能把你的设计理念讲清楚才行

    我在日常工作中,经常要参加一些技术活动,或被拉去参加一些需求会或运营会,时间比较分散。 上周在参加一个代码评审时,发现程序上该复用的没有复用,却写了两份逻辑几乎相同的代码。另外,还…

    数据库 2023年6月9日
    0122
  • API开放平台网关需要做什么?

    首发于公众号:BiggerBoy欢迎关注,查看更多技术文章 怎么搭建API开放平台网关? API的全称是应用编程接口(Application Programming Interfa…

    数据库 2023年6月11日
    0135
  • Java 反射学习笔记

    反射,指在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法,对任意一个对象,都能调用它的任意一个方法。这种动态获取信息,以及动态调用对象方法的功能,叫做 Java 语言…

    数据库 2023年6月11日
    0123
  • MySQL 期末试题

    当时我们期末的其中一套卷子, 好像有两套但是我当时懒得弄第二套. 就认真把第一套整了XD 一 单项选择题1.当隔离级别设置为read committed时,可以避免 。(2分)丢失…

    数据库 2023年6月11日
    0103
  • 2022 IEEE 编程语言榜单发布!Python 又双叒叕霸榜了,学 SQL 工作更吃香!

    哈喽兄弟们! 近年来,Python 宛如一匹黑马,一骑绝尘,横扫 TIOBE、Stack Overflow 等榜单,如今在 IEEE Spectrum 发布的第九届年度顶级编程语言…

    数据库 2023年6月14日
    0141
  • 绿色安装MySQL5.7版本—-配置my.ini文件注意事项

    简述绿色安装MySQL5.7版本以及配置my.ini文件注意事项 前言 由于前段时间电脑重装,虽然很多软件不在C盘,但是由于很多注册表以及关联文件被删除,很多软件还需要重新配置甚至…

    数据库 2023年5月24日
    0150
  • 9、IDEA回退Git版本

    转载自 在工作中有时候会要求我们将以前提交的代码新开一个分支,而把之前提交的分支回退到以前某个版本 。 方法一: 1、通过IDEA查看Git历史记录,复制当前版本号。 2、 记录当…

    数据库 2023年6月6日
    0159
  • Java中的锁——锁的分类

    Java中有各种各样的锁,例如公平锁、乐观锁等等,这篇文章主要介绍一下各种锁的分类。 *公平锁/非公平锁 公平锁是指多个线程按照申请锁的顺序来获取锁。 非公平锁是指多个线程获取锁的…

    数据库 2023年6月9日
    0125
  • 版本控制gitlab

    版本控制gitlab 版本控制gitlab 什么是版本控制gitlab gitlab部署 什么是版本控制gitlab GitLab 是一个用于仓库管理系统的开源项目,使用Git作为…

    数据库 2023年6月14日
    0110
  • Sql的字符串匹配 like

    患者信息表: Patients +————–+———+ | Column Name | Type | +————–+——–…

    数据库 2023年6月14日
    0127
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球