数据库原理与技术实验报告.docx

上传人:b****2 文档编号:1974804 上传时间:2023-05-02 格式:DOCX 页数:37 大小:5.89MB
下载 相关 举报
数据库原理与技术实验报告.docx_第1页
第1页 / 共37页
数据库原理与技术实验报告.docx_第2页
第2页 / 共37页
数据库原理与技术实验报告.docx_第3页
第3页 / 共37页
数据库原理与技术实验报告.docx_第4页
第4页 / 共37页
数据库原理与技术实验报告.docx_第5页
第5页 / 共37页
数据库原理与技术实验报告.docx_第6页
第6页 / 共37页
数据库原理与技术实验报告.docx_第7页
第7页 / 共37页
数据库原理与技术实验报告.docx_第8页
第8页 / 共37页
数据库原理与技术实验报告.docx_第9页
第9页 / 共37页
数据库原理与技术实验报告.docx_第10页
第10页 / 共37页
数据库原理与技术实验报告.docx_第11页
第11页 / 共37页
数据库原理与技术实验报告.docx_第12页
第12页 / 共37页
数据库原理与技术实验报告.docx_第13页
第13页 / 共37页
数据库原理与技术实验报告.docx_第14页
第14页 / 共37页
数据库原理与技术实验报告.docx_第15页
第15页 / 共37页
数据库原理与技术实验报告.docx_第16页
第16页 / 共37页
数据库原理与技术实验报告.docx_第17页
第17页 / 共37页
数据库原理与技术实验报告.docx_第18页
第18页 / 共37页
数据库原理与技术实验报告.docx_第19页
第19页 / 共37页
数据库原理与技术实验报告.docx_第20页
第20页 / 共37页
亲,该文档总共37页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数据库原理与技术实验报告.docx

《数据库原理与技术实验报告.docx》由会员分享,可在线阅读,更多相关《数据库原理与技术实验报告.docx(37页珍藏版)》请在冰点文库上搜索。

数据库原理与技术实验报告.docx

数据库原理与技术实验报告

南华大学

计算机科学与技术学院

实验报告

(2011~2012学年度第二学期)

课程名称

数据库原理与技术

实验名称

数据库实验

 

姓名

谢志兴

学号

20104030342

专业

电气信息类

班级

1003班

地点

8—209

教师

刘征海

实验1认识DBMS

一、利用管理工具创建数据库、表和表间关系

(一)实验目的和注意事项

实验目的:

熟悉SQLServerManagementStudio的基本操作,进一步理解数据库、表、表间关系的概念。

注意事项:

创建数据库和数据表时应认真,如果出现错误,应相应地修改结构或删除。

(二)实验内容

(1)利用SQLServerManagementStudio创建数据库,名称为【学生选课

XXXX】。

XXXX为各位同学的学号中的最后四位

(2)在【学生选课XXXX】中建立数据表,表的定义如下所示。

学生XXXX(学号,姓名,性别,出生日期,院系名称,备注);

课程XXXX(课程号,课程名,选修课,学分);

选修XXXX(学号,课程号,分数)。

要求定义每张表的主码,为属性选择合适的数据类型,决定是否允许为空,为【性别】和【学分】属性定义默认值。

(3)定义表之间的关系。

(4)分别为表录入几行数据记录,同时练习数据的修改和删除操作。

(三)实验步骤

(1)SQLServerManagementStudio,连接数据库服务器,进入SQLServer

ManagementStudio主界面。

(2)右击【对象资源管理器】|【数据库】,选择快捷菜单中的【新建数据库】命令,弹出【新建数据库】窗口,在各属性页中设置新建数据库的属性,包括设置数据库逻辑名、所有者、文件的逻辑名、文件的物理名、文件类型、文件增长方式、文件的路径、文件组等属性,如图下所示。

(3)保存新建的数据库,该数据库的逻辑名为【学生选课XXXX】。

(4)在【对象资源管理器】中,右击【学生选课XXXX】|【表】,选择快捷菜单中的【新建表】命令,弹出表设计器对话框,新建“学生XXXX、课程XXXX、选修XXXX”3个表,如图所示。

(5)通过设计关系图,设置数据库的数据完整性。

在【对象资源管理器】中,右击【学生选课XXXX】|【数据库关系图】,选择快捷菜单中【新建数据库关系图】命令,弹出【添加表】对话框。

将这3个表添加到关系图设计器中,设置数据完整性,如图所示

(6)右击要操作的表,选择快捷菜单中的【打开表】命令,弹出表窗口。

直接在表数据窗口中对表数据进行操作,包括插入、删除、修改记录,如图所示。

(7)如果数据库和表需要修改、删除,还可以在SQLServerManagement

Studio中进行修改、删除操作。

二、利用SQL语句创建数据库、表和表间关系

(一)实验目的和注意事项

实验目的:

熟悉创建数据库和数据表的SQL语句。

注意事项:

输入SQL语句时应注意,语句中均使用西文操作符号。

(二)实验内容

在SQLServerManagementStudio中新建查询,实现以下操作。

(1)用SQL语句创建数据库,名称为“StudentCourseXXXX”。

其中XXXX为各位同学的学号中的最后四位。

(2)用SQL语句创建StudentCourseXXXX中的3张表,同时指定主码、外码、默认值等。

(3)比较“学生选课XXXX”和StudentCourseXXXX两个数据库是否一致。

(三)实验步骤

(1)选择数据库master,右击【新建查询】,或者选择系统菜单中的【文件】|【新建】|【使用当前连接查询】命令,或者单击标准工具栏中的【新建查询】按钮,即可新建一个查询窗口。

如果查询数据库不是master,则可在可用数据库下拉列表中进行选择,或用USE语句调用。

在查询窗口中输入对应的创建数据库和表的语句。

(2)创建数据库StudentCourseXXXX。

(3)创建3个表。

StudentsXXXX、CoursesXXXX、SCXXXX

(4)直接在表数据窗口中录入表数据记录。

实验一完成后,数据库结构应该和下图类似:

 

(四)实验小结

通过这个实验熟悉了SQLServerManagementStudio的基本操作,进一步理解了数据库、表、表间关系的概念。

熟悉了创建数据库和数据表的SQL语句

 

实验2交互式SQL

(1)

一、数据库单表查询

实验目的:

掌握单表查询SELECT、FROM、WHERE的用法,特别要掌握比较运算符、逻辑运算符的使用。

注意事项:

子句WHERE<条件>表示元组筛选条件;子句HAVING<条件>表示元组选择条件;子句HAVING<条件>必须和GROUPBY子句配合使用;注意输入SQL语句时均应使用西文操作符号。

实验内容:

(1)创建查询窗口,设置查询环境。

(2)单表查询。

实验步骤

1)选择要查询的数据库,右击【新建查询】,或者选择系统菜单中的【文件】|【新建】|【使用当前连接查询】命令,或者单击标准工具栏中的【新建查询】按钮,即可新建一个查询窗口。

如果查询数据库不是StudentCourseXXXX,则可在可用数据库下拉列表中进行选择,或用USE语句调用。

(2)在查询窗口中输入SELECT查询语句,对StudentCourseXXXX数据库进行查询操作。

①查询计算机系全体学生的信息

②查询姓“李”的学生的学号和姓名。

③查询课程表中先行课为空的课程名。

④查询考试成绩有不及格的学生的学号。

⑤求选修了C1课程或C2课程的学生的学号及成绩。

⑥查询全体计算机系学生的姓名及其年龄。

⑦查询计算机系在1986-1987年之间出生的学生的姓名。

⑧查询姓“李”的前两个学生的学号和姓名。

⑨查询选修了两门以上课程的学生学号与课程数。

⑩查询选修课程数大于等于2的学生的学号、平均成绩和选课门数,并按平均成绩降序排列。

二、数据库多表连接查询

实验目的和注意事项

实验目的:

理解多表查询的概念;掌握多表查询的SELECT、FROM、WHERE、JOIN子句的用法,特别要求比较内连接、外连接的结果。

注意事项:

内连接、左外连接和右外连接的含义及表达方法;注意输入SQL语句时均应使用西文操作符号。

实验内容

(1)创建查询窗口,设置查询环境。

(2)多表复杂查询。

实验步骤

新建查询窗口,选择StudentCourseXXXX为当前数据库,输入如下SELECT查询语句并执行,对数据库进行多表连接查询操作。

(1)查询选修了【数据库原理】的计算机系的学生学号和姓名。

(2)查询每一门课的间接先行课(即先行课的先行课)。

(3)查询学生的学号、姓名、选修课程的名称和成绩。

(4)查询选修了课程的学生姓名。

(5)查询所有学生的信息和所选修的课程。

(6)查询已被选修的课程的情况和所有课程的名字。

(7)列出学生所有可能的选修情况。

(8)查找计算机系的学生选修课程数大于2的学生的姓名、平均成绩和选课门数,并按平均成绩降序排列。

 

实验总结

通过这个实验掌握了单表查询select、from、where的用法,和比较运算符、逻辑运算符的使用。

理解了多表查询的概念,掌握了多表查询的select、from、where、join子句的用法。

熟练了group,orderby和聚合函数COUNT(),AVG()的操作,以及嵌套操作,连接操作的应用。

 

实验3交互式SQL

(2)

数据库嵌套查询和组合查询

实验目的和注意事项

实验目的:

掌握查询中嵌套查询和组合查询的操作方法,进一步加深对SELECT语句的理解。

注意事项:

子句的使用;注意语句的层次嵌套关系和括号的配对使用问题;注意输入SQL语句时均应使用西文操作符号。

实验内容

(1)创建查询窗口,设置查询环境。

(2)分组查询。

(3)统计查询。

(4)嵌套查询。

实验步骤

新建查询窗口,选择StudentCourseXXXX为当前数据库,输入如下SELECT查询语句并执行,对数据库进行嵌套查询和组合查询操作。

(1)统计选修了【数据库原理】课程的学生人数。

(2)查询没有选修【数据库原理】课程的学生信息。

(3)查询其他系中比计算机系学生年龄都小的学生。

(4)查询被0602001学生或0602002学生所选修的课程的课程号(用UNION组合查询与IN条件查询两种方法实现)。

(5)查询0602001学生和0602002学生同时选修的课程的课程号(用INTERSECT组合查询与EXISTS嵌套子查询两种方法实现)。

(6)查询被0602001学生选修,但没有被0602002学生所选修的课程的课程号(用EXCEPT组合查询与NOTEXISTS嵌套子查询两种方法实现)。

实验小结

通过这个实验掌握了查询中嵌套查询和组合查询的操作方法,比如exists、any、intersectunionexcept的基本用法进一步加深了对SELECT语句的理解。

实验4交互式SQL(3)

数据的更新

实验目的和注意事项

实验目的:

熟悉插入、修改和删除SQL语句的用法。

注意事项:

对于INSERT语句,要求理解默认值约束、空值约束在插入时所

起的作用。

实验内容

(1)使用INSERT语句在数据库的表中插入几行记录。

(2)使用UPDATA语句修改某个数据。

(3)使用DELETE语句删除某行记录。

实验步骤

(1)新建查询窗口,选择StudentCourseXXXX为当前数据库。

(2)在已建立StudentCourseXXXX数据库和StudentsXXXX、CoursesXXXX、SCXXXX3个表的基础上,向StudentCourseXXXX数据库中的表更新数据。

①向表StudentsXXXX中插入(0601001,赵林,男,1985-09-08,计算机)的记录。

②向SCXXXX表中添加一个学生的选课记录,学号为0601001,所选的课程号为C2。

SC表中有Sno、Cno、Grade这3个列。

这里只知道学号和课程号,不知道成绩值。

③向表StudentsXXXX中插入(0601002,张修雨,default)记录,该记录的数据中default表示默认值‘男’,其他数据表示空值。

④用CREATE语句建立表StudentBAK1XXXX,包含(与Students的Sno、Sname、Sdept相同)3个字段,然后用INSERTSELECT语句实现向StudentBAK1XXXX添加StudentsXXXX表中的计算机系学生的学号、姓名、所在系的信息。

⑤用SELECT...INTO语句实现把StudentsXXXX表中1986年后(包含1986年)出生的学生的学号、姓名存储到一个新表StudentBAK2XXXX。

⑥将姓名为【赵林】的同学的所在系改为【机电系】,爱好改为【足球】。

⑦将选修了课程名为【数据库原理】的学生成绩加5分。

⑧将StudentCourseXXXX数据库的StudentBAK1XXXX表中所有姓赵的同学删除。

⑨删除计算机系选修成绩不及格的学生选修记录

⑩将StudentCourseXXXX数据库的StudentBAK2XXXX表中的所有行删除。

 

实验总结

通过做这个实验,熟悉了插入、修改和删除SQL语句的用法,又一次强化了对SQL的操作。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2