作业 —— day46

练习:账号信息表,用户组,主机表,主机组

#用户表
create table user(
id int not null unique auto_increment,
username varchar(20) not null,
password varchar(50) not null,
primary key(username,password)
);

#用户组表
create table usergroup(
id int primary key auto_increment,
groupname varchar(20) not null unique
);

#主机表
create table host(
id int primary key auto_increment,
ip char(15) not null unique default '127.0.0.1'
);

#业务线表
create table business(
id int primary key auto_increment,
business varchar(20) not null unique
);

#建关系:user与usergroup

create table user2usergroup(
id int not null unique auto_increment,
user_id int not null,
group_id int not null,
primary key(user_id,group_id),
foreign key(user_id) references user(id),
foreign key(group_id) references usergroup(id)
);

#建关系:host与business
create table host2business(
id int not null unique auto_increment,
host_id int not null,
business_id int not null,
primary key(host_id,business_id),
foreign key(host_id) references host(id),
foreign key(business_id) references business(id)
);

#建关系:user与host
create table user2host(
id int not null unique auto_increment,
user_id int not null,
host_id int not null,
primary key(user_id,host_id),
foreign key(user_id) references user(id),
foreign key(host_id) references host(id)
);

练习:

# 班级表:cid	caption

create table classinfo(
	cid int primary key auto_increment,
    caption varchar(16)
);


# 学生表:sid sname gender class_id
create table studentinfo(
	sid int primary key auto_increment,
    sname varchar(8),
    gender enum('male','female'),
    class_id int,
    foreign key(class_id) references classinfo(cid) 
	on update cascade	# 同步更新
	on delete cascade	# 同步删除
);


# 老师表:tid	tname
create table teacherinfo(
	tid int primary key auto_increment,
    tname varchar(8)
);


# 课程表:cid	cname	teacher_id
create table courseinfo(
	cid int primary key auto_increment,
    cname varchar(8),
    teacher_id int,
    foreign key(teacher_id) references teacherinfo(tid) 
	on update cascade	# 同步更新
	on delete cascade	# 同步删除
);

# 成绩表:sid	student_id course_id number
create table studentinfo(
	sid int primary key auto_increment,
    student_id int,
    course_id int,
    number,
    foreign key(student_id) references studentinfo(sid) 
	on update cascade	# 同步更新
	on delete cascade	# 同步删除
    foreign key(course_id) references courseinfo(cid) 
	on update cascade	# 同步更新
	on delete cascade	# 同步删除
);
posted @ 2020-05-05 20:47  轻描丨淡写  阅读(166)  评论(0编辑  收藏  举报