实验(2) 交互式SQL(1): 利用SQL 语句创建数据库、表及表之间关系

一、实验目的和注意事项

1、实验目的:熟悉创建数据库和数据表的 SQL 语句。

2、注意事项:每条语句要以分号(;)结束,在输入 SQL 语句时应注意中文、英文的区别。

二、例题练习(这部分不需要写在作业上)

在 MySQL-Front 的 SQL 编辑器中,仿照图片:“实验(2)-教材示例参考.jpg”完成以下操作:

1、用 SQL 语句创建数据库,名称为“School”。

2、用 SQL 语句在 school 数据库创建 3 张表:S,C,SC(参考教材 P73【例 4.1】,)

3、在上面的 3 张表中插入示例数据(参考教材 P77 图 4-3)

阅读《MySQL 入门教程》的第 4 章 MySQL 数据类型、第 6 章(6.1 创建表),第 11 章(11.1

插入数据)

三、自己完成部分 (在作业中记录创建数据库、创建表及向表中插入数据的 SQL 语句)

1、用 SQL 语句创建数据库,名称为“Test”。

2、用 SQL 语句创建 Test 中的 3 张表(见下面),同时指定主键、外键、约束等。

3、在 3 张表中插入下面的示例数据(表中未填入值表示为空)

表 1 学生表数据:表名为 Student,列名分别为(Sno, Sname, Ssex, Sbirthday, Sdep, Memo) 其

含义是(Sno:学号, Sname:姓名, Ssex:性别, Sbirthday:出生日期, Sdep:系, Memo:备注)

表1 学生表(Students)数据

学号Sno

姓名Sname

性别Ssex

出生日期Sbirthday

所在系Sdept

备注Memo

0602001

耀华

1987-05-01

计算机

优秀毕业生

0602002

佳硕

1987-03-24

计算机

爱好:音乐

0602003

纯斌

1988-07-01

计算机

0701001

王腾飞

1988-05-04

机电

爱好:音乐

0701002

林师微

1987-04-03

机电

爱好:体育

0701003

乐怡

1986-03-03

机电

0703001

李奇

1988-09-17

工商管理

表2 课程表(Courses)数据

课程号Cno

课程名Cname

先行课PreCno

学分Credit

C1

数据结构

4

C2

数据库原理

C1

4

C3

大型数据库

C2

3

C4

高尔夫

1

表3 选课表(SC)数据

学号Sno

课程号Cno

成绩Grade

0602001

C1

61

0602001

C2

72

0602001

C3

88

0602002

C1

0602002

C2

61

0701001

C1

50

0701001

C2

0701002

C3

78

0701003

C1

52

0701003

C3

87

参考代码:

  1. 用SQL语句创建数据库,名称为“StudentCourse”。

create database StudentCourse;
use studentCourse

2、用SQL语句创建StudentCourse中的3张表,同时指定主码、外码、约束等。

create table Students
(Sno char(7) primary key,
 Sname varchar(10),
 Ssex char(2) default '男',
 Sbirthday smalldatetime,
 Sdept varchar(12),
 Memo varchar(30)
);

create table Courses
(Cno varchar(4) primary key,
 Cname varchar(20),
 PreCno varchar(4),
 Credit tinyint
);

create table SC
(Sno char(7) foreign key references Students(Sno),
 Cno varchar(4) foreign key references Courses(Cno),
 Grade tinyint
);

3.在3张表中插入示例数据

select * from students
insert into students value('0602001','钟耀华','男','1987-05-01','计算机','优秀毕业生')
insert into students value('0602002','吴佳硕','女','1987-03-24','计算机','爱好:音乐')
insert into students value('0602003','吴纯斌','男','1988-07-01','计算机','null')
insert into students value('0701001','王腾飞','男','1988-05-04','机电','爱好:音乐')
insert into students value('0701002','林师微','女','1987-04-03','机电','爱好:体育')
insert into students value('0701003','李乐怡','女','1986-03-03','机电','null')
insert into students value('0703001','李奇','男','1988-09-17','工商管理','null')
select * from courses
insert into Courses values('C1','数据结构',NULL,4)
insert into Courses values('C2','数据库原理','C1',4)
insert into Courses values('C3','大型数据库','C2',3)
insert into Courses values('C4','高尔夫',NULL,1)
select * from sc
insert into SC values('0602001','C1',61)
insert into SC values('0602001','C2',72)
insert into SC values('0602001','C3',88)
insert into SC values('0602002','C1',null)
insert into SC values('0602002','C2',61)
insert into SC values('0701001','C1',50)
insert into SC values('0701001','C2',NULL)
insert into SC values('0701002','C3',78)
insert into SC values('0701003','C1',52)
insert into SC values('0701003','C3',87)

猜你喜欢

转载自blog.csdn.net/kercii/article/details/129679774