MySQL上机实验报告七_SQL入门随笔(上机实验报告)

一.定义模式和删除模式

a.为用户定义一个模式学生—课程模式 S-T

CREATE  SCHEMA  "S-T"  AUTHORIZATION USER;

b.删除模式

DROP SCHEMA USER;

二.表的定义

a.建立一个“学生”表 Student

CREATE TABLE Student

(Sno  char(9)   PRIMARY KEY,

Sname  char(20)  UNIQUE,

Ssex      char(2),

Sage     SMALLINT,

Sdept   char(20)

)

b.建立一个“课程”表 Course

CREATE  TABLE Course(

Cno  char(4)  PRIMARY KEY,

Cname  char(40)   NOT NULL,

Cpno     char(4),

Ccredit  SMALLINT,

FOREIGN KEY (Cpno)  REFERENNCES  Course(Cno)

)

c.建立学生选课表 SC

CREATE TABLE SC(

Sno  char(9)  ,

Cno  char(4),

Grade  SMALLINT,

PRIMARY  KEY(Sno,Cno),

FOREIGN KEY (Sno) REFERENCES Student(Sno),

FOREIGN  KEY(Cno) REFERENCES Course(Cno)

)

Student表

学号

Sno

姓名

Sname

性别

Ssex

年龄

Sage

所在系

Sdept

201215121

李勇

20

CS

201215122

刘晨

19

CS

201215123

王敏

18

MA

201215125

张立

19

IS

学号

Sno

课程号

Cno

成绩

Grade

201215121

1

92

201215121

2

85

201215121

3

88

201215122

2

90

201215122

3

80

SC表

课程号

Cno

课程名

Cname

先行课

Cpno

学分

Ccredit

1

数据库

5

4

2

数学

2

3

信息系统

1

4

4

操作系统

6

3

5

数据结构

7

4

6

数据处理

2

7

PASCAL语言

6

4

Course表

二.删除基本表Student

DROP   TABLE  Student

三.修改基本表

a.向Student表中增加“入学时间”列,其数据类型为日期型。

ALTER  TABLE Student ADD S_entrance  DATE

b.将年龄的数据类型由字符型修改为整形

ALTER TABLE Student ALTER COLUMN  Sage INT

一.单表查询

1.查询全体学生的学号与姓名

SELECT Sno,Sname FROM Student

2.查询全体学生的姓名、学号、所在系

SELECT Sname,Sno,Sdept FROM Student

3.查询全体学生的详细记录

SELECT * FROM Student

4. 查全体学生的姓名及其出生年份

SELECT Sname,2019-Sage FROM  Student

5.查询全体学生的姓名、出生年份和所在的院系,要求用小写字母表示系名

SELECT Sname,2019-Sage,LOWER(Sdept)   FROM Student

6.查询选修了课程的学生学号

SELECT  DISTINCT Sno FROM  SC

7.查询计算机科学系全体学生的名单

SELECT * FROM Student

WHERE Sdept = 'CS'

8.查询所有年龄在20岁以下的学生姓名及其年龄

SELECT Sname,Sage FROM Student

WHERE  Sage<20

9.查询考试成绩有不及格的学生的学号

SELECT Sno FROM SC

WHERE  Grade<60

10.查询年龄在20~23岁(包括20岁和23岁)之间的学生的姓名、系别和年龄

SELECT Sname ,Sdept,Sage  FROM Student

待更新···

你可能感兴趣的:(MySQL上机实验报告七)