实验四 数据表的排序与索引
- 格式:doc
- 大小:34.50 KB
- 文档页数:2
实验四表记录的索引、维护与统计操作一、实验题目表的高级操作二、实验课时2课时三、实验目的1、学会排序命令SORT的使用方法。
2、掌握用命令方式和菜单方式创建、打开、关闭独立索引文件和复合索引文件。
3、掌握顺序查找命令LOCA TE和索引查找命令SEEK、FIND的使用方法。
4、熟悉数据工作期窗口及其使用。
5、练习SELECT-SQL查询命令的初步使用。
三、实验内容和要求(一)实验内容:1、排序操作练习。
用SORT命令对GZ等表文件进行排序操作。
(1)打开GZ.DBF,按基本工资升序,基本工资相同时按补助工资降序得到表GZ4;打开GZ4.DBF表,进行浏览。
(2)打开GZ.DBF,按实发工资升序,序得到表GZ5;打开GZ5.DBF表,进行浏览。
(3)打开RS.DBF,按出生日期升序,得到表GZ6;打开GZ6.DBF表,进行浏览。
2、索引的建立与使用操作练习。
用INDEX命令对GZ、BM、RS等表文件建立索引文件。
(1)打开GZ.DBF,建立以基本工资为关键字的唯一索引,索引标识为GZ2。
(2)打开GZ.DBF,以基本工资为降序建立结构化复合索引,索引标识为GZ3。
(3)打开RS.DBF,以出生日期升序建立非结构索引RS1。
用SET INDEX TO、SET ORDER TO命令对表进行索引的打开操作。
3、数据工作期窗口使用练习(1)分别用菜单方式和命令方式练习打开和关闭数据工作期窗口。
(2)打开数据工作期窗口,在数据工作期窗口分别打开表GZ、RS、BM;分别打开三个数据表的浏览窗口,浏览表中数据。
(3)在数据工作期中选中GZ表,单击“属性”按钮,分别进行字段筛选和修改表结果的练习。
(4)以BM表为父表,以RS为子表,以子表的部门编号为关联的关键字,为两表建立关联。
4、顺序查询练习利用LOCATE 、CONTINUE等命令对相关表进行查询操作。
(1)打开表GZ,查找工资库中王同志的第一条记录。
(2)打开表GZ,从第七条记录开始,向下查找5条记录中的第一位李同志。
一、实验目的1. 理解索引顺序查找的基本原理。
2. 掌握索引顺序查找的实现方法。
3. 分析索引顺序查找的时间复杂度和效率。
二、实验原理索引顺序查找是一种基于索引的查找方法,它将数据分为两部分:索引和数据。
索引部分存储了数据中各个元素的位置信息,而数据部分则存储了实际的数据。
在查找过程中,首先通过索引找到目标元素的位置,然后再从数据部分中获取该元素。
索引顺序查找的基本步骤如下:1. 遍历索引,找到目标元素的位置。
2. 根据找到的位置,从数据部分获取目标元素。
三、实验环境1. 操作系统:Windows 102. 编程语言:Python3.83. 开发工具:PyCharm四、实验步骤1. 创建一个数据集,包括1000个随机整数。
2. 创建一个索引,记录每个元素在数据集中的位置。
3. 编写索引顺序查找函数。
4. 对数据集中的元素进行查找,并记录查找时间。
5. 分析查找结果,评估查找效率。
五、实验代码```pythonimport randomimport time# 创建数据集data_set = [random.randint(0, 10000) for _ in range(1000)]# 创建索引index = {data_set[i]: i for i in range(len(data_set))}# 索引顺序查找函数def index_search(data, target):if target in index:return index[target]else:return -1# 查找过程start_time = time.time()for target in data_set:index_search(data_set, target)end_time = time.time()# 输出查找时间print("查找时间:", end_time - start_time)```六、实验结果与分析1. 查找时间:实验结果显示,在数据集中进行1000次查找操作所需的时间为0.0009秒,平均每次查找所需时间为0.000009秒。
数据库原理及应用实验指导书 - 答案实验一:数据库管理系统的安装与配置问题一数据库管理系统(DBMS)是一种软件,用于管理和组织数据库。
它允许用户创建,读取,更新和删除数据库中的数据。
常见的数据库管理系统有MySQL,Oracle,SQL Server等。
问题二在实验室环境中,我们将使用MySQL作为我们的数据库管理系统。
以下是MySQL的一些常见特点: - 开源免费 - 跨平台支持 - 可扩展性强 - 有大型的用户社区和丰富的资源支持问题三MySQL的安装步骤如下: 1. 下载MySQL安装文件,可以从MySQL官方网站或者其他可信的下载源获取。
2. 运行安装程序,按照向导的指示进行安装。
3. 选择是否要安装MySQL 服务器和MySQL工具。
4. 设置密码以保护数据库的安全。
5. 完成安装程序并启动MySQL服务。
数据库是一个组织和存储数据的容器。
在关系型数据库中,数据以表的形式存储,每个表包含多个行和列。
每行代表一个记录,每列代表一个字段。
问题五关系型数据库管理系统(RDBMS)是一种DBMS,它使用结构化查询语言(SQL)来操作和处理数据。
常见的关系型数据库管理系统有MySQL,Oracle,SQL Server等。
问题六开放数据库连接(ODBC)是一种标准的数据库访问方法,它允许不同的应用程序通过统一的接口访问不同的数据库管理系统。
ODBC驱动程序充当应用程序和数据库之间的翻译器。
问题七在Windows系统中,ODBC数据源可以通过控制面板的“管理工具”来配置。
在数据源配置对话框中,可以添加,编辑和删除ODBC数据源。
在Windows系统中,可以使用ODBC接口库和ODBC驱动程序来连接和操作数据库。
具体步骤如下: 1. 加载ODBC接口库。
2. 初始化ODBC环境。
3. 建立数据库连接。
4. 执行SQL语句。
5. 关闭数据库连接。
6. 释放ODBC环境。
问题九ODBC接口库是一组API函数,用于连接和操作数据库。
实验四视图、索引的创建与管理一、实验目的1.了解视图、索引的概念及作用。
2.掌握视图和数据表的区别。
3.掌握索引的分类。
4.掌握创建视图、索引的方法。
5.掌握查看和修改视图、索引的方法。
6.掌握删除视图、索引的方法。
二、实验内容视图实验内容:1.新建BOOKS数据库,使用管理控制台创建名称为“图书借阅信息表”的数据表,表2.在3.使用管理控制台创建一个名为“读者借阅信息_VIEW”的视图,要求显示所在部门是“计算机系”或“外语系”的读者借阅信息,包括“读者编号”、“姓名”、“所在部门”、“图书编码”和“图书状态”五个字段。
4.使用SQL语句创建一个名为“计算机系续借信息_VIEW”的视图,要求显示计算机系读者2010-10-1以后续借的图书信息,包括“姓名”、“图书编码”和“借阅日期”三个字段。
5.使用管理控制台查看“读者借阅信息_VIEW”视图的定义信息和依赖的对象。
6.使用系统存储过程查看“计算机系续借信息_VIEW”视图的定义信息和依赖的对象。
7.使用管理控制台修改“读者借阅信息_VIEW”视图,要求只显示计算机系男读者借阅信息,包括“读者编号”、“姓名”、“所在部门”、“图书编码”和“图书状态”五个字段。
8.使用SQL语言修改“计算机系续借信息_VIEW”视图,要求显示计算机系或外语系读者2006-1-1以后续借的图书信息,包括“姓名”、“所在部门”、“图书编码”和“借阅日期”四个字段。
9.分别使用管理控制台和SQL语言向视图“读者借阅信息_VIEW”中插入一条记录,看操作能否成功,为什么?10.使用管理控制台删除“读者借阅信息_VIEW”视图。
11.使用SQL语言删除“计算机系续借信息_VIEW”视图。
索引实验内容:12.使用管理控制台创建一个新的索引,索引名称为“IX_姓名_所在部门”,使用的数据表是“读者基本信息表”,所用的字段包括“姓名”和“所在部门”两个字段。
13.使用SQL语句创建一个新的索引,索引名称为“IX_图书状态_借阅日期”,使用的数据表是“图书借阅信息表”,所用的字段包括“图书状态”和“借阅日期”两个字段。
实验报告实验课程名称数据库系统及原理
实验项目名称表的排序、索引与统计
年级
专业
学生姓名
学号
00 学院
实验时间:年月日
图2 2.在Visual FoxPro的命令窗口中,输入:count for ssmz and xb=”女”to a
?a
如图3
图3
图4
4.在Visual FoxPro的命令窗口中,输入:
index on xh tag xh desc
Index on xm+str(date()-csrq) tag xm_csrq desc
图5 5.在Visual FoxPro的命令窗口中,输入:
Locat for xm=”王小萍”
Disp
Continue &&继续查找姓名为“王小萍”的同学。
如图6
图7 7.在Visual FoxPro的命令窗口中,输入:use student
图8 8.在Visual FoxPro的命令窗口中,输入:
use student
图9
9.使用菜单方式建立索引文件。
(1)以独占方式打开表STUDENT,如图10
图11
可以看到STUDENT表按“BJBH”建立了普通索引。
这时,BJBH”,如图12,。
结构化复合索引文件名与表同名即
STUDENT.CDX。
如图13使用这种方法建立索引既简图12
图13。
数据库 排序与索引数据库应用技术 排序和索引知识目标:知识目标: 掌握对数据库排序的基本方法 数据库排序的基本方法;1、掌握对数据库排序的基本方法; 掌握建立索引文件的基本方法 索引文件的基本方法;2、掌握建立索引文件的基本方法; 掌握打开与关闭索引文件的方法。
3、掌握打开与关闭索引文件的方法。
能力目标: 1、能建立排序数据库文件; 2、能对记录进行顺序查找;3、能建立不同类型关键字的索引文件;4、打开与关闭索引文件。
数据库中记录是按其输入的顺序存放的, 记录号真实地反映了数据记录在存储介质 中的物理顺序。
在实际工作中往往希望记录按某个字段值的大小重新排列,这个字段称为关键字(关键字段)。
实现这种排列有两种方法:一种是排序(又称分类), 另一种是索引。
数据库的排序排序是按数据库文件中某个字段值的大小对记录的物理位置进行重新排列,并生成新的数据库文件。
【格式】SORT ON <字段名1>[</A >] [</D>] [/C][,<字段名2>[</A >] [</D>] [/C],…] TO <数据库名>[<范围>][FOR|WHILE<条件 >] [FIELDS<字段名清单>]【功能】将数据库中的记录按指定字段重新排序,生成一个新的数据库。
【说明】 [/A]按排序字段升序(递增)排序。
[/D]按排序字段降序(递减)排序。
[/C]按字母排序时不区分大小写。
范围选项省略时默认为ALL。
FIELDS<字段名清单>:排序生成的数据库中只包含有清单中指定的字段。
若省略该选项, 则排序生成的数据库包含所有字段。
注意:生成的排序库文件是关闭的,要使用必须先注意:生成的排序库文件是关闭的, 打开后使用。
将数据库文件ZYDA.DBF按合计字段由高到低排序 按合计字段由高到低排序,例 1 将数据库文件按合计字段由高到低排序 生成一个新数据库文件ZY1.DBF,并显示其内容。
实验一数据表的排序与索引
一、实验目的
1.了解记录排序的操作方法。
2.了解索引类型的作用,掌握创建、使用和维护索引的方法及四种索引的区别。
3.掌握索引查询命令的使用。
二、实验内容
1.对表文件rsda.dbf进行排序操作,对已婚职工按性别升序排序,当性别相同的按姓名降序排序,生成排序表文件为srsda_xbxm.dbf只有编号、姓名、工作日期三个字段。
打开排序表文件查看。
2.利用索引命令为表rsda.dbf按下列要求建立索引:
(1)按姓名升序建立单索引文件irsda_xm.idx,按基本工资降序建立单索引文件irsda_gz.idx。
(2)按出生日期降序(索引标识rq,类型为普通索引)排列;
(3)按性别降序,性别相同的按基本工资降序(索引标识为xbgz,类型为唯一索引),建立结构复合索引。
3.利用表设计器对表rsda.dbf,按下列要求建立结构复合索引:
(1)按编号升序(索引标识bh,类型为主索引),建立结构复合索引。
(2)按婚否字段的降序,婚否相同时按基本工资降序(索引标识为hfgz,类型为普通索引)排列。
4.利用索引查询完成下列查询:
(1)查询表rsda.dbf中姓名为李冬生的职工信息;
(2)查询表rsda.dbf中8月出生的职工第一条记录。
三、实验步骤
1.排序操作,操作命令如下:
use rsda
sort to srsda_xbxm on xb,xm/d for hf fields bh,xm,rq
use rsda_px
list
use
2.利用索引命令。
(1)操作命令如下:
use rsda
index on xm to irsda_xm
list
index on –jbgz to irsda_gz
list
use
dir *.idx
(2)操作命令如下:
use rsda
index on rq tag rq
list
use
(3)操作命令如下:
use rsda
index on xb+str(jbgz,7,2) desc tag xbgz unique
list
use
3.使用表设计器。
打开表设计器,选择“文件”菜单的“打开”命令,在“打开”对话框中选定表rsda.dbf,单击“确定”按钮,选择“显示”菜单的“表设计器”命令,打开“表设计器”窗口,选定“索引”选项卡。
(1)按编号升序建立主索引。
单击“索引名”列下部的文本框,输入bh,单击该行“类型“组合框,选定“主索引”选项,单击该行“表达式”列的文本框,输入bh。
(2)记录按婚否字段降序,婚否相同时按基本工资降序排列,建立普通索引。
单击“索引名”列下部的文本框,输入hfgz,单击该行“表达式”列的文本框右侧的对话框按钮,出现“表达式生成器”对话框,利用“字段”列表框、“函数”等功能,在“表达式”文本框输入表达式:
iif(hf,”t”,”f”)+str(jbgz,7,2)
单击“确定”按钮,返回“表设计器”对话框,单击该行左边的“排序”列按钮,使其为降序标识“↓”。
4.查询命令使用。
(1) 操作命令如下:
use rsda index irsda_xm
set order to tag irsda_xm &&设置姓名为主控索引
seek “李冬生”
? found()
display
use
(2) 操作命令如下:
use rsda
index on month(rq) tag yf &&按出生日期的月份建立复合索引
seek 8
? recno()
display
use
四、思考与练习
1.在rsda.dbf中,按性别升序,基本工资的降序排序记录,生成排序表文件srsda_xbgz.dbf,要求包含有编号、姓名、性别和基本工资四个字段。
2.在rsda.dbf中,记录按性别降序排列,性别相同的按出生日期降序排列建立复合结构索引,索引标识名为xbrq,类型为普通索引。
3.将数据库rsda.dbc中的gz.dbf表建立以bh为关键字的的主索引。
4.将数据库rsda.dbc中的teacher.dbf表建立以bh为关键字的普通索引和以kch为关键字的普通索引。
5.将数据库rsda.dbc中的course.dbf表建立以kch为关键字的主索引。