一、需求
①增加:学员信息录入系统。 信息:姓名,班级,教员,爱好
②删除:删除不在管理范围的学员
③修改:修改有误的学员信息
④查询:首先获取所有学生,根据老师、班级以及爱好筛选学员
二、数据库
-------------------------------------表格-------------------------------------------
--学生表
create table tb_student(
sid number primary key,--学生id 主键
sname varchar2(255) not null, --学生姓名
tid number not null, --老师id 外键
cid number not null, --班级id 外键
habit varchar2(255) not null --爱好
)
--老师表
create table tb_teacher(
tid number primary key,--老师id 主键
tname varchar2(255) not null --老师姓名
)
--班级表
create table tb_clazz(
cid number primary key,--班级id 主键
cname varchar2(255) not null, --班级名
tid number not null --老师id
)
----------------------------------------sql方法-----------------------------------------
--主界面显示学员数据,带分页
select * from (
select rownum r,s.sid,s.sname,t.tname,c.cname,s.habit from tb_student s,
tb_teacher t,tb_clazz c where s.tid=t.tid and s.cid=c.cid
)a where r between 1 and 10
--获取学员总数
SELECT COUNT(1) FROM TB_STUDENT
--根据id删除学员
delete from tb_student where sid=?
--查询所有老师,为下拉框赋值
select * from tb_teacher
--查询所有班级,为下拉框赋值
select * from tb_clazz
--根据老师、班级、爱好一步步筛选学生。带分页
select * from (
select rownum r,s.sid,s.sname,t.tname,c.cname,s.habit from tb_teacher t,tb_clazz c,(
select * from tb_student where tid like ? and cid like ? and habit like ? and habit like ? and habit like ? and habit like ?
)s where s.tid=t.tid and s.cid=c.cid
)a where r between ? and ?
--根据老师、班级和爱好筛选出的学生总数
select count(1) from tb_teacher t,tb_clazz c,(
select * from tb_student where tid like ? and cid like ? and habit like ? and habit like ? and habit like ? and habit like ?
)s where s.tid=t.tid and s.cid=c.cid
--增加学员
insert into tb_student values(?,?,?,?,?)
--获得学员最大id,增加学员时需要
select nvl(max(sid),0)+1 from tb_student
--根据id修改学员
update tb_student set sname=?,tid=?,cid=?,habit=? where sid=?
--注:这里为一个老师对应多个班级;一个班级只有一个教员,但是一个教员会交几个班.图解如下↓
主外键
让系统中的数据合理存在。
三、项目结构
四、页面展示—layui
1、主页面
2、增加界面
3、修改—使用了弹出层