数据库创建与维护实验

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.实验一数据库创建与维护实验

1.1 实验目的

通过创建数据库、并进行相应的维护,了解并掌握Mysql数据库的创建和维护的不同方法和途径,并通过这一具体的数据库理解实际数据库所包含的各要素。

1.2 实验内容

1.数据库创建与维护

(1)创建数据库表

创建学生选课数据库中所包含的数据库表,数据库表结构如下:

学生(学号,姓名,性别,年龄,系别,班级)

课程(课程编号,课程名称,学分)

选修(学号,课程编号,学生成绩)

要求为各数据库表属性选择合适的数据类型。

列名、数据类型(长度列、精度、小数位数项)、是否允许空值等。

(2)查看和修改表结构。

选择一个数据库表,练习对其表结构进行相应的修改。

(3)练习用交互式的SQL语句分别完成以上操作。

(4)对学生数据库中的三张表分别插入数据;

(5)对表中的数据进行修改;

(6)对表中的数据进行删除操作

2.(1)建立如下视图:

学生选修课程信息视图,包括以下内容:

学生学号、姓名、所在系、选修的课程编号、课程名称、成绩

(2)修改以上视图,增加学生所在班级信息。

(3)对以上视图删除。

1.3 实验要求

1.数据库创建与维护实验则要求面向具体应用领域,利用SQL Server相关机制,创建并维护数据库系统,为后续各个实验提供前期准备

2.要求学生根据以上要求确定实验步骤,独立完成以上实验内容。并在安装和数据库运行后熟悉SQL SERVER 的各种运行管理。

3.实验完成后完成实验报告

1.4 实验环境

Windows8 pc机

Mysql配置的环境

Mysql命令行工具

Workbench可视化工具

1.5 实验步骤及结果分析

1.5.1 student数据库创建

打开命令行工具,输入密码,用use语句使用相应数据。Use student使用老师的给的数据库。在workbench中我们可以看到创建数据库的代码:

下面是输入的数据

此处我们会发现乱码问题,老师给的代码中写的是Latin,我们改成utf-8,便解决了中文乱码问题。

创建数据库语句,create table +`数据库名`(

`属性名` 属性类型约束

)

1.5.2 数据库操作---属性查询

查询表结构:即各个属性和属性的完整性约束等。(desc student)

该语句给我们展示了我们创建的数据的所有(属性名+类型+默认初始情况+约束等)信息。

1.5.3 数据库操作---数据结构修改

在老师给的默认数据库中,我发现最后一个属性classno的属性为varchar(3);但是数据库数

据中classno本来是4位数,所以导致存储时与原数据不匹配。因此,我们修改一下该属性。即:将它改为4位长度的:

alter table `student` modify `classno` varchar(4)DEFAULT NULL;

我们在数据插入操作中进行检测。

1.5.4 数据库操作—数据插入

例如,我们加入一个学生信息,以自己为例:

insert into `student` values('33333','茹兴康','男','1997/7/7 8:00','计算机','3146');

插入成功,因为插入的classno为3146 是4位的,所以说明数据库结构修改成功。

我们查询一下:

插入成功,数据库结构修改成功。

1.5.5 数据库操作---数据查询

例如:我们查询学号为30201的学生的所有信息。

采用语句结构:select+查询的属性from+要查找的表where+约束条件:

Select * from student where sno=30201;

1.5.6 数据库操作---数据修改

我们按学号为30201,即第一个数据为例,修改他的名字,

Update student set sname = ’abc’ where sno=30201;

1.5.7 数据库操作---数据删除

我们按学号为30201,即第一个数据为例:

delete from `student` where sno='30201';

因为我们已经删除了该数据,所以查询为空。

1.5.8 视图操作---视图创建

视图,用来更方便的展示某些信息,或者为了更安全的选择展示或隐藏某些信息。

我们将student表,sc表,course表连接起来创建新的视图,从而让学生信息更直观,更方便。创建视图所需语句:create view +视图名+as+查询语句。

create view view1 as

select sno,sname,dept,cno,cname,grade,classno

from student natural join sc natural join course;

我们在下面的视图查询操作中检测试图是否创建成功。

1.5.9 视图操作---视图查询

由于在上述实验中我们将第一个学生的数据删除掉了,所以我们选择查询后面的同学,

查询视图操作代码和查询表格是一样的。

代码:select * from view1 where sno=30203;(其中view1是我们创建的视图名称);

由于该同学选择了三门不同的课程,因此在进行表连接的时候,增加了该同学的元组数量,最终查询出3条结果。

1.5.10 视图操作---视图结构修改

在视图创建中,我们创建了视图的classno班级信息,现在我们删除这一属性。

使用语句:create or replace view。

Create or replace view view1 as

select sno,sname,dept,cno,cname,grade

from student natural join sc natural join course;

然后我们在查询一下view1的结构,同table操作一样,用desc语句。结果如下:

显然,view1视图结构中没有了classno属性。

1.5.11 视图操作---视图删除

最后,我们删除视图view1,采用语句drop view;

语句:drop view if exists view1;

结果:

相关文档
最新文档