数据库设计案例

mysql 文章 2022-07-20 10:06 0 全屏看文

数据库设计案例

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

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 musicVALUES	(		'我只在乎你',		'留声经典复刻版',		'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;

-EOF-