在数据库exam.accdb中有三个数据表:学生表、课程表和成绩表,其名称和结构分别如下所示:
学生表:Student(学号CHAR(6),姓名CHAR(3),性别CHAR(2)),学号为主键;
课程表:Course(课程号CHAR(6),课程名称CHAR(10)),课程号为主键;
成绩表:Score(学号CHAR(6),课程号CHAR(6),成绩INT),学号和课程号两个字段组成主键,并通过学号字段与Student表建立关系,通过课程号字段与Course表建立关系。
按要求写出如下SQL命令。
(1)查询Student表中的所有记录。
(2)查询Student表中的所有男生的记录(性别字段值为“男”表示男生)。
(3)三表连接查询,输出所有学生的姓名、课程名称和成绩。
(4)查询Course表,输出课程名称字段中包含“程序设计”字样的记录。
(5)修改Student表的结构,将“学号”字段改为(文本,8位字符)。
(6)修改Score表的数据,将所有成绩提高2%。
(7)删除Score表中成绩为0分的记录。
(8)在Course表中插入一条新记录,数据为(“c01008”,“c语言程序设计”)。
(9)在Student表中添加字段:电话号码(文本,11位字符)。
(10)删除数据表Score。
(1)SELECT * FROM Student;或SELECT学号,姓名,性别FROM Student;
(2)SELECT * FROM Student WHERE性别='男;
(3)SELECT姓名,课程名称,成绩FROM Student,Course,ScoreWHERE Student.学号=Score.学号AND Score.课程号=Course.课程号;
(4)SELECT * FROM Course WHERE课程名称LIKE'*程序设计*';
(5)ALTER TABLE Student ALTER COLUMN学号CHAR(8);
(6)UPDATE Score SET成绩=成绩*1.02;
(7)DELETE FROM Score WHERE成绩=0;
(8)INSERT INTO Course VALUES(c01008’,'c语言程序设计);
(9)ALTER TABLE Student ADD电话号码CHAR(11);
(10)DROP TABLE Score;
根据三个表(Student,Course,Score)连接并分组查询输出所有学生的学号、姓名、平均成绩。
SELECT Student.学号,姓名,AVG(成绩)AS平均成绩FROM Student,Score WHERE Student.学号=Score.学号GROUP BY Student.学号;
在数据库exam.accdb中使用SQL语句定义一个名为“教师”的表,结构为:Teacher(教师编号CHAR(6),姓名CHAR(3),性别CHAR(1),出生日期DATE),教师编号为主键,姓名不能为空。
CREATE TABLE Teacher
(教师编号CHAR(6)PRIMARY KEY,
姓名CHAR(3)NOT NULL,
性别CHAR(1),
出生日期DATE
);