《地质数据库设计及应用》上机实习指导书.doc_第1页
《地质数据库设计及应用》上机实习指导书.doc_第2页
《地质数据库设计及应用》上机实习指导书.doc_第3页
《地质数据库设计及应用》上机实习指导书.doc_第4页
《地质数据库设计及应用》上机实习指导书.doc_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

地质数据库设计及应用 上机实习指导书 陈练武 西安科技大学地环学院 1 前前 言言 地质数据库设计及应用 是地质工程专业必修的一门基础课 它的主要任务是研究地质数据库的设计方法 设计流程及在 Visual FoxPro 环境下地质数据库的建立 维护 以及程序设计方法和技巧 目的是使学生掌握数据库系统的基本知识和应用技术 掌握地质数 据库管理系统的设计方法与技巧 培养学生以计算机为工具解决本 专业实际问题的能力 教学大纲要求本课程总学时 68 理论教学 50 学时 根据教学 内容和教学目标 实习课共开设 18 个学时 其中基础实习 14 学时 设计型实习 4 学时 由于课内机时有限 要熟练掌握所学理论知识 有一定难度 在课内上机时间内不能完成实习内容的同学们 希望 利用课外上机时间 完成每个实习所要求的内容 2 目 录 实习一实习一 VFP6 0 表的基本操作表的基本操作 1 实习二实习二 地质数据库的建立地质数据库的建立 5 实习三实习三 建立查询和视图建立查询和视图 5 实习四 五实习四 五 VFP 程序的设计与调试程序的设计与调试 5 实习六 七实习六 七 表单设计表单设计 5 实习八实习八 开发一个小型的地质数据库应用系统开发一个小型的地质数据库应用系统 5 1 实习一实习一 VFP6 0 表的基本操作表的基本操作 一 实习目的一 实习目的 了解 Visual FoxPro6 0 系统的运行的软硬件环境 掌握正确启动和退出 Visual FoxPro6 0 系统的方法 初步认识 Visual FoxPro6 0 的界面组成 学习使用 Visual FoxPro6 0 中窗 口和菜单的基本操作方法 初步掌握 Visual FoxPro6 0 中表的基本操作方法 二 实习内容二 实习内容 启动和退出 Visual FoxPro6 0 中文版 操作 Visual FoxPro6 0 中的窗口和菜单 设置 Visual FoxPro6 0 系统系统系统环境 使用 表向导 建立一个自由表 作用 表设计器 修改表的结构 使用 生成器 生成表达式 使用项目管理器 三 实习步骤三 实习步骤 1 了解当前使用的计算机的操作系统和硬件配置 了解当前使用的计算机的操作系统和硬件配置 2 启动 启动 Visual FoxPro6 0 中文版 中文版 1 通过 开始 菜单启动 2 通过快捷方式启动 3 直接从 Visual FoxPro6 0 中文版安装目录中启动 3 退出 退出 Visual FoxPro6 0 中文版中文版 分别使用下列几种方法退出 Visual FoxPro6 0 每次退出后请重新启动 Visual FoxPro6 0 以便练习其他退出方法 在 I 命令 窗口中键入命令 QUIT 然后按回车键 按下 ALT F4 组合快捷键 单击 Visual FoxPro6 0 窗口的 文件 菜单项 在下拉菜单中单击 退出 选 2 项 单击 Visual FoxPro6 0 窗口右上角的关闭窗口按钮 4 Visual FoxPro6 0 中窗口和菜单的基本操作中窗口和菜单的基本操作 1 窗口操作 启动 Visual FoxPro6 0 显示主窗口 用鼠标单击 最小化 l 按钮 此时 将窗口缩小成图标并显示在 Wndows 的任务栏上 注意观察效果 单击显示在 Wmdows 的任务栏上的 Visual FoxPro6 0 图标 激活窗口 回到原来状态 单击 还原 或 最大化 按钮 将窗口还原或者最大化 移动窗口 将鼠标移至 命令 窗口的标题栏 蓝色区域 按下鼠标左键 不放 移动鼠标将其拖至目标位置后释放鼠标 2 菜单操作 将鼠标移至菜单栏 单击 文件 菜单项 观察下拉子菜单选项和相应的组合快 捷键 同时观察状态栏中显示的帮助信息 移动鼠标至 打开 选项 此时状态 栏中的信息已做了相应的更新 单击鼠标左键 打开对话框 如图 1 1 所示 图图 1 1 Visual FoxPro 打开文件对话框打开文件对话框 从弹出的 打开 对话框中可看到当前默认打开的文件类型为 项目文件 PJX 单击 文件类型 旁的下拉按钮 将要打开的文件类型改为 表 dbf 如图 1 2 所示 3 在系统安装目录 VFP98 此时可在窗口中看到两个表文件 FOXUSER DBF 和 LABELS DBF 用鼠标选中 LABELS DBF 单击 确定 按钮打开此表文件 如图 1 2 所示 此时 打开 对话框窗口关闭 在主窗口的状态栏中将显示当前打开表的一系列信息 同时系统将在 命令 窗 口中生成并显示该操作相应的命令行 如图 1 3 所示 图图 1 2 更改要打开的文件类型更改要打开的文件类型 图图 1 3 命令命令 窗口中显示的命令行窗口中显示的命令行 选择 显示 菜单项中的 浏览 命令 此时将看到打开的窗口中显示了表 LABELS DBF 的内容 同时 在 命令 窗口中增加了命令行 BROWSE LAST 菜单栏中也添加了一个 表 菜单项用于数据表的操作 如图 1 4 所示 4 图图 1 4 打开表后的打开表后的 Visual FoxPro 窗口窗口 3 命令 窗口的操作 关闭上一步打开的表 浏览 窗口 在 命令 窗口中用鼠标将插入点定位在 BROWSE LAST 命令行的任意位置 或在命令窗口直接输入 BROWSE LAST 按回车键 此时系统重新打开了 浏览 窗口 4 工具栏的使用 主窗口中显示的是 Visual FoxPro6 0 的 常用 工具栏 如图 1 5 所示 直接 利用工具栏来执行 Visual FoxPro 命令是非常简便快捷的 比如单击 常用 工具 栏上的 打开 按钮就可以直接进入文件 打开 窗口 工具栏的有些按钮不是任何 时候都可用 在无操作对象时为灰色不可用状态 图 1 5 常用 工具栏 把鼠标光标移到图 1 5 所示中某个工具栏按钮上 系统就会自动在光标下 5 方显示注释框 说明该按钮的 功能 请依次观察每一个按钮 的功能注释 单击 显示 菜单的 工具栏 选项 打开 工具栏 窗口 窗口中列出了 Visual FoxPro 提供的一系列工具栏 其中 只有 常用 工具栏处于选定 状态 如图 1 6 所示 任意选中其它几个工具栏 单击 确定 按钮 此时选定 的工具栏将出现在 Visual FoxPro 的主窗口中 图图 1 6 定制工具栏定制工具栏 5 配置 配置 Visual FoxPro6 0 的系统环境的系统环境 Visual FoxPro6 0 系统环境的配置决定了 Visual FoxPro6 0 系统的操作环境 和工作方式 Visual FoxPro6 0 允许用户通过设置参数来控制其工作方式 设置 Visual FoxPro6 0 既可以使用菜单操作 也可以使用命令方式 1 启动 Visual FoxPro6 0 在系统主菜单中选择 工具 菜单项下的 选项 选 项卡 打开 选项 窗口 如图 1 7 所示 图图 1 7 选项选项 窗口窗口 6 为了便于存储和查找文件 需要首先设置 文件位置 选项 要求将系统默 认目录和搜索路径设置为 D 盘的 myfile 目录 先将 Visual FoxPro 主窗口最小化 打开 我的电脑 在某一个磁盘 驱动器中 这里暂定为 D 盘 建立一个新文件夹 取名为 myfile 还原 Visual FoxPro 主窗口 在 选项 窗口中单击 文件位置 选项卡 找到 默认目录 选项 选中后单击 修改 打开 更改文件位置 对话框 如图 1 8 所示 图图 1 8 打开打开 更改文件位置更改文件位置 对话框对话框 选中 使用 U 默认目录 复选框 单击翻按钮打开 选择目录 对话框 找到并选定 D myfile 目录 然后单击 确定 按钮 此时默认目录已改为 D myfile 用同样方法在 文件位置 选项卡中将文件的 搜索路径 也改为 D myfile 接下来 通过对 显示 选项卡的设置进一步理解 Visual FoxPro 的环境设置 单击 显示 选项卡 取消对 状态栏 复选框的选中 单击 确定 按钮 7 退出 选项 窗口后 将发现 Visual FxoPro 主窗口中的状态栏被隐藏了 提示 设置结束后 如果单击 设置为默认值 按钮后退出 选项 窗口 则下次启动 Visual FoxPro 时 设置仍然有效 否则仅当前有效 6 使用 使用 表向导表向导 建立一个自由表建立一个自由表 向导是一种快捷设计工具 它通过一组对话框依次与用户对话 引导用户 分步完成 Visual FoxPro 的某项任务 表向导 可一步一步地引导 快速地根据 己有的表 样表 建立新的表文件 1 在 Visual FoxPro 系统主菜单中选择 工具 菜单项下的 向导 选项 在 弹出的子菜单中可看见 表 查询 表单 报表 等一系列向导 选择 表 向导 打开 表向导 对话框 2 步骤 1 字段选取 在 样表 列表框中选择一个样表 本例选择表 Classes dbf 此时 可用字段 列表框中列出了样表 Classes dbf 的所有字 段 使用 加入 按钮任意加入几个字段到 选定字段 列表框中 或使用 全部加 入 按钮将所有字段加入 然后单击 下一步 按钮 如图 1 9 所示 图图 1 9 步骤步骤 1 字段选取 字段选取 3 步骤 1a 选择数据库 在此窗口中选择系统默认的 创建独立的自 由表 然后单击 下一步 4 步骤 2 修改字段设置 利用此窗口可修改选定字段的属性 包括字 段名 类型 宽度等 实际上就是设置将要生成的新表的字段属性 在本例中 8 直接单击 下一步 按钮 暂且不修改这些字段 使其保持在样表中原有的属 性 如图 1 10 所示 图图 1 10 步骤步骤 2 修改字段设置 修改字段设置 5 步骤 3 为表创建索引 通过此步骤可在创建表的同时 建立表的 索引 关于数据表的索引在此不深究 直接单击 下一步 6 步骤 4 完成 通过前面的操作 表的创建工作已基本完成 此时 需要做最后的工作 保存表 对此步 向导 共给出了 3 种选择 图 1 11 这 里选择第二种方式 表名可定为 TEST DBF 此时表被保存在默认的目录下 然后表的内容将显示在 浏览 窗口中 由于生成的表没有记录 此时仅看到表的 字段 9 图图 1 11 保存表保存表 7 使用 使用 表设计器表设计器 修改表修改表 对于已打开的表 如果要修改其结构 可选择系统主菜单中 显示 菜单下 的 表设计器 打开 表设计器 窗口 如图 1 12 所示 然后可进行表结构的修 改 图图 1 12 表设计器表设计器 8 操作 操作 项目管理器项目管理器 在 Visual FoxPro 中 项目是有关文件 数据文档及对象的集合 项目管 理器 是 Visual FoxPro 处理数据和对象的重要组织工具 下面将创建名为 TEST PJX 的项目文件 在 Visual FoxPro 系统主菜单中选择 文件 菜单下的 新建 选项 打开 新建 窗口 选择新建文件类型为 项目 然后单击 新建文件 按钮 在接下来的窗口 中输入将要创建的项目文件名 TEST PJX 确认后系统将打开 项目管理器 窗 口 图 1 13 在命令窗口中使用命令 CREATE PROJECT TEST PJX 同样可完成此操 作 10 图图 1 13 项目管理器项目管理器 2 项目管理器 的基本操作 折叠和还原 项目管理器 单击 项目管理器 右上角的向上箭头 此时 项 目管理器 被折叠 同时箭头变为向下箭头 单击该箭头 项目管理器 被还原为 初始状态 折叠和展开列表项 项目管理器 中的各选项是以类似于大纲的结构来组 织的 可以将其展开或折叠 以便查看不同层次中的详细内容 如果项目中具 有一个以上某一类型的选项 则该类型符号的左边会出现一个 图标 单 击此图标可显示该选项中的该类型项的各种名称 若要折叠已展开的表 可单 击 图标 拆分选项卡 项目管理器 被折叠后 可以用鼠标选中某一选项卡 拖动 鼠标 在目标位置释放 可把它的 6 个选项卡一个个拆卸下来放置到其他位置 如图 1 14 所示 拆卸下来的每个选项卡都可单独使用 如要还原 只要用鼠标 拖动选项卡至 项目管理器 中的原位置释放 或单击关闭按钮即可 11 图图 1 14 拆分选项卡拆分选项卡 9 向新建的项目 向新建的项目 TEST PJX 中添加中添加 1 个自由表个自由表 TEST DBF 单击 项目管理器 的 数据 选项卡 在列表框中选择 自由表 选项 然后单 击 项目管理器 右部分的 添加 按钮 在弹出的 打开 对话框中选择自由表 TSET DBF 单击 确定 表将被添加到项目中 如图 1 15 所示 图 1 15 向项目管理器中添加文件 12 四 思考四 思考 1 Visual FoxPro6 0 中主菜单项内容是否是固定不变的 2 Visual FoxPro6 0 的工具栏可否移动到主窗口的其他地方 3 如何改变 命令 窗口中命令行的字体大小 4 Visual FoxPro6 0 的环境设置主要包括那些类别的选项 5 Visual FoxPro6 0 提供的哪一种辅助设计工具集合了建立和修改编辑 文件的功能 6 项目管理器 的作用和地位是怎样的 13 实习二实习二 地质数据库的建立地质数据库的建立 一 实习目的一 实习目的 学习并掌握 Visual FoxPro 中的各种数据类型 掌握数据表及数据库的建立方法及命令 掌握各种类型数据的录入方法 掌握地质数据库创立的基本方法与步骤 二 实习内容二 实习内容 按提示步骤建立一个数据表和数据库 并录入记录 练习数据表的打开和关闭操作 浏览数据表 数据表的编辑与维护 数据表的排序与索引 三 实验步骤三 实验步骤 1 1 建立表 建立表 2 12 1 所示的自由表所示的自由表 ZKQK DBFZKQK DBF 表 2 1 某井田钻孔基础数据表 钻孔号孔口坐标 X孔口坐标 Y孔口标高终孔深度开孔日期钻孔级别是否斜孔 8433786361 400116031 3301131 720492 621989 11 01甲级不是 84303786000 120116255 0001082 940402 461990 01 20甲级不是 8423785590 700116442 0001089 000370 431992 08 14乙级是 8473787135 200116259 6001135 440532 271990 01 01甲级不是 8463786614 980116427 1901147 900541 251982 10 11甲级是 8453786283 570116632 7101183 700522 561993 07 21甲级不是 8443786003 570116795 2401164 490501 571994 07 09乙级不是 ya33785281 450117269 2001164 180398 131993 05 15甲级不是 6633784947 970117366 2601136 670331 111992 11 22丙级是 84113787217 350116501 5001158 600572 081996 04 18乙级是 84103786873 020116765 3301186 440552 811996 05 10甲级不是 14 1 首先在某一用户盘上 如 E 建立一个文件夹 文件夹名为学生的 姓名 如陈练武 将系统的默认路径设置为该文件夹 2 创建一个项目文件 项目文件名为学生的姓名 请用请用 向导向导 创建 注意查看系统自动创建的目录结构 创建 注意查看系统自动创建的目录结构 3 在项目管理器的列表项中选择 自由表 选择 新建 按钮 图 2 1 新建自由表的文件名为 ZKQK DBF 文件存放在用户目录下的 DATA 子 目录下 图图 2 1 创建自由表创建自由表 4 设计表的结构 由于 Visual FoxPro 采用关系型数据模型 故能方便的将二维表作为 表 存储到计算机中 建表时 二维表的每一列将成为数据库表的一个字段 标题 栏下方的内容输入到表中将成为表的数据 每一行数据称为表的一个记录 也 就是说 表由结构和数据两部分组成 那么针对上述二维表创建的数据库表 如 ZKQK dbf 则含有 8 个字段和 11 个记录 要将一个二维表变为 Visual FoxPro 的一个表 table 首先要仔细研究二维表每一列数据的类型 宽度 小 数位数等 在此基础上设计表的结构 对于通过计算可获取的数据不要作为一 个字段出现 例如某表中如有出生日期字段 就没有必要再有一个年龄字段 因为只要知道一个人的出生日期 就可计算出他的年龄 根据上述规定 可为 表 2 1 设计如表 2 2 所示的结构 15 说明 字段名也可采用中文名 说明 字段名也可采用中文名 表 2 2 钻孔基础数据表的结构 字段名字段类型字段宽度小数位数说 明 drill id字符型10钻孔号 主键 非空 kkx0数值型113孔口坐标 X kky0数值型103孔口坐标 Y kkz0数值型83孔口标高 end数值型72终孔深度 date0日期型8开孔日期 drilldgree字符型4钻孔级别 isdip逻辑型1是否斜孔 2 输入记录 输入记录 向表中输入数据常用的有以下几种方法 1 建立好表结构后立即输入数据 当表结构建立并存盘后 系统会提问是否现在输入记录 选择 是 按钮 便可输入记录 用此方法输入数据对一个表机会只有一次 2 追加数据 向表中追加数据是最常用的一种方法 操作步骤如下 第一步 执行 USE ZKQK 命令来打开表 第二步 执行 APPEND 命令后开始输入数据 参见图 2 2 16 图图 2 2 追加数据对话框追加数据对话框 3 窗口追加方式 BROWSE 方式 第二种方法是在编辑窗口中输入记录 也可在浏览窗口中输入记录 操作 步骤如下 第一步 执行 USE 表文件名 命令来打开表 第二步 执行 BROWSE 命令后打开浏览窗口 第三步 选定 显示 菜单下的 追加方式 选项后 可开始输入数据 参见图 2 3 图图 2 3 数据浏览方式数据浏览方式 4 成批追加数据方式 以上三种方法输入记录只能逐条输入 如果数据已以其它文件形式保存 或已保存在其它表中 可将这些数据成批追加到当前表中 如果要从另一个表中导入 操作步骤如下 第一步 执行 USE 表文件名 命令来打开表 目标表 第二步 执行 APPEND FROM 表文件名 源数据表 命令导入输入数据 说明 用上述方法导入时只能将两个表中共有字段的数据导入 如果要从一个文本文件中导入数据 操作步骤如下 第一步 执行 USE 表文件名 命令来打开表 目标表 第二步 执行 APPEND FROM 数据文件名 SDF DELI 命令导入输入数 据 说明 A 数据文件名是一个文本文件 B SDF 与 DELI DELIMITED 选其中的一个 具体选那一个取决于文 本文件的格式 如果文本文件是标准格式 则选 SDF 如果是紧凑格式则选 DELI C 导入时 文本文件的第一列数据导入到表的第一个字段 第二列数据 17 导入到表的第二个字段 所以要注意数据类型的一致性 如果不一致可在 APPEND FROM 命令中加入 FIELDS 来指定导入的具体字段 除了用命令方式成批导入数据外 也可用 文件 菜单下的 导入 选项 来成批导入数据 图 2 4 图图 2 4 导入数据对话框导入数据对话框 3 3 修改表的结构 修改表的结构 1 打开表 ZKQK DBF 2 打开表设计器 3 增加备注 BZ 字段 字段类型为备注型 4 保存结构后 向备注型字段中输入记录 内容可任意 4 4 排序操作 排序操作 1 打开已输入记录的 ZKQK DBF 2 按终孔深度 END 字段 从小到大排序生成一个新表 ZKQK END DBF 命令为 SORT TO D 陈练武 DATA ZKQK END ON END 3 将 ZKQK END DBF 添加到项目文件中的自由表中 5 5 索引操作 索引操作 1 打开已输入记录的 ZKQK DBF 2 打开表设计器 也可在项目管理器中选择该表后 单击 修改按钮 18 如图 2 5 所示 图图 2 52 5 修改表修改表 3 钻孔编号按升序建立索引文件 钻孔深度按降序建立索引文件 图 2 6 19 图图 2 6 建立索引建立索引 4 分别将 drill id 和 drill end 作为主索引 浏览表 观察其效果 6 创建断层数据库 创建断层数据库 库文件名 fault dbc 数据库中包含的表 断层基本信息表 fault base dbf 断层位置控制表 fault control dbf 各表的建表意义及结构如下 1 断层基本信息表 fault base dbf 断层基本信息表存放的是断层的基本属性信息 表 2 3 它是断层库中的主 表 父表 一条断层在该表中为一条记录 表 2 3 断层基本信息表结构 字段名字段类型字段宽度小数位数说 明 fault id字符型10断层编号 fault name字符型10断层名称 expose time日期型8揭露时间 fau property字符型10性质 fau orient数值型74倾向 fau angle数值型72倾角 fau fall数值型72落差 line drawing通用型4素描图 照片等 2 断层位置控制表 fault control dbf 该表中存放的是控制断层平面位置的控制点坐标 表 2 4 一条断层有几个 控制点 在该表中就有几条记录 它与上面的断层基本信息表之间为子表的关 系 多方 表 2 4 断层位置控制表结构 字段名字段类型字段宽度小数位数说 明 fault id字符型10断层编号 number数值型30序号 ctrlpos x数值型113控制点坐标 x ctrlpos y数值型103控制点坐标 y ctrlpos z数值型83控制点坐标 z 20 3 表关系设计 断层库中的两个表关系设计如下 断层基本信息表 fault base dbf 与断层位置控制表 fault control dbf 之间通 过关键字段fault id建立一对多的永久关系 断层基本信息表为一方 断层位置 控制表为多方 图 2 7 这样 在断层位置控制表中 断层控制点的个数可为 任意多个 图图 2 7 断层库表间关系设计图断层库表间关系设计图 7 编辑参照完整性 编辑参照完整性 建立关系后 我们可设置管理数据库关联记录的规则 即参照完整性 所 谓参照完整性 简单地说就是控制数据一致性 尤其是不同表之间关系的规则 参照完整性生成器 可以帮助我们建立规则 控制记录如何在相关表中被插入 更新或删除 这些规则将被写到相应的表触发器中 选择 数据库 菜单下的 编辑参照完整性 选项 或单击右键打开快捷 菜单 选择 编辑参照完整性 选项 进入 参照完整性生成器 其中有选 择更新 删除或插入三个选项卡 设置进行相应操作所遵循的若干规则 每个 选项卡有二到三个选项 有级联 限制 忽略 图 2 8 21 图图 2 8 编辑参照完整性编辑参照完整性 如果选择了级联 不论何时更改父表中的某个字段 Visual FoxPro 都会 自动更改所有相关子表记录中的对应值 如果选择了限制则禁止更改父表中的主关键字段或候选关键字段中的值 这样在子表中就不会出现孤立的记录 如果选择了忽略则即使在子表中有相关的记录 仍允许更新父表中的记录 这里 更新 选项卡中选择 级联 在 删除 选项卡中选择 限制 在 插入 选项卡中选择 限制 选择 确定 然后选择 是 保存所做的修改 生成 参照完整性 代码 并 退出参照完整性生成器 这样 参照完整性就可利用两表的关系参照制约来控 制两表数据的完整性和一致性 断层数据见表 2 5 表 2 6 表 2 5 断层基本信息表 断层编号断层名称揭露时间性质倾向倾角落差素描图 W5 2203 1F2202302 02 1989正断层159523 W5 2203 2F2203 209 09 1989正断层299 5251 5 W5 2203 3F2203 309 09 1989逆断层348252 W5 2203 4F2203 409 09 1989正断层0401 5 W5 2201 1F2201 108 08 1989正断层21501 7 W5 2201 2F2201 207 06 1988正断层70331 3 W5 2201 3F2201 309 09 1989逆断层188401 2 W5 2201 4F2201 408 08 1989正断层77411 0 W5 2201 5F2201 509 09 1989正断层257352 1 22 W5 2201 6F2201 1009 09 1988正断层77300 5 表 2 6 断层位置控制表 断层编号序号控制点坐标 x控制点坐标 y控制点坐标 z W5 2203 113888336 000111070 000 W5 2203 123888344 000111078 000 W5 2203 133888364 000111089 000 W5 2203 143888446 000111119 000 W5 2203 213888380 000111099 000 W5 2203 223888403 000111142 000 W5 2203 313888294 000111065 000 W5 2203 323888339 000111075 690 W5 2203 413888372 000111094 000 W5 2203 423888350 000111098 000 W5 2203 433888314 000111099 000 W5 2203 443888285 000111096 000 W5 2203 453888277 000111092 000 W5 2203 463888259 000111086 000 W5 2201 113888083 000111286 000 W5 2201 123888162 000111254 000 W5 2201 213888173 000111328 000 W5 2201 223888147 000111415 000 W5 2201 313888164 000111384 000 W5 2201 323888207 000111375 000 W5 2201 413887987 000110601 000 W5 2201 423887975 000110636 000 W5 2201 513887981 000110575 000 W5 2201 523887955 000110678 000 W5 2201 613887959 000110607 000 W5 2201 623887948 000110642 000 23 实习三实习三 建立查询和视图建立查询和视图 一 实习目的一 实习目的 学会查询设计器 视图设计器的使用及其相应文件的建立 熟练掌握 SQL 的查询语句 二 实习内容二 实习内容 用查询设计器创建查询 用视图设计器创建本地视图 使用 SQL 的查询语句进行查询设计 三 实习步骤三 实习步骤 1 用 用 查询设计器查询设计器 创建查询创建查询 数据查询可有效地对数据源进行各种组合 有效地筛选记录 管理数据 并对结果进行排序 下面用 fault dbc 数据库中的相关数据表 建立查询 并将查询保存名为 查询设计 fault QPR 操作步骤如下 1 打开前面已创建的项目 如陈练武 PJX 单击 数据 选项 选择 查 询 单击 新建 按钮 这时出现 新建查询 窗口 单击 新建查询 如图 3 1 所 示 24 图图 3 1 添加表和视图对话框添加表和视图对话框 2 在 添加表和视图 窗口中 将 fault dbc 数据库中的断层基本信息 表 fault base dbf 和断层位置控制表 fault control dbf 分别添加到 查询设计器 中 关闭 添加表和视图 对话框 出现 查询设计器 窗口 如图 3 2 所示 图图 3 2 查询设计器查询设计器 3 在 查询设计器 窗口中 选择 字段 选项卡 在 可用字段 栏中 将 Fault base fault id Fault base fault name Fault base expose time Fault base fau propery Fault base fau orient Fault base fau angle Fault base fau fall 和 fault control number fault control ctrlpos x fault control ctrlpos y分别添 加到 选定字段栏 中 如图 3 3 所示 4 单击 联接 选项卡 将 Fault base fault id 与 fault control fault id 的联 结类型改为左联接 Left Outer Join 5 单击 筛选 选项卡 在该选项卡中设置筛选条件 设置筛选条件为落 差 1 8 如图 3 4 所示 6 单击 排序论据 选项卡 在该选项卡中设置排序 设置排序依据为断 层落按升序排列 如图 3 5 所示 7 查询设计完成后 在 查询设计器 窗口中单击右键 在弹出的 输出 设置 命令 弹出 查询去向 对话框 如图 3 6 所示 单击 浏览 按钮 关闭 查 询去向 窗口 并返回到 查询设计器 8 单击 文件 菜单 选择 保存 命令 在弹出的 另存为 对话框中 输 25 入 查询设计 fault QPR 单击 常用 工具栏上的 运行 按钮 警叹号 在弹 出的 浏览 窗口中 显示出查询结果 查看项目管理器 可见查询设计 fault QPR 已加入到查询中 在项目管理 器中可方便地对该查询进行各种操作 图图 3 3 查询设计器查询设计器 的字段选项卡的字段选项卡 26 图图 3 4 查询设计器查询设计器 的筛选选项卡的筛选选项卡 图图 3 5 查询设计器查询设计器 的排序依据选项卡的排序依据选项卡 图图 3 6 查询去向查询去向 对话框对话框 27 图图 3 7 查询设计查询设计 fault QPR 运行结果运行结果 9 在 查询设计器 工具栏中 单击 SQL 命令按钮 即可查看该查询的 SELECT SQL 数据查询命令 如图 3 8 所示 图 3 8 SELECT SQL 查询命令 2 用 用 视图设计器视图设计器 创建本地视图创建本地视图 用 视图设计器 创建本地视图的过程与用 查询设计器 创建查询的过程基本 相似 请同学们按上述查询的要求 创建本地视图 实习四 五实习四 五 VFP 程序的设计与调试程序的设计与调试 一 实习目的一 实习目的 熟悉 Visual FoxPro 中常用命令的功能 能熟练地运用到编程中 学会 Visual FoxPro 中利用命令文件编程的方法以及命令文件的执行方 法 初步掌握 VFP 程序的设计与调试 掌握结构化程序设计的基本思想和常用方法 二 实习内容二 实习内容 学习利用 Visual FoxPro 中的命令编程 三 实验步骤三 实验步骤 1 1 编写一个测试程序运行次数的程序 编写一个测试程序运行次数的程序 方式一 利用内存变量文件记录运行次数 方式一 利用内存变量文件记录运行次数 28 set defa to E 陈练武 Progs set talk off set safe off clear all messagebox 这是一个测试程序运行次数的程序 0 16 提示信息 IF file PRG NUM mem restore from PRG NUM additive else runnum 0 save to PRG NUM all like runnum ENDIF runnum runnum 1 save to PRG NUM all like runnum num alltrim str runnum messagebox 该程序运行了 num 次 0 16 提示信息 RETU 方式二 利用表文件记录运行次数 方式二 利用表文件记录运行次数 set defa to E 陈练武 data set talk off set safe off close database all messagebox 这是一个测试程序运行次数的程序 0 16 提示信息 IF file PRG NUM DBF use PRG NUM excl else create table PRG NUM 运行次数 N 5 0 append blank replace 运行次数 WITH 1 ENDIF replace 运行次数 WITH 运行次数 1 num alltrim str 运行次数 messagebox 该程序运行了 num 次 0 16 提示信息 RETU 2 张丘建 张丘建 算经算经 百鸡问题百鸡问题 鸡翁一 值钱五 鸡母一 值钱三 鸡雏三 值钱一 问鸡翁 母 雏各几何 X Y Z 100 29 5X 3Y Z 3 100 set talk off clear for x 1 to 19 for y 1 to 33 z 100 x y if 5 x 3 x Z 3 100 x y z endif endfor endfor retu 3 打印 打印 99 乘法表乘法表 do while 方式方式 set talk off clear 1 1 SAY J 1 do while J 10 1 3 J 1 SAY str J 3 J J 1 ENDDO n 1 do while n 10 n 1 1 SAY str n 3 k 1 do while k n n 1 3 k 1 SAY STR k n 3 k k 1 enddo n n 1 enddo retu FOR 方式方式 set talk off clear 1 1 SAY for J 1 to 9 30 1 3 J 1 SAY str J 3 ENDFOR FOR n 1 to 9 N 1 1 SAY str n 3 FOR k 1 to n n 1 3 K 1 SAY STR K N 3 ENDFOR ENDFOR Retu 4 输入初值 输出 输入初值 输出 50 个能被个能被 37 整除的数整除的数 set talk off clear INPUT 请输入初值 TO a x a n 0 do while n 50 IF x 37 0 X n n 1 ENDIF x X 1 ENDDO RETU 5 输出一个用 输出一个用 组成的三角形组成的三角形 set talk off clear store 1 to a store 10 to b DO while a 5 y 1 do while y 2 a 1 a b say b b 1 y y 1 enddo b 10 a a a 1 enddo 6 编制一个能任意交换记录的程序 即要求对换某表中任意两个记录的 编制一个能任意交换记录的程序 即要求对换某表中任意两个记录的 31 内容 内容 首先创建一个表 如下例中的首先创建一个表 如下例中的 STUD DBF set talk off set safe off clear IF USED stud select stud else use E 陈练武 data stud ENDIF copy to E 陈练武 data temp use E 陈练武 data temp brow DO while T INPUT 请输入第一个记录号 TO JL1 INPUT 请输入第二个记录号 TO JL2 n fcount declare a n b n go jl1 scatter to a memo go jl2 scatter to b memo gather from a memo go jl1 gather from b memo brow wait 是否继续交换记录 Y N TO YN IF UPPER YN Y YN messagebox 是否继续交换记录 Y N 4 48 256 提示信息 IF YN 7 EXIT ENDIF ENDDO USE RETURN 7 某一数据表 成绩 某一数据表 成绩 DBF 有学号 有学号 C 8 平时 平时 N 3 考试 考试 N 3 三个字段 请编写可连续输入记录的程序 三个字段 请编写可连续输入记录的程序 Set defa to e 陈练武 DATA set talk off 32 set safe off IF USED 成绩 SELECT 成绩 ELSE USE 成绩 ENDIF do while t append blank 6 20 say 学 号 GET 学号 8 20 say 平 时 GET 平时 10 20 say 考 试 GET 考试 READ WAIT 是否继续输入 Y N TO YN IF UPPER YN Y EXIT ENDIF ENDDO BROW USE RETU 8 已知成绩 已知成绩 DBF 含有学号 平时 考试 等级等字段 前三个字段已存含有学号 平时 考试 等级等字段 前三个字段已存 有一些学生的数据 请以平时成绩有一些学生的数据 请以平时成绩 20 考试成绩 考试成绩 80 的比例等级 并填入的比例等级 并填入 等级字段 要求用条件 步长 扫描三种方式分别编程 等级字段 要求用条件 步长 扫描三种方式分别编程 步长步长 set defa to e 陈练武 data set talk off set safe off IF USED 成绩 SELECT 成绩 ELSE USE 成绩 ENDIF replace all 等级 with brow JLS RECCOUNT go top FOR i 1 to JLS do case case 平时 0 2 考试 0 8 90 33 DJ 优 case 平时 0 2 考试 0 8 75 and 平时 0 2 考试 0 8 60 and 平时 0 2 考试 0 8 90 DJ 优 case 平时 0 2 考试 0 8 75 and 平时 0 2 考试 0 8 60 and 平时 0 2 考试 0 8 75 DJ 及格 otherwise DJ 不及格 ENDCASE replace 等级 WITH DJ SKIP ENDDO BROW 34 USE RETU 扫描扫描 set defa to e 陈练武 data set talk off set safe off IF USED 成绩 SELECT 成绩 ELSE USE 成绩 ENDIF replace all 等级 with brow go top SCAN FOR EOF T do case case 平时 0 2 考试 0 8 90 DJ 优 case 平时 0 2 考试 0 8 75 and 平时 0 2 考试 0 8 60 and 平时 0 2 考试 0 8 75 DJ 及格 otherwise DJ 不及格 ENDCASE replace 等级 WITH DJ ENDSCAN BROW USE RETU 9 过程 过程 过程是一个能够完成一定功能的命令序列 过程的组织方式有两种 以一个独立的程序文件的形式出现 别的程序通过其程序文件名实现调用 以关键字 PROCEDURE 过程名 的形式出现在程序中 例 编程 当输入 1 时 计算 1 2 n 的和 当输入 2 时 计算 1 2 n 的积 程序代码如下 代码如下 过程过程 1 35 modify command CX1 prg 此语旬不包含在代码内 应在命令窗口输入 INPUT 请输入 n 值 TO N SS 0 FOR I 1 TO N SS SS I ENDFOR 1 N 的和为 ALLTRIM STR SS RETURN 过程过程 2 modify command CX2 prg 此语旬不包含在代码内 应在命令窗口输入 INPUT 请输入 n 值 TO N SS 1 FOR I 1 TO N SS SS I ENDFOR 1 N 的积为 ALLTRIM STR SS RETURN 主程序主程序 modify command ZCX prg 此语旬不包含在代码内 应在命令窗口输入 set defa to e 陈练武 PROGS set talk off clear INPUT 请输入选择 1 求和 2 求积 TO XZ IF XZ 1 DO CX1 ELSE DO CX2 ENDIF set talk on RETURN 10 过程文件 过程文件 当一个主程序拥有较多的过程调用时 一般将所有的过程组织起来 专门 用一个文件来存储 这种文件叫过程文件 要使用过程文件时 须先用命令 SET PROCEDUR TO 过程文件名 把过程文件打开 当主程序调用完 后 须用命令 SET PROCEDUM TO 关闭过程文件 例 把上例改写成过程文件 1 建立过程文件 在 命令 窗口键入 MODFY COMMAND GC PRG 36 2 在代码窗口中输入如下代码 RROCEDURE CXl INPUT 请输入 n 值 TO N SS 0 FOR I 1 TO N SS SS I ENDFOR 1 N 的和为 ALLTRIM STR SS RETURN PROCEDURE CX2 INPUT 请输入 n 值 TO N SS 1 FOR I 1 TO N SS SS I ENDFOR 1 N 的积为 ALLTRIM STR SS RETURN 3 按 CTRL W 组合键存盘退出 4 建立主程序文件 在 命令 窗口输入 MODIFY COMMAND ZCX PRG SET PROCEDURE TO GC set talk off clear INPUT 请输入选择 1 求和 2 求积 TO XZ IF XZ 1 DO CX1 ELSE DO CX2 ENDIF SET PROCEDURE TO set talk on RETURN 37 实习六 七实习六 七 表单设计表单设计 一 实习目的一 实习目的 掌握表单向导和表单设计器的使用 熟悉表单常用控件的使用 二 实习内容二 实习内容 1 使用表单向导设计表单 2 使用表单设计器设计表单 3 表单常用控件的使用 4 建立钻孔基本情况的自由表输入表单 5 建立断层输入的一对多表单 三 实习步骤三 实习步骤 表单 一词译自英文的 FORM 在 Visual BASIC 中译为 窗体 表单 可简单理解为地质数据库管理系统中的用户操作界面 1 钻孔基本情况录入表单的设计钻孔基本情况录入表单的设计 选择 文件 菜单下的 新建 选项 在 新建 对话窗口中选 表单 单选按钮 再选择 向导 命令按钮 选择 表单向导 图图 6 1 表单向导的字段选取表单向导的字段选取 步骤 1 字段选取 点击自由表右边的带有三个点的命令按钮 打 开自由表 zkqk dbf 在可用字段列表框中列

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论