数据库原理实验报告(Mysql)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验项目列表
实验一:数据库的定义实验
一、实验目的:
1、理解MySQL Server 6.0 服务器的安装过程和方法;
2、要求学生熟练掌握和使用SQL、T-SQL、SQL Server Enterpriser Manager Server 创建数据库、表、索引和修改表结构,并学会使用SQL Server Query Analyzer,接收T-SQL语句和进行结果分析。
二、实验环境:
硬件:PC机
软件:Windows操作系统、 MySQL Server 6.0 和Navicat for MySQL 9.0
三、实验内容和原理:
1、安装MySQL以及相应的GUI工具
2、用SQL命令,建立学生-课程数据库基本表:
学生Student(学号Sno,姓名Sname,年龄Sage,性别Ssex,所在系Sdept);
课程Course(课程号Cno,课程名Cname,先行课Cpno,学分Ccredit);
选课SC(学号Sno,课程号Cno,成绩Grade);
要求:
1) 用SQL命令建库、建表和建立表间联系。
2) 选择合适的数据类型。
3) 定义必要的索引、列级约束和表级约束.
四、实验步骤:
1、运行Navicat for MySQL,然后进行数据库连接,进入到GUI界面;
2、利用图形界面建立基础表:
student表的信息:
Sage smallint 6
Sdept varchar 20
course表的信息:
字段名类型长度约束条件
Cno varchar 4 非空、主键
Cname varchar 40
Cpno varchar 4 与course表中Cno关联
Ccredit smallint 6
sc表的信息:
字段名类型长度约束条件
Sno varchar 9 非空、主键、与student表中Sno
外键关联,级联删除
Cno varchar 4 非空、主键、与course表中Cno
外键关联
Grade smallint 6
(1)、连接数据库,在localhost中点击鼠标右键(如图1所示),点击“新建数据库”,在弹出的窗口中输入数据库名称(如图2所示),然后单击“确定”,就完成了数据库的建立。
图1 新建数据库图2
(2)、进入新建的数据库,在表的位置单击鼠标右击(如图3所示),点击“新建表”,分别在“栏位”中输入上表所示的字段名、类型及长度中的数据(如图4、5、6所示),在“外键”中输入对应表的约束条件(如图)。
图3 新建表图4 student表
图5 course表图6 sc表
图7 course的约束条件图8 sc的约束条件
3、利用命令方式建表:
(1)、单击“查询”,然后点击“新建查询”,在弹出的新建查询窗口中输入“CREATE DATABASE huangqiangwei”命令,建立一个名为zhz的数据库;
(2)、通过“use huangqiangwei”命令进入到huangqiangwei数据库中;
(3)、在查询编辑器窗口中分别输入命令:
建立student表:
CREATE TABLE student
(Sno varchar(10) PRIMARY KEY,
Sname varchar(20) UNIQUE,
Ssex varchar(2),
Sage SMALLINT,
Sdept varchar(20)
)
建立course表:
CREATE TABLE course
(Cno varchar(4) PRIMARY KEY,
Cname varchar(40),
Cpno varchar(4),
Ccredit SMALLINT,
FOREIGN KEY (Cpno) REFERENCES course(Cno)
)
建立sc表:
CREATE TABLE sc
(Sno varchar(10),
Cno varchar(4),
Grade SMALLINT,
PRIMARY KEY (Sno,Cno),
FOREIGN KEY (Sno) REFERENCES student(Sno)
ON DELETE CASCADE ON UPDA TE CASCADE,
FOREIGN KEY (Cno) REFERENCES course(Cno)
ON DELETE NO ACTION ON UPDA TE CASCADE
)
(4)、向student表中添加“Sentrance”列:
ALTER TABLE student ADD Sentrance DATE
(5)、将student表中“Sentrance”的类型改为varchar
ALTER TABLE student MODIFY COLUMN Sentrance varchar(4);
(6)、删除student表中的“Sentrance”列:
ALTER TABLE student DROP Sentrance;
五、实验结果
1、student表:
2、course表:
3、sc表:
4、向student表中添加Sentrance列: