本书是根据教育部高等教育司组织制订的《普通高等学校文科类专业计算机基础课程教学大纲(2000版)》的要求编写的。\r\n\r\n 本书以Visual FoxPro 6.0为背景,介绍了关系数据库管理系统的基础理论及系统开发技术。主要内容包括数据库系统概述、Visual FoxPro 6.0基础知识、数据表的创建和基本操作、数据库的设计与操作、结构化程序设计、面向对象程序设计、表单的建立与使用、结构化查询语言SQL、视图与实用表单开发、报表与标签技术、菜单技术和应用系统集成技术等12部分,配有丰富的例题、习题(包括上机练习),并附有解答。\r\n\r\n 本书可作为普通高等学校各专业计算机公共课的教材,还可作为计算机等级考试培训教材,也可供从事数据库开发的人员学习、参考。\r\n
\r\n
第1章 概述 \r\n\r\n 1. 1 数据库系统概述 \r\n\r\n 1. 1. 1 数据库系统基础知识 \r\n\r\n 1. 1. 2 现实世界的数据描述 \r\n\r\n 1. 1. 3 关系模型 \r\n\r\n 1. 1. 4 关系操作 \r\n\r\n 1. 1. 5 关系完整性 \r\n\r\n 1. 2 Visual FoxPro 6. 0系统概述 \r\n\r\n 1. 2. 1 数据库管理系统概述 \r\n\r\n 1. 2. 2 Visual FoxPro的发展历史 \r\n\r\n 1. 2. 3 Visual FoxPro的性能指标 \r\n\r\n 1. 2. 4 Visual FoxPro文件类型 \r\n\r\n 1. 2. 5 V5sMal FoxPro的安装. 卸载和启动 \r\n\r\n 1. 2. 6 书写约定 \r\n\r\n 1. 2. 7 引例 \r\n\r\n 1. 3 本章小结 \r\n\r\n 习题l \r\n\r\n 第2章 Visnal FoxPro基础知识 \r\n\r\n 2. 1 Visual FoxPro用户界面 \r\n\r\n 2. 1. 1 Visual FoxPro窗口 \r\n\r\n 2. 1. 2 操作方式 \r\n\r\n 2. 1. 3 菜单系统 \r\n\r\n 2. 1. 4 对话框 \r\n\r\n 2. 1. 5 常用控件 \r\n\r\n 2. 1. 6 命令语法规则 \r\n\r\n 2. 1. 7 系统设置 \r\n\r\n 2. 1. 8 获取帮助 \r\n\r\n 2. 2 编辑窗口 \r\n\r\n 2. 2. 1 编辑菜单 \r\n\r\n 2. 2. 2 格式菜单 \r\n\r\n 2. 2. 3 文本操作 \r\n\r\n 2. 2. 4 命令窗口 \r\n\r\n 2. 3 基本语法与规定 \r\n\r\n 2. 3. 1 数据类型 \r\n\r\n 2. 3. 2 常量 \r\n\r\n 2. 3. 3 变量 \r\n\r\n 2. 3. 4 常见函数及其应用 \r\n\r\n 2. 3. 5 表达式 \r\n\r\n 2. 4 本章小结 \r\n\r\n 习题2 \r\n\r\n 第3章 数据表的基本操作 \r\n\r\n 3. 1 Visual FoxPro项目管理器 \r\n\r\n 3. 1. 1 项目文件的建立 \r\n\r\n 3. 1. 2 项目管理器的界面 \r\n\r\n 3. 1. 3 项目管理器的使用 \r\n\r\n 3. 1. 4 创建自己的应用程序 \r\n\r\n 3. 2 创建自由表 \r\n\r\n 3. 2. 1 表的概念 \r\n\r\n 3. 2. 2 表结构设计 \r\n\r\n 3. 2. 3 表结构建立 \r\n\r\n 3. 2. 4 记录的键盘输入 \r\n\r\n 3. 2. 5 将已有数据添加到记录中 \r\n\r\n 3. 3 表的修改与使用 \r\n\r\n 3. 3. 1 表的打开/关闭 \r\n\r\n 3. 3. 2 查看记录 \r\n\r\n 3. 3. 3 维护表记录 \r\n\r\n 3. 3. 4 修改表结构 \r\n\r\n 3. 3. 5 在项目中添加/移去表 \r\n\r\n 3. 3. 6 使用多个工作区 \r\n\r\n 3. 4 表的索引与排序 \r\n\r\n 3. 4. 1 索引的类型 \r\n\r\n 3. 4. 2 索引文件的类型 \r\n\r\n 3. 4. 3 索引的建立. 引用与维护 \r\n\r\n 3. 4. 4 排序 \r\n\r\n 3. 5 查询与统计命令 \r\n\r\n 3. 5. 1 索引查询命令 \r\n\r\n 3. 5. 2 统计命令 \r\n\r\n 3. 6 数据共享 \r\n\r\n 3. 6. 1 数据共享 \r\n\r\n 3. 6. 2 数据导入 \r\n\r\n 3. 6. 3 数据导出 \r\n\r\n 3. 7 本章小结 \r\n\r\n 习题3 \r\n\r\n 第4章 数据库的设计与操作 \r\n\r\n 4. 1 数据库设计概述 \r\n\r\n 4. 1. 1 数据库设计的一般步骤 \r\n\r\n 4. 1. 2 确定数据库的用途 \r\n\r\n 4. 1. 3 确定需要的表文件 \r\n\r\n 4. 1. 4 确定需要的字段 \r\n\r\n 4. 1. 5 确定各表之间的关系 \r\n\r\n 4. 1. 6 完善数据库 \r\n\r\n 4. 2 创建数据库 \r\n\r\n 4. 2. 1 建立数据库文件 \r\n\r\n 4. 2. 2 在数据库中操作表 \r\n\r\n 4. 2. 3 在数据库中新建表 \r\n\r\n 4. 2. 4 多表关联 \r\n\r\n 4. 2. 5 表间临时关联 \r\n\r\n 4. 2. 6 表的连接 \r\n\r\n 4. 3 数据库表属性的设置 \r\n\r\n 4. 3. 1 字段显示属性的设置 \r\n\r\n 4. 3. 2 字段输入默认值的设置 \r\n\r\n 4. 3. 3 有效性规则 \r\n\r\n 4. 3. 4 '触发器'设置 \r\n\r\n 4. 3. 5 表名和表注设置 \r\n\r\n 4. 3. 6 参照完整性 \r\n\r\n 4. 4 数据库操作 \r\n\r\n 4. 4. 1 数据库的打开/关闭 \r\n\r\n 4. 4. 2 查看数据库中的表 \r\n\r\n 4. 4. 3 修改与查看数据库结构 \r\n\r\n 4. 4. 4 与数据库操作相关的命令与函数 \r\n\r\n 4. 5 在项目中添加/移去数据库 \r\n\r\n 4. 5. 1 添加数据库 \r\n\r\n 4. 5. 2 移去或删除数据库 \r\n\r\n 4. 6 使用多个数据库 \r\n\r\n 4. 6. 1 打开多个数据库 \r\n\r\n 4. 6. 2 当前数据库的设置 \r\n\r\n 4. 6. 3 作用域 \r\n\r\n 4. 7 本章小结 \r\n\r\n 习题4 \r\n\r\n 第5章 结构化程序设计 \r\n\r\n 5. 1 程序的编辑与使用 \r\n\r\n 5. 1. 1 程序文件的建立 \r\n\r\n 5. 1. 2 程序文件的保存 \r\n\r\n 5. 1. 3 程序文件的修改 \r\n\r\n 5. 1. 4 程序文件的执行 \r\n\r\n 5. 1. 5 程序调试 \r\n\r\n 5. 1. 6 程序编辑技巧 \r\n\r\n 5. 2 程序设计的一些常用命令 \r\n\r\n 5. 2. 1 基本输出命令'?|??' \r\n\r\n 5. 2. 2 基本输入命令 \r\n\r\n 5. 2. 3 格式输入输出命令 \r\n\r\n 5. 3 程序的基本控制结构 \r\n\r\n 5. 3. 1 顺序结构 \r\n\r\n 5. 3. 2 分支结构 \r\n\r\n 5. 3. 3 循环结构 \r\n\r\n 5. 4 过程与用户自定义函数 \r\n\r\n 5. 4. 1 过程 \r\n\r\n 5. 4. 2 用户自定义函数 \r\n\r\n 5. 4. 3 变量作用域 \r\n\r\n 5. 5 本章小结 \r\n\r\n 习题5 \r\n\r\n 第6章 面向对象程序设计 \r\n\r\n 6. 1 面向对象编程概述 \r\n\r\n 6. 1. 1 从面向过程到面向对象 \r\n\r\n 6. 1. 2 对象 \r\n\r\n 6. 1. 3 类 \r\n\r\n 6. 1. 4 多态和虚拟方法 \r\n\r\n 6. 2 Visual FoxPro中的类和对象 \r\n\r\n 6. 2. 1 Visual FoxPro的类概述 \r\n\r\n 6. 2. 2 容器与非容器 \r\n\r\n 6. 3 面向对象的程序设计方法 \r\n\r\n 6. 3. 1 程序设计方法 \r\n\r\n 6. 3. 2 对象程序设计 \r\n\r\n 6. 3. 3 类与事件程序设计 \r\n\r\n 6. 3. 4 类的继承 \r\n\r\n 6. 3. 5 事件驱动模型 \r\n\r\n 6. 4 本章小结 \r\n\r\n 习题6 \r\n\r\n 第7章 表单的建立与使用 \r\n\r\n 7. 1 表单的设计过程 \r\n\r\n 7. 2 操作表单 \r\n\r\n 7. 2. 1 表单创建与保存 \r\n\r\n 7. 2. 2 表单属性和方法 \r\n\r\n 7. 2. 3 表单集 \r\n\r\n 7. 2. 4 表单文件分析 \r\n\r\n 7. 2. 5 数据环境定义 \r\n\r\n 7. 2. 6 修改表单 \r\n\r\n 7. 2. 7 运行表单 \r\n\r\n 7. 3 控件应用初步 \r\n\r\n 7. 3. 1 表单控件 \r\n\r\n 7. 3. 2 创建表单与数据环境 \r\n\r\n 7. 3. 3 标签控件 \r\n\r\n 7. 3. 4 线条与形状控件 \r\n\r\n 7. 3. 5 文本框控件 \r\n\r\n 7. 4 按钮类控件 \r\n\r\n 7. 4. 1 命令按钮和按钮组 \r\n\r\n 7. 4. 2 单选按钮 \r\n\r\n 7. 4. 3 复选框 \r\n\r\n 7. 4. 4 微调控钮 \r\n\r\n 7. 5 框类控件 \r\n\r\n 7. 5. 1 列表框 \r\n\r\n 7. 5. 2 组合框 \r\n\r\n 7. 5. 3 编辑框 \r\n\r\n 7. 5. 4 页框 \r\n\r\n 7. 5. 5 网格 \r\n\r\n 7. 6 其它控件 \r\n\r\n 7. 6. 1 图像控件 \r\n\r\n 7. 6. 2 计时(Timer)控件 \r\n\r\n 7. 6. 3 超级链接(Hyperlink)控件 \r\n\r\n 7. 7 表单的调整和定制 \r\n\r\n 7. 7. 1 控件编辑 \r\n\r\n 7. 7. 2 控件排列 \r\n\r\n 7. 7. 3 使用自动格式生成器 \r\n\r\n 7. 7. 4 设置Tab顺序 \r\n\r\n 7. 8 本章小结 \r\n\r\n 习题7 \r\n\r\n 第8章 结构化查询语言 \r\n\r\n 8. 1 SQL语言概述 \r\n\r\n 8. 1. 1 SQL语言的特点 \r\n\r\n 8. 1. 2 数据定义语言 \r\n\r\n 8. 1. 3 数据操纵语言 \r\n\r\n 8. 1. 4 数据控制语言 \r\n\r\n 8. 2 SELECT命令基本用法 \r\n\r\n 8. 2. 1 基本查询 \r\n\r\n 8. 2. 2 带条件查询 \r\n\r\n 8. 2. 3 嵌套查询 \r\n\r\n 8. 2. 4 多表查询 \r\n\r\n 8. 2. 5 连接查询 \r\n\r\n 8. 3 查询结果处理 \r\n\r\n 8. 3. 1 排序输出 \r\n\r\n 8. 3. 2 重定向输出(INTO) \r\n\r\n 8. 3. 3 输出合并(UNION) \r\n\r\n 8. 3. 4 分组统计(GROUP)与筛选(HAVING) \r\n\r\n 8. 4 查询设计器 \r\n\r\n 8. 4. 1 查询设计器的应用 \r\n\r\n 8. 4. 2 交叉表应用 \r\n\r\n 8. 4. 3 查询结果输出 \r\n\r\n 8. 4. 4 查询设计器的表单设计 \r\n\r\n 8. 5 本章小结 \r\n\r\n 习题8 \r\n\r\n 第9章 视图与实用表单开发 \r\n\r\n 9. 1 视图设计 \r\n\r\n 9. 1. 1 视图 \r\n\r\n 9. 1. 2 视图设计器概述 \r\n\r\n 9. 1. 3 视图设计 \r\n\r\n 9. 1. 4 视图的应用 \r\n\r\n 9. 1. 5 视图的SQL语句 \r\n\r\n 9. 1. 6 视图与查询. 视图与表的比较 \r\n\r\n 9. 2 基于视图的表单设计 \r\n\r\n 9. 2. 1 成绩表单 \r\n\r\n 9. 2. 2 学生学籍表单 \r\n\r\n 9. 3 本章小结 \r\n\r\n 习题9 \r\n\r\n 第10章 报表与标签技术 \r\n\r\n 10. 1 报表格式设计初步 \r\n\r\n 10. 1. 1 报表设计器 \r\n\r\n lo. 1. 2 页面设置 \r\n\r\n lO. 1. 3 快速报表 \r\n\r\n 1O. 1. 4 存储与预览报表 \r\n\r\n 10. 2 报表设计 \r\n\r\n lO. 2. 1 报表格式概述 \r\n\r\n lO. 2. 2 域控件设计 \r\n\r\n 10. 2. 3 标签控件设计 \r\n\r\n 10. 2. 4 画线设计 \r\n\r\n 10. 2. 5 标题/总结设计 \r\n\r\n lO. 2. 6 分组设计 \r\n\r\n lO. 2. 7 圆角矩形控件设计 \r\n\r\n 10. 2. 8 OLE控件设计 \r\n\r\n 10. 3 报表输出 \r\n\r\n 10. 3. 1 菜单方式打印报表 \r\n\r\n 10. 3. 2 命令方式报表输出 \r\n\r\n 10. 4 实用报表设计 \r\n\r\n 10. 4. 1 学生登记卡报表设计 \r\n\r\n 10. 4. 2 创建课程表报表 \r\n\r\n 10. 4. 3 创建成绩单报表 \r\n\r\n 10. 5 标签设计 \r\n\r\n 10. 6 本章小结 \r\n\r\n 习题10 \r\n\r\n 第11章 菜单技术 \r\n\r\n 11. 1 菜单设计的一般步骤 \r\n\r\n 11. 2 操作菜单 \r\n\r\n 11. 2. 1 规划菜单系统 \r\n\r\n 11. 2. 2 菜单创建 \r\n\r\n 11. 2. 3 生成程序 \r\n\r\n 11. 2. 4 执行菜单程序 \r\n\r\n 11. 3 菜单设计技术 \r\n\r\n 11. 3. 1 菜单系统选择逻辑设计 \r\n\r\n 11. 3. 2 将系统菜单引入用户菜单系统 \r\n\r\n 11. 3. 3 顶层表单设计 \r\n\r\n 11. 3. 4 设计应用系统启动程序 \r\n\r\n 11. 4 本章小结 \r\n\r\n 习题11 \r\n\r\n 第12章 应用系统集成技术 \r\n\r\n 12. 1 错误处理技术 \r\n\r\n 12. 1. 1 错误处理 \r\n\r\n 12. 1. 2 对象错误事件处理 \r\n\r\n 12. 2 编译应用程序 \r\n\r\n 12. 2. 1 构造应用程序框架 \r\n\r\n 12. 2. 2 将文件加人到项目中 \r\n\r\n 12. 2. 3 连编应用程序 \r\n\r\n 12. 3 软件发布 \r\n\r\n l2. 3. 1 教学管理系统软件发布 \r\n\r\n l2. 3. 2 软件的安装与删除 \r\n\r\n 12. 4 应用程序框架 \r\n\r\n l2. 4. 1 应用程序向导 \r\n\r\n 12. 4. 2 应用程序生成器 \r\n\r\n 12. 4. 3 应用程序框架 \r\n\r\n 12. 5 应用软件开发过程概述 \r\n\r\n 12. 5. 1 可行性研究阶段 \r\n\r\n 12. 5. 2 需求分析阶段 \r\n\r\n 12. 5. 3 系统设计阶段 \r\n\r\n 12. 5. 4 实现阶段 \r\n\r\n 12. 5. 5 测试运行阶段 \r\n\r\n 12. 6 本章小结 \r\n\r\n 习题l2 \r\n\r\n 附录 \r\n\r\n 附录1 习题l答案 \r\n\r\n 附录2 习题2答案 \r\n\r\n 附录3 习题3答案 \r\n\r\n 附录4 习题4答案 \r\n\r\n 附录5 习题5答案 \r\n\r\n 附录6 习题6答案 \r\n\r\n 附录7 习题7答案 \r\n\r\n 附录8 习题8答案 \r\n\r\n 附录9 习题9答案 \r\n\r\n 附录l0 习题10答案 \r\n\r\n 附录11 习题11答案 \r\n\r\n 附录12 习题12答案 \r\n\r\n 参考文献 \r\n
\r\n
21世纪将是以信息科技和生命科技为核心的科技进步与创新的世纪, 也是继续深刻改变人类的生产和生活方式. 高速推动世界文明发展的世纪. 在信息化社会中, 计算机文化知识已成为人类知识结构中不可或缺的重要组成部分, 计算机是对人的一生都有重大用处的“通用智力工具”. 使用计算机已成为人类必需的技能, 那些不能掌握这一技能的现代文盲将会步履艰辛. “人才培养, 计算机教育必须先行”早已成为全社会的共识.
因此, 我国在中小学中都设置了以计算机使用为主要内容的信息技术课程. 但高中华业生中的多数近期还不能达到中学《计算机教学大纲》(信息技术课指导意见)的要求, 所以在他们进人大学后仍然需要在计算机的应用方面进行整合, 以便进一步提高. 而且在中学阶段教授的计算机知识, 也不可能满足大学生对计算机知识的基本需要. 因此在相当长的时期内, 大学各专业仍有开设计算机公共基础课的必要, 当然其起点和内容会有新的变化.
高校专业的涉及面很宽, 根据教育部高教司的有关规定, 文科类涵盖的学科门类大体上就有7门19类. 繁多的学科门类, 自然对计算机知识有着不同的需求. 比如, 艺术类. 体育类学生与经济类学生所需的计算机知识, 就有着很大的差别. 所以计算机教学还必须充分考虑到信息化社会对不同专业的特殊需要.
有鉴于此, 根据教育部高等教育司组织制订的《普通高等学校文科类专业计算机基础课程教学大纲(2000年版)》的公共基础和专业提高两部分的基本精神和要求, 我们组织编写了普通高等学校文科专业计算机系列教材, 由教育部高等学校文科计算机教学指导委员会副主任卢湘鸿教授担任主编. 该系列教材既包括了可供文科各专业使用的计算机基础课程的教材, 还提供了能够满足文史哲. 经济. 政法. 体育. 艺术各类专业特殊需要的计算机教材.
计算机科学技术的发展日新月异, 文科计算机教学也存在着继续探索和不断积累经验的过程, 因此对系列教材中的不足或错误, 敬请同行和读者批评指正.
编 者
2002年8月
于北京
虽然我国在中小学设置了以计算机使用为主要内容的信息技术课程, 但高中毕业生的计算机水平不一, 多数近期还不能达到中学《计算机教学大纲》(信息技术课指导意见)的要求, 他们学过的应用软件进大学后很需要整合. 加之大学涉及的学科专业宽广, 中学开设的计算机知识自然不能满足大学生的基本需求. 因此, 大学各专业仍有在中学计算机课基础之上开设计算机公共基础课的必要. 此外, 还必须立足于信息化社会对大学各专业毕业生在计算机应用方面的需求来考虑对他们的培养.
大学生在毕业后的工作和生活中都离不开在计算机网络平台上对文字. 表格. 图形. 图像. 声音. 动画等数据的处理, 这就是需要具有在某一操作系统的环境下应用办公软件和计算机网络来为工作和生活服务的能力. 因此, 在网络平台上对计算机的应用, 就成为计算机基础课教学的基础或核心内容, 网络既是这门课教学的基本手段, 也是教学的基本内容. 具体地说, 根据由教育部高等教育司组织制订的《普通高等学校文科类专业计算机基础课程教学大纲(2000)》(简称《大纲》)的要求, 计算机基础课程教学内容总的要求应包括以下模块:
(1)计算机及信息处理基础知识,
(2)操作系统,
(3)办公软件(文字. 表格. 声音和图像处理),
(4)计算机网络基础与应用,
(5)多媒体基础,
(6)计算机维护基础(包括常用工具软件),
(7)数据库系统基础(数据库技术),
(8)程序设计基础.
上述内容总体上可分为两部分. 第一部分是计算机应用基础, 这可以由操作系统. 办公应用软件和计算机网络应用组成. 第二部分是数据库和程序设计基础. 比如各校可酌情选学Visual FoxPro数据库技术与程序设计. 数据库软件Access应用或VisualBASIC语言程序设计中的一种.
本书是根据《大纲》的基本要求, 以微软Visual FoxPro 6. 0为背景编写的. Visual FoxPro 6. 0是优秀的小型数据管理系统软件, 具有强大的数据库管理系统功能, 提供了面向对象程序设计的各类开发工具. 该软件不仅可以用来开发小型数据库系统, 而且可以广泛用于大型数据库的前端开发, 在这些方面它可与Visual Basic, Power Builder等软件相媲美.
本书先从数据库基本原理. 概念出发, 介绍数据表, 以及数据库对象的建立. 查看. 修改. 使用与维护等操作, 然后在学习结构化程序设计的结构与基本方法后, 由浅入深地引入面向对象程序设计思想.
本书充分注意到系统性和完整性. 从最初的用户需求分析, 经数据库结构设计, 各种表单. 报表. 菜单, 软件集成, 到最后的软件发布, 除给出了每一步的操作细节, 还给出了软件清单. 此外还从软件工程角度, 举例讲述了数据库应用系统的开发过程和软件质量控制方法. 各章配有丰富的例题. 习题和上机练习, 并附有解答.
本书可以满足72一l08学时的教学需要, 其中l/2—2/3学时为上机操作. 可分3个层次安排, 第l层次安排36学时, 以掌握数据表. 数据库的基本知识. 数据表的创建. 修改. 排序索引和检索等基本使用为基本内容, 第2层次安排72学时, 除第1层次规定的内容外, 还需掌握结构化程序设计和结构化查询语言SQL等内容, 第3层次安排108学时, 除第2层次规定的内容外, 还需掌握面向对象程序设计. 表单的建立与使用视图与实用表单开发. 报表与标签技术. 菜单技术和应用系统集成技术.
本书可以满足高等学校各专业(也包括文科类专业)在计算机公共基础课Visual FoxPro 6. 0数据库技术与程序设计教学方面的基本需要. 还可作为全国计算机等级考试二级Visual FoxPro 6. O程序设计的培训教材, 也可供数据库开发人员参考.
本系列教材由卢湘鸿组织编写. 本书初稿主要由李吉梅编写, 参加书中某些内容. 习题和解答编写的有:卢湘鸿. 李亚弟. 陈勇军. 罗赛杰. 何伟红. 卢卫. 孟先进. 刘佳. 喻炜. 肖磊等. 全书最后由卢湘鸿审定.
本书虽然是作者在数据库教学与开发实践的基础上编写的, 但难免会有错误与不足之处, 敬请同行和读者批评指正.
编者
2002年8月