MySQL数据库设计-案例
数据库设计案例。
·
大家好,我是忘鱼。分享一下数据库设计(案例)
目录
一、案例
如下进行数据库设计。这是黑马上的一道练习题。
二、代码
drop table if EXISTS music;
drop table if EXISTS song;
drop table if EXISTS Review;
drop table if EXISTS user1;
CREATE TABLE music -- 专辑
(
title varchar ( 32 ),-- 专辑名,
alias varchar ( 32 ),-- 专辑别名,
image varchar ( 64 ),-- 封面图片,
style varchar ( 8 ),-- 流派(如经典、流行、民谣、电子等),
type varchar ( 4 ),-- 类型(专辑、单曲等),
med varchar ( 4 ),-- 介质( CD、黑胶、数字等),
publish_time date,-- 发行时间,
publisher varchar ( 16 ),-- 出版者,
numbertiny int,-- 唱片数,
barcodebig int,-- 条形码,
summary varchar ( 1024 ),-- 简介,
artist varchar ( 16 ),-- 艺术家,
id int primary key auto_increment-- 编号(唯一)
);
CREATE TABLE song -- 曲目
(
song_id int,
CONSTRAINT fk_song_music FOREIGN KEY (song_id) REFERENCES music(id),
name varchar(32),-- 歌曲名
serial_numbertiny int,-- 歌曲序号
id int primary key auto_increment -- 编号(唯一)
);
CREATE TABLE Review(
content varchar(256),-- 评论内容
ratingtiny int,-- 评分(1~5)
review_time datetime, -- 评论时间
music_id int,
user1_id int,
CONSTRAINT fk_review_music FOREIGN key (music_id) REFERENCES music(id),
CONSTRAINT fk_review_user1 FOREIGN key (user1_id) REFERENCES user1(id)
);
CREATE TABLE user1(
id int PRIMARY key auto_increment,
username varchar(16),#用户名(唯一)
image varchar(64),#用户头像图片地址
signature varchar(64),#个人签名,例如(万般各所是 一切皆圆满)
nickname varchar(16) #用户昵称idint用户编号(主键)
);
#一对多,多的添加外键。多对多,引入第三方表。一对一引入第三方表 UNIQUE 声明即可
三、总结
虽然很水,还是要坚持写博客。
更多推荐
已为社区贡献1条内容
所有评论(0)