学生信息管理系统Oracle数据库
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
/* --备注:
学期:年份-上下学年;02上学期,09下学期,eg:2012-09,表示2012届下学年
性别:男/女
出生地:eg:广东省深圳市布吉街道办下水径村
*/
/* --创建系部表*/
create table department_tb(
dep_no_n number not null primary key, --系部编号,主键
dep_name_s varchar2(40) not null, --系部名称,eg:RJGC,(dep_name_s,term_s须唯一,即同一学期系部唯一)
term_s varchar2(7) not null, --学期
constraint dep_tb_name_term_unique unique(dep_name_s,term_s)
);
/* --创建专业表*/
create table major_tb(
major_no_n number NOT NULL PRIMARY KEY, --专业编号,主键
major_name_s varchar2(40) NOT NULL, --专业名称,eg:RJ,(term_s,dep_no_s,major_name_s须唯一,即同一学期同一系部专业唯一)
dep_no_n number not null, --系部编号,外键
term_s varchar2(7) not null, --学期
foreign key(dep_no_n) references department_tb(dep_no_n),
constraint major_tb_name_dep_term_unique unique(major_name_s,dep_no_n,term_s) );
/* --创建教师信息表*/
create table teacher_tb(
work_no_s varchar2(10) not null primary key, --工号(eg:SD000001),主键
name_s varchar2(10) not null, --姓名
sex_c char(2) not null, --性别
born_date_s varchar2(10) not null, --出身日期(eg:1980-01-01)
born_address_s varchar2(60) not null, --出生地
idcard_no_s varchar2(18) not null unique, --身份证号码,唯一
employed_date_s varchar2(10) not null --入职时间
);
/* --创建教师系部表*/
create table teacher_dep_tb(
work_no_s varchar2(10) not null primary key, --工号,主键,外键
dep_no_n number not null, --系部编号,外键
foreign key(work_no_s) references teacher_tb(work_no_s),
foreign key(dep_no_n) references department_tb(dep_no_n)
);
/* --创建班级表*/
create table class_tb(
class_no_n number not null primary key, --班级编号,主键
class_name_s varchar2(20) not null unique, --班级名称,eg:RJ12002,唯一
major_no_n number not null, --专业编号,外键
term_s varchar2(7) not null, --学期
foreign key(major_no_n) references major_tb(major_no_n)
);
/* --创建学生信息表*/
create table student_info_tb( --有待补充
stu_no_n number not null primary key, --学生编号,主键
stu_name_s varchar2(10) not null, --学生姓名
sex_c char(2) not null, --性别
born_date varchar2(10) not null, --出身日期(eg:1980-01-01)
born_address_s varchar2(60) not null, --出生地
class_no_n number not null, --班级编号,外键
term_s varchar2(7) not null, --学期
idcard_no_s varchar2(18) not null unique, --身份证号码,唯一
foreign key(class_no_n) references class_tb(class_no_n)
);
/* --创建课程表*/
create table course_tb(
course_no_n number not null primary key, --课程编号,主键
course_name_s varchar2(30) not null, --课程名称
term_s varchar2(7) not null, --学期
major_no_n number NOT NULL, --专业编号,外键
foreign key(major_no_n) references major_tb(major_no_n),
constraint course_tb_name_term_major_uni unique(course_name_s,term_s,major_no_n) );
/* --创建成绩表*/
create table grade_tb(
grade_no_n number not null primary key, --成绩序列号,主键
score_n number not null,
stu_no_n number not null, --学号,外键,(stu_no_s,course_no_s,time_tg_s必须唯一,即同一次考评成绩下同一学号同一课程成绩唯一)
course_no_n number not null, --课程号,外键
term_s varchar2(7) not null, --学期
time_tg_s varchar2(10) not null, --时间标识(标识什么时间的成绩eg:2012-01-01)
foreign key(course_no_n) references course_tb(course_no_n),
foreign key(stu_no_n) references student_info_tb(stu_no_n),
constraint grade_tb_stu_cou_time_uni unique(stu_no_n,course_no_n,time_tg_s)