20_学生选课数据库SQL语句练习题
一、 设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表(一)~表(四)所示。用SQL语句创建四个表并完成相关题目。
表1-1数据库的表结构
表(一)Student (学生表)
字段名 数据类型 可否为空 含 义
Sno Varchar2(3) 否 学号(主键)
Sname Varchar2(8) 否 学生姓名
Ssex Varchar2(2) 否 学生性别
Sbirthday Date 可 学生出生年月
SClass Varchar2(5) 可 学生所在班级
表(二)Course(课程表)
属性名 数据类型 可否为空 含 义
Cno Varchar2(5) 否 课程号(主键)
Cname Varchar(10) 否 课程名称
Tno Varchar2(3) 否 教工编号(外键)
表(三)Score(成绩表)
属性名 数据类型 可否为空 含 义
Sno Varchar2(3) 否 学号(外键)
Cno Varchar2(5) 否 课程号(外键)
Degree Number(4,1) 可 成绩
主键:Sno+ Cno
表(四)Teacher(教师表)
属性名 数据类型 可否为空 含 义
Tno Varchar2(3) 否 教工编号(主键)
Tname Varchar2(4) 否 教工姓名
Tsex Varchar2(2) 否 教工性别
Tbirthday Date 可 教工出生年月
Prof Varchar2(6) 可 职称
Depart Varchar(10) 否 教工所在部门
表1-2数据库中的数据
表(一)Student
Sno Sname Ssex Sbirthday class
108 曾华 男 1977/09/01 95033
105 匡明 男 1975/10/02 95031
107 王丽 女 1976/01/23 95033
101 李军 男 1976/02/20 95033
109 王芳 女 1975/02/10 95031
103 陆君 男 1974/06/03 95031
表(二)Course
Cno Cname Tno
3-105 计算机导论 825
3-245 操作系统 804
6-166 数字电路 856
9-888 高等数学 831
表(三)Score
Sno Cno Degree
103 3-245 86
105 3-245 75
109 3-245 68
103 3-105 92
105 3-105 88
109 3-105 76
101 3-105 64
107 3-105 91
108 3-105 78
101 6-166 85
107 6-166 79
108 6-166 81
表(四)Teacher
Tno Tname Tsex Tbirthday Prof Depart
804 李诚 男 1958/12/02 副教授 计算机系
856 张旭 男 1969/03/12 讲师 电子工程系
825 王萍 女 1972/05/05 助教 计算机系
831 刘冰 女 1977/08/14 助教 电子工程系
建表:
-- Create table
create table STUDENT
(
sno VARCHAR2(3) not null,
sname VARCHAR2(12) not null,
ssex VARCHAR2(3) not null,
sbirthday DATE,
sclass VARCHAR2(5)
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
-- Add comments to the columns
comment on column STUDENT.sno
is '学号(主键)';
comment on column STUDENT.sname
is '学生姓名';
comment on column STUDENT.ssex
is '学生性别';
comment on column STUDENT.sbirthday
is '学生生日';
comment on column STUDENT.sclass
is '学生班级';
-- Create/Recreate primary, unique and foreign key constraints
alter table STUDENT
add constraint PK_STUDENT primary key (SNO)
using index
tablespace USERS
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
-- Create table
create table COURSE
(
cno VARCHAR2(5) not null,
cname VARCHAR2(15) not null,
tno VARCHAR2(3) not null
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
-- Add comments to the columns
comment on column COURSE.cno
is '课程号(主键)';
comment on column COURSE.cname
is '课程名称';
comment on column COURSE.tno
is '教工编号(外键)';
-- Create/Recreate primary, unique and foreign key constraints
alter table COURSE
add constraint PK_COURSE primary key (CNO)
using index
tablespace USERS
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
alter table COURSE
add constraint PK_TNO foreign key (TNO)
references TEACHER (TNO);
-- Create table
create table SCORE
(
sno VARCHAR2(3) not null,
cno VARCHAR2(5) not null,
degree NUMBER(4,1)
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
-- Add comments to the columns
comment on column SCORE.sno
is '学号(外键)';
comment on column SCORE.cno
is '课程号(外键)';
comment on column SCORE.degree
is '成绩';
-- Create/Recreate primary, unique and foreign key constraints
alter table SCORE
add constraint PK_SCORE primary key (SNO, CNO)
using index
tablespace USERS
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
alter table SCORE
add constraint FK_CNO foreign key (CNO)
references COURSE (CNO);
alter table SCORE
add constraint FK_SNO foreign key (SNO)
references STUDENT (SNO);
-- Create table
create table TEACHER
(
tno VARCHAR2(3) not null,
tname VARCHAR2(6) not null,
tsex VARCHAR2(3) not null,
tbirthday DATE,
prof VARCHAR2(9),
depart VARCHAR2(15) not null
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
-- Add comments to the columns
comment on column TEACHER.tno
is '教工编号(主键)';
comment on column TEACHER.tname
is '教工姓名';
comment on column TEACHER.tsex
is '教工性别';
comment on column TEACHER.tbirthday
is '教工出生年月';
comment on column TEACHER.prof
is '职称';
comment on column TEACHER.depart
is '教工所在部门';
-- Create/Recreate primary, unique and foreign key constraints
alter table TEACHER
add constraint PA_TEACHER primary key (TNO)
using index
tablespace USERS
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
20_学生选课数据库SQL语句练习题的更多相关文章
- 20_学生选课数据库SQL语句练习题1
25.查询95033班和95031班全体学生的记录. select * from STUDENT t,SCORE s where t.sclass=95033 or t.sclass=95031 26 ...
- 学生选课数据库SQL语句练习题
一. 设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表( ...
- _学生选课数据库SQL语句练习题
1. 查询Student表中的所有记录的Sname.Ssex和Class列. select Sname,Ssex,t.sclass from STUDENT t 2. 查询教师所有的单位即不重复的De ...
- (10.09作业)学生选课数据库SQL语句练习题
- 学生选课数据库SQL语句45道练习题整理及mysql常用函数(20161019)
学生选课数据库SQL语句45道练习题: 一. 设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四 ...
- SQL Server T—SQL 学生选课数据库SQL语句考试题(45道题)
题目 设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1 ...
- 选课数据库SQL语句练习题
表(一)Student (学生表) 属性名 数据类型 可否为空 含 义 Sno varchar (20) 否 学号(主码) Sname varchar (20) 否 学生姓名 Ssex varchar ...
- 学生选课数据库MySQL语句练习题45道
1. 查询Student表中的所有记录的Sname.Ssex和Class列. select Sname,Ssex,Class from Student;2. 查询教师所有的单位即不重复的Depart列 ...
- 数据库SQL语句练习题
一. 设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表( ...
随机推荐
- WinForm笔记一:文本框只允许输入数字
在WinForm的文本框中,有时候只允许数字,而不能输入除数字以外的其他字符,要调用TextBox的KeyPress事件,代码如下: //只允许输入数字 if (e.KeyChar<'0'||e ...
- MySql 如何实现不同数据库同步【2个】
环境要求: Windows 操作系统 需要Mysql 3.23.15以后的版本. 假设数据库A为主机,数据库B为从机(A向B提供同步服务,即B中的数据来自A) A机器:IP=10.10.151.166 ...
- ES 6 : 字符串的扩展
1. 字符的Unicode表示法 JavaScript允许表示\u0000—\uFFFF之间的字符.超出这个范围,必须用2个双字节的形式表达.如:"\u20BB7"是汉字 &quo ...
- [SOJ] shortest path in unweighted graph
Description 输入一个无向图,指定一个顶点s开始bfs遍历,求出s到图中每个点的最短距离. 如果不存在s到t的路径,则记s到t的距离为-1. Input 输入的第一行包含两个整数n和m, ...
- 给go添加各种package
go version 1.1.2 For example you need to install the webscoket pakeage try go get code.goo ...
- python2与python3
一.print python2 print "hello world !" python3 print("hello world!") 二.字符编码 pyth ...
- SQL in优化将In转化为联合查询
in查询有时候会非常影响性能,最好能转化为联合查询,但有的网友说sqlserver会自动将in转化为联合查询,但我实际遇到的有时候却不是这样.所以最好还是不要用in. 我自己的例子,用in的时候耗费了 ...
- select空间提交form表单传递参数
如下, 到了 <form name="modelForm" action="/portal/defectinfo/toDefectPage?projectname= ...
- ES CPU和磁盘IO升高
问题 ES监控出现偶尔的波动,CPU和磁盘IO升高 有时候在凌晨,业务请求比较低,也没有慢查询,GC也比较正常,没有出现Full GC ES内部的merge segment会占用CPU和磁盘资源,怀疑 ...
- C++虚函数继承的bug
闲来无事想测试一下:如果在派生类中重写基类的虚函数,那么允不允许改变虚函数的访问权限,结果颠覆了三观..... 基类Base,拥有public方法test(),test()为虚函数 派生类Derive ...