数据库练习及答案-插入如下同学记录学号

上传人:董** 文档编号:270691205 上传时间:2022-03-26 格式:DOC 页数:10 大小:82KB
返回 下载 相关 举报
数据库练习及答案-插入如下同学记录学号_第1页
第1页 / 共10页
数据库练习及答案-插入如下同学记录学号_第2页
第2页 / 共10页
数据库练习及答案-插入如下同学记录学号_第3页
第3页 / 共10页
数据库练习及答案-插入如下同学记录学号_第4页
第4页 / 共10页
数据库练习及答案-插入如下同学记录学号_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《数据库练习及答案-插入如下同学记录学号》由会员分享,可在线阅读,更多相关《数据库练习及答案-插入如下同学记录学号(10页珍藏版)》请在金锄头文库上搜索。

1、.一. 创建一个学生档案表(表名为xsda),其表结构如下:列名类型长度允许空备注XhChar10学号XmChar8姓名csnyDatetime出生年月GzDecimal6工资ZyChar10专业Create Table xsda(xh Char(10) not null unique,xmChar(8),csnyDatetime,gz Decimal(6,1),zy Char(10)1. 在xsda表中插入一个学生记录:(2000jsj008,李平) insert into xsda(xh,xm) values(2000jsj008,李平)2. 把xsda表中80-01-01前出生的人的工资

2、增加20%Update xsda set gz=gz*1.2 where csny 80-01-013. 查询xsda表中不同专业的人数Select zy ,count(xh) from xsda group by zy4. 假如另外还有一个学生成绩表xscj(xh,kch,kccj), xh,kch,kccj分别指学号、课程号、成绩,要求查询姓名为李平的同学的各门课程的成绩。Select kch,kccj from xsda,xscj where xsda.xh=xscj.xh and xm= 李平5. xsda、xscj表同上,查询选修了kch为Yy2的学生的xh和XmSelect xh,

3、xm from xsda,xscj where xsda.xh=xscj.xh and kch= Yy2二、使用SQL语句创建一个班级表CLASS,属性如下:CLASSNO,DEPARTNO,CLASSNAME;类型均为字符型;长度分别为8、2、20且均不允许为空。CREATE _table_ CLASS(CLASSNO _char_ (8) NOT NULL, DEPARTNO CHAR (2) NOT NULL, CLASSNAMECHAR (_20_) NOT NULL)三、有一个学生课程数据库,数据库中包括三个表:学生表:Student由学号(Sno)、姓名(Sname)、性别(Sse

4、x)、年龄(Sage)、所在系(Sdept)五个属性组成,记为:Student(Sno,Sname,Ssex,Sage,Sdept),Sno 为关键字。课程表:Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,记为: Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。 成绩表:SG由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,记为: SG(Sno,Cno,Grade) (SNO, CNO) 为关键字。用SQL语言实现下列功能:1建立学生表Student,其中学号属性不能为空,并且其值

5、是唯一的。2查考试成绩有不及格的学生的学号。精品.3将学号为05001学生的年龄改为22岁。4计算1号课程的学生平均成绩。5. 查计算机系姓赵的男同学的姓名(Sname)、性别(Ssex)、年龄(Sage)。6将一个新学生记录(学号:05020;姓名:丁莉;性别:女;年龄:17岁;所在系:计算机;)插入Student表中。1create table student (Sno char(5) primary key, Sname char(20), Ssex char(2), Sage int, Sdept char(15)2 select distinct sno from sgwhere g

6、rade 603 update student set sage=22 where sno=050014select avg(grade) from sgwhere cno=15.select sname,ssex,sage from sdudent where sdept=计算机系and sname like 赵 % and ssex =女6 insert into student values (05020, 丁莉, 女, 17, 计算机系)四、有一个学生课程数据库,数据库中包括三个表:学生表Student由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(S

7、dept)五个属性组成,记为: Student(Sno,Sname,Ssex,Sage,Sdept) ,Sno 为关键字。课程表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,记为:Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。 成绩表SG由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,记为: SG(Sno,Cno,Grade) (SNO, CNO)为关键字。用SQL语言实现下列功能:1建立学生表Student,其中学号属性不能为空,并且其值是唯一的。2向Student表增加“入

8、学时间(Scome)”列,其数据类型为日期型。精品.3查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列。4查询学习1号课程的学生最高分数、平均成绩。5查询与“李洋”在同一个系学习的学生。6将计算机系全体学生的成绩置零。7删除学号为05019的学生记录。8删除计算机系所有学生的成绩记录。 1CREATETABLE Student (Sno CHAR(5) NOT NULL UNIQUE,Sname CHAR(20),Ssex CHAR(2),Sage INT,Sdept CHAR(15)2ALTER TABLE Student ADD Scome DATETIME3 SELECT

9、 Sno, GradeFROM SGWHERE Cno=3 ORDER BY Grade DESC4 SELECT MAX(Grade), AVG(Grade)FROM SC WHERE Cno=15 SELECT Sno, Sname, SdeptFROM Student WHERE Sdept IN (SELECT Sdept FROM Student WHERE Sname=李洋)6 UPDATE SG SET Grade=0 WHERE Sno in( SELECT Sno FROM Student WHERE Sdept = 计算机系)7DELETE FROM StudentWHER

10、E Sno=050198 DELETE FROM SG WHERE Sno in( SELECT Sno FROM Student WHERE Sdept = 计算机系)精品.五、有一个学生课程数据库,数据库中包括三个表:学生表由学号、姓名、性别、年龄、所在系五个属性组成, 可记为:学生表(学号,姓名,性别,年龄,所在系) 学号为关键字。课程表由课程号、课程名、先修课号、学分四个属性组成, 可记为:课程表(课程号,课程名,先修课号,学分) 课程表为关键字。学生选课表由学号、课程号、成绩三个属性组成, 可记为: 成绩表(学号,课程号,成绩) (学号、课程号)为关键字。编写用SQL语言实现下列功能

11、的sql语句代码:1、建立一个学生表,其中学号属性不能为空,并且其值是唯一的。2、查询全体学生的详细记录。3、查询年龄在20至23岁之间的学生的姓名、系别、和年龄。4、计算1号课程的学生平均成绩。5、将计算机科学系全体学生的成绩置零。1、建立一个学生表。CREATE TABLE 学生表 (学号 CHAR(5) NOT NULL UNIQUE, 姓名CHAR(20), 性别 CHAR(2), 年龄 INT, 所在系 CHAR(15)2、查询全体学生的详细记录SELECT * FROM 学生表3、查询年龄在20至23岁之间的学生的姓名、系别、和年龄SELECT 姓名, 所在系, 年龄FROM 学生

12、表WHERE 年龄 BETWEEN 20 AND 234、计算1号课程的学生平均成绩SELECT AVG(成绩) FROM 成绩表WHERE 课程号=15、将计算机科学系全体学生的成绩置零UPDATE 成绩表 SET 成绩=0 WHERE 学号 in( SELECT 学号 FROM 学生表 WHERE Sdept =计算机科学系)现有关系数据库如下: 数据库名:学生成绩数据库学生表(班级编号,学号,姓名,性别,民族,身份证号,出生日期) 课程表(课程号,课程名,开课学期,学时) 成绩表(ID,学号,课程号,分数) 用SQL语言实现下列功能的sql语句代码:1查询学生信息表中的年龄(重复年龄只显

13、示一次)2从学生信息表和教学成绩表中查询查询学生的学号、姓名、课程名和分数3从课程表中统计第二学期的总学时。执行结果为:课程好 课程名 开课学期 学时精品. sum = 4编写一个存储过程,输入学号,从“教学成绩表视图” 显示该学生的姓名、课程名、分数。5创建一个触发器,当修改学生表中的姓名时,显示“学生姓名已被修改”。1查询学生信息表中的年龄(重复年龄只显示一次)use 教学成绩管理数据库select distinct 年龄=datediff(year,出生日期,getdate() from 学生信息表2从学生信息表和教学成绩表中查询查询学生的学号、姓名、课程名和分数use 学生成绩数据库s

14、elect 成绩表.学号,姓名,课程名,分数from 教学成绩表,学生信息表where成绩表.学号 = 学生表.学号 AND 成绩表.课程号=课程表.课程号3. 从课程表中统计第二学期的总学时。Select课程号, 课程名, 开课学期, 学时From 课程表Where开课学期=2 compute avg(学时)4编写一个存储过程,输入学号,从“教学成绩表视图” 显示该学生的姓名、课程名、分数。CREATE PROCEDURE 成绩1 xh char (6)asselect 姓名,课程名称,分数 from 教学成绩表视图where 学号=xh5创建一个触发器,当修改学生表中的姓名时,显示“学生姓名已被修改”。Create Trigger 触发

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号