百木园-与人分享,
就是让自己快乐。

数据库设计案例

数据库设计案例

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

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;

本文来自博客园,作者:Haziy,转载请注明原文链接:https://www.cnblogs.com/zhangyouren/p/16489363.html

本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。

博主的文章没有高度、深度和广度,只是凑字数。由于博主的水平不高,不足和错误之处在所难免,希望大家能够批评指出。


来源:https://www.cnblogs.com/zhangyouren/p/16489363.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » 数据库设计案例

相关推荐

  • 暂无文章