Size: px
Start display at page:

Download ""

Transcription

1 普通高等教育 十二五 重点规划教材计算机基础教育系列 Visual FoxPro 数据库应用技术 李丽萍安晓飞陈志国主编姜华张希伟副主编郑尚志梁宝华参编周进钱进参编 北京 科学出版社职教技术出版中心

2

3 内容简介本书根据教育部考试中心 全国计算机等级考试二级 Visual FoxPro 数据库程序设计考试大纲 要求编写, 以数据库应用系统开发知识为主线, 介绍了数据库的操作和可视化程序设计方法 全书包括 10 章和一个附录, 主要内容包括 Visual FoxPro 6.0 系统概述 数据与数据运算 数据库与数据表 SQL 关系数据库查询语言 查询与视图 表单设计与应用 程序设计基础 菜单设计与应用 报表设计与应用 应用系统开发实例, 附录中给出了全国计算机等级考试二级 Visual FoxPro 数据库程序设计最新考试大纲 为方便读者上机练习和考试需要, 同时编写了本书的配套教材 Visual FoxPro 数据库应用技术实验与题解 ( 安晓飞等主编, 科学出版社 ), 配套教材分为实验篇和考试篇两部分 本书可作为高等学校非计算机专业 Visual FoxPro 程序设计语言课程的教材, 也可作为全国计算机等级考试二级 Visual FoxPro 的辅导教材 图书在版编目 (CIP) 数据 Visual FoxPro 数据库应用技术 / 李丽萍, 安晓飞, 陈志国主编. 北京 : 科学出版社,2012 ISBN Ⅰ. 1V Ⅱ. 1 李 2 安 3 陈 Ⅲ. 1 关系数据库 - 数据库管理系统,Visual FoxPro- 高等学校 - 教材 Ⅳ. 1TP 中国版本图书馆 CIP 数据核字 (2012) 第 号责任编辑 : 陈晓萍宋丽 / 责任校对 : 耿耘责任印制 : 吕春珉 / 封面设计 : 东方人华平面设计部 印刷科学出版社发行各地新华书店经销 * 2012 年 2 月第一版开本 : / 年 2 月第一次印刷印张 :16 1/4 字数 : 定价 :28.00 元 ( 如有印装质量问题, 我社负责调换 ) 销售部电话 编辑部电话 版权所有, 侵权必究举报电话 : ; ; 科学出版社职教技术出版中心

4

5 本书编写人员 主编副主编参编参编 李丽萍安晓飞陈志国陆竞张博王晓艳李志刚刘心声丁茜司雨昌赵志刚杨婷婷黄海玉 科学出版社职教技术出版中心

6

7 前 言 Visual FoxPro 6.0 关系数据库系统是新一代小型数据库管理系统的杰出代表, 因其具有操作界面友好 功能强大 辅助开发工具丰富 语言简练 简单易学 兼容性完备 便于快速开发应用系统等特点, 深受广大用户的欢迎 Visual FoxPro 6.0 采用可视化 面向对象的程序设计方法, 大大简化了应用系统的开发过程 2007 年, 我们结合教学实践和数据库应用系统开发经验, 编写了本书的初稿 四年来, 得到许多使用者的厚爱 根据教育部高等学校非计算机专业计算机基础课程教学指导委员会最新提出的 关于进一步加强高等学校计算机基础教学的意见 中有关 大学计算机程序设计 类课程的教学要求, 兼顾教育部考试中心制定的全国计算机等级考试二级 Visual FoxPro 考试大纲, 综合广大读者的反馈信息, 对原稿从以下几个方面进行了修订 (1) 将项目管理器的使用调整到应用系统开发实例中介绍, 重点介绍使用菜单方式操作数据库 数据表 表单 菜单 报表等, 简单介绍命令操作方式, 删减了部分不常用的命令 (2) 调整了自由表和数据库表的顺序, 重点介绍数据库表的操作及应用, 删减了排序与索引小节部分内容 (3) 关系数据库查询语言是本书的重点和难点, 进一步调整了体系结构和内容, 增加了大量实例 (4) 调整了程序和表单的顺序, 先介绍表单设计与应用, 然后介绍程序设计基础 表单设计与应用部分丰富了实例, 增加了关于类控件的内容 程序设计基础部分降低了程序难度 删减了部分例题, 增加了和表单结合的例子 (5) 应用系统开发实例以学生熟悉的选课管理系统为例, 降低了程序设计的工作量, 使学生能够设计并实现该系统 本书知识体系结构合理, 内容深度适宜, 实例丰富, 突出应用, 注重学生实践能力的培养 考虑到高校学生参加全国计算机等级考试的需要, 本书内容覆盖了全国计算机等级考试大纲二级 Visual FoxPro 数据库程序设计规定的全部内容 全书包括 10 章和一个附录, 主要内容包括 Visual FoxPro 6.0 系统概述 数据与数据运算 数据库与数据表 SQL 关系数据库查询语言 查询与视图 表单设计与应用 程序设计基础 菜单设计与应用 报表设计与应用 应用系统开发实例等, 第 10 章的应用系统开发实例可使读者更加详细了解应用系统开发的一般步骤 基本方法和具体过程, 帮助读者快速掌握应用系统开发的基本技能 附录中给出了全国计算机等级考试二级 Visual FoxPro 数据库程序设计最新考试大纲 为方便读者上机练习和备考需要, 同时编写了本书的配套教材 Visual FoxPro 数据库应用技术实验与题解 ( 安晓飞等主编, 科学出版社 ), 配套教材分为实验篇和考试篇 两部分 本书可作为高等学校非计算机专业 Visual FoxPro 程序设计语言课程的教材, 也可作为全国计算机等级考试二级 Visual FoxPro 的辅导教材 科学出版社职教技术出版中心

8 ii Visual FoxPro 数据库应用技术 本书由李丽萍 安晓飞 陈志国任主编, 负责整体结构设计及统稿, 陆竞 张博 王晓艳 李志刚 刘心声 丁茜 司雨昌 赵志刚 杨婷婷 黄海玉参与了本书的编写 为方便教师教学和学生学习, 本书提供配套的多媒体电子课件和所有案例的相关素材, 如有需要, 请与作者 或科学出版社 ( 联系 由于编者水平有限, 经验不够丰富, 书中难免有错误和不足之处, 敬请广大读者批评指正 编者 2011 年 12 月

9 目 录 版前言...i 第 1 章 Visual FoxPro 6.0 系统概述 数据库系统的基本概念 关系数据库 关系模型 关系模型的相关概念 关系运算 Visual FoxPro 系统的特点 Visual FoxPro 的启动与退出 Visual FoxPro 的启动 Visual FoxPro 的退出 Visual FoxPro 的用户界面 Visual FoxPro 的工作方式和命令规则 Visual FoxPro 的工作方式 Visual FoxPro 的命令规则 Visual FoxPro 的系统环境配置 Visual FoxPro 的辅助设计工具 向导 设计器 生成器 Visual FoxPro 的常用文件类型 本章小结 习题 15 第 2 章数据与数据运算 数据类型 常量 变量 内存变量 数组变量 字段变量 运算符与表达式 算术运算符和数值表达式 字符运算符和字符表达式 24 科学出版社职教技术出版中心 日期时间运算符和日期时间表达式 关系运算符和关系表达式 25

10 iv Visual FoxPro 数据库应用技术 逻辑运算符和逻辑表达式 运算符优先级 常用函数 数值函数 字符函数 日期和时间函数 数据类型转换函数 测试函数 其他函数 本章小结 习题 36 第 3 章数据库与数据表 数据库的创建与操作 创建数据库 打开和关闭数据库 修改数据库 有关数据库的基本操作命令 数据库表的建立与操作 设计表结构 建立表结构 输入记录 数据库表的操作 打开表 浏览表记录 修改表记录 删除与恢复表记录 记录指针定位 关闭表 有关数据表的基本操作命令 表的索引 索引的类型 索引文件 建立索引 和索引操作相关的命令 数据完整性 实体完整性与主关键字 域完整性与约束规则 参照完整性与表之间的关系 59

11 目录 v 3.6 自由表 自由表与数据库表间的联系与区别 建立自由表 向数据库中添加自由表 从数据库中移去或删除表 数据库表与自由表转换的操作命令 多表同时使用 多工作区 数据工作期 表间的临时关联 本章小结 习题 69 第 4 章 SQL 关系数据库查询语言 SQL 概述 SQL 的数据查询 SELECT 语句格式 简单查询 条件查询 排序查询 查询去向 计算查询 分组查询 联接查询 空值查询 嵌套查询 集合的并运算 SQL 的数据定义 创建表 修改表结构 删除表 SQL 的数据操纵 插入记录 删除记录 更新记录 本章小结 习题 99 科学出版社职教技术出版中心

12 vi Visual FoxPro 数据库应用技术 第 5 章查询与视图 查询 利用查询设计器创建查询 利用查询向导创建查询 查询的使用 视图 创建本地视图 视图与数据更新 使用命令定义视图 查询与视图的区别 本章小结 习题 116 第 6 章表单设计与应用 面向对象程序设计的概念 对象与类 对象及其对象的访问和调用 表单设计器 表单设计器环境 控件的操作与布局 数据环境 创建表单 使用表单向导创建表单 使用表单设计器创建表单 表单的属性 事件和方法 表单属性 常用的事件与方法 创建新的属性和方法 基本型控件 标签控件 命令按钮控件 文本框控件 编辑框控件 图像控件 复选框控件 列表框控件 组合框控件 计时器控件 微调控件 151

13 目录 vii 6.6 容器型控件 命令组控件 选项组控件 表格控件 页框控件 自定义类 创建自定义类 使用自定义类 本章小结 习题 163 第 7 章程序设计基础 程序文件的建立和运行 程序文件的建立与编辑 程序文件的运行 程序中的注释 常用交互语句 程序的基本结构 顺序结构 选择结构 循环结构 多模块程序设计 模块的定义和调用 内存变量的作用域 程序的调试 调试器环境 设置断点 本章小结 习题 191 第 8 章菜单设计与应用 菜单设计基础 菜单分类及结构 菜单设计步骤 下拉式菜单设计 菜单结构设计 指定菜单项的任务或代码 生成并运行菜单 菜单的显示 200 科学出版社职教技术出版中心 为表单添加菜单 201

14 viii Visual FoxPro 数据库应用技术 8.3 快捷菜单设计 本章小结 习题 205 第 9 章报表设计与应用 创建简单报表 报表的布局 使用报表向导创建报表 创建快速报表 使用报表设计器设计报表 报表工具栏 报表的数据源和带区 数据分组和多栏报表 设计分组报表 设计多栏报表 报表输出 预览报表 打印报表 本章小结 习题 220 第 10 章应用系统开发实例 系统开发的一般过程 项目管理器 项目的基本操作 在项目中连编应用程序 使用应用程序生成器 应用程序向导 应用程序生成器 应用程序生成实例 系统设计 设计和实现各功能模块 本章小结 习题 241 附录 2011 年全国计算机等级考试二级 Visual FoxPro 数据库程序设计考试大纲 243 参考文献 246

15 第 1 章 Visual FoxPro 6.0 系统概述 学习目标 掌握数据库系统的有关概念 掌握关系模型的基本概念和运算 掌握 Visual FoxPro 的开发环境 了解 Visual FoxPro 的向导 生成器和设计器 了解 Visual FoxPro 的常用文件类型 数据库技术是 20 世纪 60 年代末兴起的一种数据管理方法, 是一门研究数据管理的技术, 主要研究如何存储 使用和管理数据 随着信息技术的发展, 数据库技术在各个领域得到广泛应用 Visual FoxPro 关系数据库管理系统是小型关系数据库管理系统的杰出代表, 它采用可视化 面向对象的程序设计方法, 大大简化了应用系统的开发过程 本章主要介绍数据库系统的基本概念 关系模型 关系运算和 Visual FoxPro 的开发环境 1.1 数据库系统的基本概念 数据库系统是计算机数据管理技术发展的一个重要阶段, 它可以实现数据的有效管理和高效存取 数据库系统的主要特点是实现了数据的共享, 减少数据冗余, 同时保证了数据和应用程序的独立性, 大大减少了应用程序的开发和维护代价 1. 数据库 数据库 (Database,DB) 是数据的集合, 具体指按照一定的结构模型, 组织 存储在一起 能为多个用户共享的 与应用程序相对独立的 存储在计算机存储设备上的相关的数据集合 数据的结构模型建立起了数据之间的联系 数据的结构模型有层次模型 网状模型和关系模型三种 2. 数据库管理系统 数据库管理系统 (Database Management System,DBMS) 是用于管理数据库的计算机系统软件, 负责数据库的数据组织 数据操纵 数据维护和数据服务等 数据库管理系统是数据库系统的核心, 在操作系统的支持下, 用户建立 使用 维护 管理和控制数据库都要通过数据库管理系统进行 Visual FoxPro Oracle SQL Server 等都是常用的数据库管理系统 科学出版社职教技术出版中心

16 2 Visual FoxPro 数据库应用技术 3. 数据库系统数据库系统 (Database System,DBS) 是以数据库管理系统为核心的完整的运行实体, 由数据库 数据库管理系统 数据库管理员 硬件平台和软件平台等构成 其中, 硬件平台包括计算机和网络 ; 软件平台包括操作系统 系统开发工具以及接口软件等 4. 数据库应用系统数据库应用系统 (Database Application System,DBAS) 是在数据库系统基础上进行应用开发而形成的一个应用系统 它由数据库系统 应用软件和应用界面组成 其中, 应用软件是由数据库管理系统和系统开发工具开发生成的, 应用界面是由可视化工具开发生成的 1.2 关系数据库 关系模型关系模型是以二维表的形式表示实体及实体间联系的数据模型 二维表简称为表, 一个二维表就是一个关系, 一个关系的逻辑结构就是一张二维表 表 1-1 是用关系模型表示的学生表 表 1-1 学生表 学号 姓名 性别 民族 出生日期 专业 入学成绩 王欣 女 汉 外语 张美芳 女 苗 外语 杨永丰 男 汉 外语 关系模型的相关概念 1. 属性在二维表中, 每一列称为一个属性, 如表 1-1 中的学号 姓名 性别 民族等 在 Visual FoxPro 系统的数据表中, 属性对应为字段 2. 元组在二维表中, 数据按行组织, 每一行称为一个元组 表 1-1 中包含了三个元组 在 Visual FoxPro 系统的数据表中, 元组对应为记录 3. 域在二维表中, 每个属性的取值范围是有限定或要求的, 属性的取值范围称为域 例如, 表 1-1 中的性别只能是 男 或者是 女 因此, 性别属性的域就是集合 {" 男 ",

17 第 1 章 Visual FoxPro 6.0 系统概述 3 " 女 "} 相似地, 专业属性的域也应该是符合具体实际情况的专业名称的集合 4. 键在关系表中能唯一标识元组的最小属性集称为键 (Key), 也可称为码或关键字 5. 主键在关系表中可以有多个键, 用户选取使用的键为主键, 也可称为主关键字 表 1-1 中的学号就是学生表的主键 关系运算 1. 投影投影 (Projection) 运算是一种纵向的操作, 即从列的角度进行运算, 它可以根据用户的要求从关系中选取若干个属性 ( 字段 ) 组成一个新的关系 新关系所包含的属性的个数往往比原来的关系少, 或者属性的排列顺序不同 投影运算可以改变关系的结构 例如, 对 学生 关系中的 专业 属性进行投影运算, 得到无重复元组的新关系 学生 1, 如图 1-1 所示 2. 选择 学生 关系投影运算后得到的新关系 学生 1 图 1-1 投影运算示意图 选择 (Selection) 运算是一种横向的操作, 即从行的角度进行运算, 它可以根据用户的要求从关系中筛选出满足一定条件的元组 ( 记录 ) 选择运算可以改变关系表中元组的个数, 但不影响关系的结构 例如, 在 学生 关系中选择出 性别 为 男 的学生, 得到新的关系 学生 2, 如图 1-2 所示 3. 联接 科学出版社职教技术出版中心 联接 (Join) 运算是两个关系的横向结合操作, 它可以根据用户的要求将两个关系拼接成满足联接条件的新关系

18 4 Visual FoxPro 数据库应用技术 学生 关系选择运算后得到的新关系 学生 2 图 1-2 选择运算示意图 例如, 设有 学生 和 选课 两个关系, 查询学生的学号 姓名 课程号和成绩信息 其中, 学号 姓名是关系 学生 的属性, 课程号 成绩是关系 选课 的属性, 所以要把两个关系联接起来, 联接条件是两个关系中相等的学号, 得到新的关系 学生 3, 如图 1-3 所示 学生 关系 选课 关系新关系 学生 3 图 1-3 联接运算示意图 1.3 Visual FoxPro 系统的特点 Visual FoxPro 是用于数据库管理的软件, 它具有向导设计 生成器以及控件等多种可视化工具, 支持面向对象的程序设计方法, 增强了面向 Internet 的技术和功能 它支持与其他应用程序共享数据 交换数据, 支持与大多数后台数据库的客户机 / 服务器应用程序的连接 它的主要特点如下 1. 良好的用户界面 Visual FoxPro 系统利用了 Windows 平台下的图形用户界面的优势, 借助系统提供的菜单 窗口界面, 通过菜单 工具或命令方式, 可在系统窗口或 命令 窗口完成对数据管理等各种操作 2. 数据库的操作更加方便在 Visual FoxPro 系统中, 所有的数据都是以表的形式出现, 系统可以创建多种类型

19 第 1 章 Visual FoxPro 6.0 系统概述 5 的表, 如数据库表或自由表 ; 可定义各个表之间的关系, 使建立的表更加符合数据库的实际应用 ; 可利用 数据库容器 将相对独立的数据表 查询 视图等有机地封装在一起, 允许多个用户在同一个数据库中同时创建或修改对象 3. 强大的查询与管理功能 Visual FoxPro 的系统命令和语言强大, 拥有近 500 条命令 200 余条函数 ; 提供了标准的数据库语言 结构化查询语言 (SQL 语言 ); 允许用户通过语言或可视化设计工具来操作数据库, 可有效地访问索引文件中的数据, 快速精确地从大批量的记录中检索数据, 极大地提高了数据查询的效率 4. 支持面向对象的程序设计 Visual FoxPro 不仅支持传统的面向过程式程序设计, 还支持面向对象的可视化程序设计, 借助 Visual FoxPro 的对象模型, 可以充分使用面向对象程序设计的所有功能, 包括类 继承 封装 多态和子类等, 真正实现了面向对象程序设计的能力 5. 开发与维护更加方便 Visual FoxPro 系统提供了向导 生成器 设计器等多种界面的操作工具, 这些工具为数据的管理和程序设计提供了灵活简便的手段 利用 向导, 可以一步步地引导用户快速建立一个数据表 查询或表单 ; 利用 生成器, 用户不用编写代码, 就可在程序中加入特定功能的控件和修改控件的属性 ; 利用 设计器, 用户可以快速设计一个表 表单 报表等构件, 帮助用户以简单方式快速完成各种操作 ; 可以借助 项目管理器 创建和集中管理应用程序中的任何元素, 对项目及数据实行更强的控制 6. 集成开发实现了数据共享 Visual FoxPro 提供了一个集成式开发环境, 通过 OLE( 对象链接与嵌入 ) 技术, 可将 Visual FoxPro 与包括 Word 和 Excel 在内的其他微软的应用软件实现应用的集成 在 Visual FoxPro 环境下, 用户可在窗体或表单中链接其他软件中的对象, 可对其进行直接编辑 ; 可将来自于其他应用程序的数据源导入 Visual FoxPro 的表中, 也可将 Visual FoxPro 表的数据以一定文件格式导出到其他应用程序中, 实现数据共享 7. 支持网络应用 Visual FoxPro 支持 Internet 技术和 WWW 数据库的设计, 可以很容易地创建与 Internet 一起使用的应用程序 新引入的网格图像文件格式 GIF 和 JPEG 可进一步增强应用程序界面的吸引力 Visual FoxPro 的启动 1.4 Visual FoxPro 的启动与退出 启动 Visual FoxPro 有多种方法, 通常采用以下三种方式 科学出版社职教技术出版中心

20 6 Visual FoxPro 数据库应用技术 (1) 从 开始 菜单启动 选择 开始 菜单 程序 Microsoft Visual FoxPro 6.0 Microsoft Visual FoxPro 6.0, 进入 Visual FoxPro 系统 (2) 双击桌面上的 Visual FoxPro 图标 建议常用 Visual FoxPro 的用户在 Windows 桌面上建立其快捷方式 (3) 双击与 Visual FoxPro 关联的文件 打开 我的电脑, 找到 Visual FoxPro 创建的用户文件, 如表文件 项目文件 表单文件等, 双击这些文件都能启动 Visual FoxPro 系统, 同时打开这些文件 第一次启动 Visual FoxPro 时, 屏幕上会弹出欢迎窗口, 如图 1-4 所示 在欢迎窗口中可以根据需要选择具体的功能项目, 也可以选择 关闭此屏 项目或直接关闭此窗口, 进入 Visual FoxPro 的系统主界面 如果不想在以后的启动过程中出现欢迎窗口, 则可将 以后不再显示此屏 项目的复选框选中 图 1-4 Visual FoxPro 的欢迎窗口 Visual FoxPro 的退出退出 Visual FoxPro 系统经常使用以下几种方法 (1) 选择 文件 退出 命令 (2) 在系统主界面窗口中单击 关闭 按钮 (3) 在 命令 窗口中输入 QUIT 命令, 并按 <Enter> 键 (4) 按 <Alt+F4> 组合键 1.5 Visual FoxPro 的用户界面 Visual FoxPro 启动后, 打开主界面窗口, 如图 1-5 所示 主界面窗口包括标题栏 菜单栏 常用 工具栏 状态栏 命令 窗口和主窗口工作区几个组成部分 1. 标题栏标题栏包含系统程序图标 主界面标题 Microsoft Visual FoxPro 最小化按钮 最大化按钮和关闭按钮

21 第 1 章 Visual FoxPro 6.0 系统概述 7 标题栏 常用 工具栏 菜单栏 工作区 命令 窗口 状态栏 图 1-5 Visual FoxPro 的主窗口 2. 菜单栏 Visual FoxPro 的菜单栏包含文件 编辑 显示 格式 工具 程序 窗口和帮助八个菜单选项 菜单项随窗口操作内容不同而有所增加或减少 3. 工具栏 Visual FoxPro 提供了 11 种工具栏, 默认情况下只显示 常用 工具栏, 其他 10 种工具栏在进行相应的设计时会自行显示出来, 也可以根据需要激活或关闭一个工具栏, 方法如下 : (1) 选择 显示 工具栏 命令, 弹出如图 1-6 所示 工具栏 对话框, 重复单击某工具栏名称, 其左端标识为, 表示被激活 ; 其左端标识为空白框, 表示被关闭 (2) 右击任何一个工具栏的空白处, 弹出如图 1-7 所示的 工具栏 快捷菜单, 单击某工具栏名称, 其左端出现 表示被激活, 其左端没有标识表示被关闭 4. 命令 窗口 图 1-6 工具栏 对话框图 1-7 工具栏 快捷菜单 科学出版社职教技术出版中心 命令 窗口是 Visual FoxPro 系统命令编辑 执行的窗口, 当用户在 命令 窗口 中键入正确的命令并按 <Enter> 键之后, 系统会执行该命令 另外, 在用户采用菜单方式

22 8 Visual FoxPro 数据库应用技术 操作时, 每当某个操作完成后, 系统也会自动把与该菜单操作对应的命令显示在 命令 窗口中 显示在 命令 窗口中的命令可以被再次执行, 只需将插入点光标置于需要再次执行的命令之中, 并按 <Enter> 键即可 命令 窗口可通过鼠标拖动标题栏改变位置, 鼠标拖动边框改变大小 使用 格式 菜单, 可以改变 命令 窗口的字体 行间距等 通常用以下方法显示或隐藏 命令 窗口 (1) 选择 窗口 隐藏 命令, 可以隐藏 命令 窗口 选择 窗口 命令窗口 命令, 可以打开 命令 窗口 (2) 单击 常用 工具栏中的 命令窗口 按钮, 显示或隐藏 命令 窗口 5. 工作区工作区用来显示命令或程序的执行结果 在 命令 窗口输入命令并按 <Enter> 键后, 命令的执行结果立即在工作区窗口显示 在 命令 窗口中执行 CLEAR 命令可以清除工作区显示的内容 6. 状态栏状态栏位于窗口的最底部, 用于显示某一时刻的工作状态 可以显示当前工作区中表文件的名称 表所属数据库的名称 表中当前记录的记录号 表中的记录总数 表中当前记录的共享状态等内容 1.6 Visual FoxPro 的工作方式和命令规则 Visual FoxPro 的工作方式 Visual FoxPro 支持两种工作方式 : 交互操作方式和程序执行方式 1. 交互操作方式交互操作方式通过人机对话来执行各种操作 系统提供了以下两种交互方式 1) 命令方式命令方式是通过在 命令 窗口中输入并执行合法的命令来完成各种操作 这种操作要求用户要熟悉 Visual FoxPro 系统命令格式及功能, 才能完成命令的操作 2) 可视化操作方式可视化操作方式是利用菜单 工具栏 向导 设计器 生成器等工具方便快捷地完成各种操作 利用可视化操作, 用户无需记忆繁多的命令格式, 即可完成指定的任务 交互式方式的优点是简单 不需要编程 运行结果清晰直观, 但是这种方式不宜解决复杂的数据处理问题 2. 程序执行方式程序执行方式是将能够完成一定任务的命令组织在一起, 保存到扩展名为.PRG 的

23 第 1 章 Visual FoxPro 6.0 系统概述 9 程序文件中, 然后通过命令执行该程序文件, 完成指定的任务 这种方式不仅运行效率高, 而且可重复执行 对于用户而言, 只要了解程序的运行步骤和运行过程中的人机交互要求, 就可以使用程序 Visual FoxPro 的命令规则命令方式是 Visual FoxPro 中常用的工作方式,Visual FoxPro 中的命令都有固定的格式, 必须按相应的格式和语法规则书写和使用, 否则系统无法识别和执行 1.Visual FoxPro 命令的基本格式 < 命令动词 > [< 范围子句 >] [< 条件子句 >] [< 字段名表子句 >] 1) 命令格式中语法标识符的意义和用法 (1)<>: 必选项, 表示命令中必须选择该项, 不可省略 (2)[ ]: 可选项, 表示可根据实际需要选用或省略该项内容 (3) : 任选项, 表示根据实际需要任选且必选其中一项内容 以上符号表示各选项在语句中的地位 在输入命令时, 不能包含上述这些语法标识符 2) 命令动词命令动词一般是要执行操作所对应的英文单词, 是一条命令中必不可少的部分 一条命令必须以命令动词开头, 当此命令动词超过四个字母时, 在使用时可以只写前四个字母, 系统会自动识别 3) 范围子句范围子句用于限定命令操作的记录范围 范围子句包括如下四种选择范围 (1)ALL: 对当前表中所有记录操作 (2)RECORD <n>: 仅对当前表中记录号为 n 的记录操作 (3)NEXT <n>: 对当前表中从当前记录开始的连续 n 条记录操作 (4)REST: 对当前表中从当前记录开始到表尾的所有记录操作 一般情况下, 如无特殊说明则默认 ALL 为操作范围, 但也有一些命令例外 4) 条件子句条件子句的作用是以指定的逻辑条件为依据, 从表中选择符合条件的记录 它对应 于关系运算的选择运算 条件子句有两种 : (1)FOR < 条件 >: 对指定范围内所有满足条件的记录进行操作 (2)WHILE < 条件 >: 在指定范围内按顺序对满足条件的记录操作, 直到遇到第一个不满足条件的记录为止 < 条件 > 由一个逻辑表达式或关系表达式构成, 其值为逻辑型数据 科学出版社职教技术出版中心

24 10 Visual FoxPro 数据库应用技术 5) 字段名表子句字段名表子句用来限制只对指定的若干个字段进行操作 字段名表子句的格式如下 : [FIELDS] < 字段名表 > 其中, 字段名表由若干个以逗号分隔的字段名构成, 默认情况下是对当前表中的所有字段进行操作, 但不包括备注型字段和通用型字段 2.Visual FoxPro 命令的书写规则 (1) 命令必须以命令动词开头, 命令中其他各子句的次序可以任意排列 (2) 命令动词与子句之间 各子句之间以空格分隔 (3) 命令中的字符不区分大小写 (4) 命令中的所有字符和标点符号都必须在英文半角状态下输入 (5) 一条命令可以分成多行书写, 用分号 ; 作为续行标志 1.7 Visual FoxPro 的系统环境配置 Visual FoxPro 安装完成后, 系统自动用一些默认值来设置系统环境, 用户可以根据自己的需要, 对这些系统的默认配置进行调整, 定制自己的开发环境 用户可以在 选项 对话框中设置系统环境, 也可以使用 SET 命令设置系统环境 1. 使用 选项 对话框设置 1) 设置默认目录 Visual FoxPro 默认的工作目录是安装 Visual FoxPro 系统时用户和系统所确定的安装目录, 即存放 Visual FoxPro 系统文件的目录, 通常是 C:\Program Files\Microsoft Visual Studio\Vfp98 在使用 Visual FoxPro 中产生的所有文件将存储在此目录下, 需要打开的文件也在此目录下查找 为了避免与系统文件混淆, 用户应定义自己的工作目录, 将用户创建的文件存储在自己的目录下 选择 工具 选项 命令, 弹出 选项 对话框, 单击 文件位置 选项卡, 如图 1-8 所示 在此对话框中, 可以设置默认目录 例 1.1 设置默认目录为 D:\ 教学管理系统 (1) 在 D 盘建立 教学管理系统 文件夹 (2) 在图 1-8 所示的 选项 对话框的 文件位置 选项卡中选中 默认目录 项, 单击 修改 按钮, 弹出 更改文件位置 对话框, 如图 1-9 所示 (3) 选中 使用 (U) 默认目录 复选框, 在 定位 (L) 默认目录 的文本框中输入默认目录 : d:\ 教学管理系统 ; 也可以单击文本框右侧的 浏览 按钮, 在弹出的 选择目录 对话框中选择 d:\ 教学管理系统 目录 单击 确定 按钮, 返回 选项 对话框的 文件位置 选项卡 (4) 在 选项 对话框中, 单击 设置为默认值 按钮, 然后单击 确定 按钮, 将当前设置保存为 Visual FoxPro 的默认 ( 永久 ) 设置

25 第 1 章 Visual FoxPro 6.0 系统概述 11 图 1-8 选项 对话框的 文件位置 选项卡 图 1-9 更改文件位置 对话框 在 选项 对话框中设置相应的选项后, 单击 确定 按钮, 将所做的设置保存为只在当 前工作期有效, 即仅在本次 Visual FoxPro 运行期间有效, 重新启动 Visual FoxPro 后, 所做的设 置无效 单击 设置为默认值 按钮, 再单击 确定 按钮, 将设置保存为 Visual FoxPro 的默 认 ( 永久 ) 设置, 重新启动计算机后, 所做的设置仍然有效 2) 设置日期和时间的显示方式 Visual FoxPro 默认的日期显示方式为 mm/dd/yy, 默认的时间显示方式为 12 小时制, 可以根据需要重新设置时期和时间的显示方式 例 1.2 设置日期的显示格式为 年月日, 设置日期的分隔符为 -, 年份用 4 位表示, 时间的显示格式为 24 小时的表示形式 在如图 1-8 所示的 选项 对话框中, 选中 区域 选项卡, 弹出 区域 选项卡对话框, 如图 1-10 所示 在 日期格式 下拉列表中选 年月日 ; 选中 日期分隔符 科学出版社职教技术出版中心

26 12 Visual FoxPro 数据库应用技术 复选框, 在右侧的文本框中输入 - ; 选中 年份 复选框 ; 选中 24 小时 选项, 单 击 确定 按钮 图 1-10 选项 对话框的 区域 选项卡 2. 使用 SET 命令设置 Visual FoxPro 提供了一系列以 SET 开头的命令, 用户可以随时在 命令 窗口中输入执行这些命令, 改变系统当前的环境配置参数 例如 : SET DATE TO ANSI && 将系统的日期格式设置为 yy.mm.dd SET DEFAULT TO d:\ 教学管理系统 && 将系统的默认目录指定为 d:\ 教学管理系统 如果使用 SET 命令配置环境, 只对当前工作期有效, 即仅在本次 Visual FoxPro 运行期间有 效, 重新启动 Visual FoxPro 后, 所做的设置无效 1.8 Visual FoxPro 的辅助设计工具 为了便于应用程序的开发,Visual FoxPro 提供了三种功能强大的支持可视化设计的辅助工具 : 向导 设计器和生成器 向导向导是一种快捷设计工具, 它通过对话框的形式, 引导用户分步完成某一指定任务,

27 第 1 章 Visual FoxPro 6.0 系统概述 13 如创建表 建立查询和视图 创建表单 设置报表格式等, 均可使用相应的向导工具完成 向导工具的最大特点是操作简单, 并能快速完成编辑任务 但向导只能完成比较简单的任务, 在实际应用中往往不能满足用户的需要, 用户可以利用向导先创建一个比较简单的任务框架, 然后再用相应的工具进行修改和完善 Visual FoxPro 提供了 20 多种向导, 表 1-2 中列出了一些主要的向导及其功能 表 1-2 Visual FoxPro 主要向导一览表 向导名称数据库向导表向导本地视图向导表单向导一对多表单向导报表向导一对多报表向导标签向导 主要功能创建包含指定表或视图的数据库创建包含所指定字段的表用本地数据创建视图为单个表创建操作数据的表单为两个相关表创建表单, 在表单的表格中显示子表的字段用一个数据表或视图创建报表创建包括一组父表的记录及相关子表的记录的报表用一个数据表或视图创建标签 设计器 设计器是 Visual FoxPro 以图形界面提供给用户的设计工具, 它比向导具有更强大的功能, 用户可以通过它创建并定制数据库结构 数据表结构 表单结构 报表格式和应用程序组件等 Visual FoxPro 提供了 10 多种设计器, 表 1-3 中列出了一些主要的设计器及其功能 数据库设计器 表设计器 查询设计器 视图设计器 表单设计器 报表设计器 标签设计器 菜单设计器 数据环境设计器 设计器名称 生成器 表 1-3 Visual FoxPro 主要设计器一览表 主要功能 创建或修改数据库, 管理数据库中的表 视图和表之间的联系 创建或修改表及表中的字段 索引, 进行有效性检查 创建或修改查询, 可以选择字段 排序 筛选记录 分组等 创建或修改可更新的查询, 即视图, 可以选择字段 排序 筛选记录等 创建或修改表单或表单集 创建或修改用于显示或打印数据的报表 创建或修改标签的内容和布局 创建或修改应用程序的菜单或快捷菜单 创建或修改表单或报表所使用的数据源, 包括表 视图等 生成器是带有一系列选项卡的对话框, 用于用户访问并设置所选对象的属性, 表单上的部分控件可以使用生成器设置属性 生成器可以简化创建和修改用户界面程序的设计过程, 提高软件开发的质量 Visual FoxPro 提供了 10 多种生成器, 表 1-4 中列出了一些主要的生成器及其功能 科学出版社职教技术出版中心

28 14 Visual FoxPro 数据库应用技术 表 1-4 Visual FoxPro 主要生成器一览表 生成器名称表单生成器文本框生成器编辑框生成器列表框生成器组合框生成器表格生成器命令按钮组生成器选项按钮组生成器参照完整性生成器 主要功能生成表单, 方便向表单中添加字段和其他控件生成用来输入和编辑内容的文本框生成用来编辑多行文本的编辑框生成可供选择选项的列表框生成下拉式的可供选择选项的组合框生成指定数据源的数据表格生成包含多个命令按钮的命令按钮组生成包含多个选项按钮的选项按钮组在数据库表之间创建参照完整性并设置相应的触发器 以上三类辅助工具都以简单直观的人机交互操作方式完成应用程序的界面设计任务, 同时所有上述工具的设计结果都能够自动生成 Visual FoxPro 代码, 改变了用户逐条编写程序 反复调测程序的繁琐工作方式 上述工具的具体操作方法与示例, 将在以下各章陆续介绍 1.9 Visual FoxPro 的常用文件类型 在 Visual FoxPro 中, 文件是按照不同的格式存储在磁盘上的, 根据文件的组织形式及数据特点,Visual FoxPro 的文件可以划分为几十种类型, 在此列出最常用的文件的扩展名和类型 Visual FoxPro 常用文件类型见表 1-5 表 1-5 常用文件类型 扩展名 文件类型 扩展名 文件类型.DBC 数据库文件.DCT 数据库备注文件.DBF 数据表文件.FPT 数据表备注文件.PJX 项目文件.PJT 项目备注文件.PRG 源程序文件.FXP 源程序的目标文件.CDX 数据表复合索引文件.IDX 数据表单索引文件.SCX 表单文件.SCT 表单备注文件.SPR 表单的源程序文件.SPX 表单的目标程序文件.FRX 报表文件.FRT 报表备注文件.LBX 标签文件.LBT 标签备注文件.MNX 菜单文件.MNT 菜单备注文件.MPR 菜单的源程序文件.MPX 菜单的目标程序文件.QPR 查询的源程序文件.QPX 查询的目标程序文件.DCX 数据库索引文件.FMT 屏幕格式文件.MEM 内存文件.TXT 文本文件.APP 应用程序文件.EXE 可执行文件.VCX 可视类库文件.VCT 可视类库备注文件

29 第 1 章 Visual FoxPro 6.0 系统概述 本章小结 本章重点讲述了数据库系统的有关概念, 描述了关系数据模型中的关系 属性 元组 键等定义, 介绍了关系模型选择 投影 联接等操作运算,Visual FoxPro 系统的功能和特点, 详细地讲述了 Visual FoxPro 系统的窗口 菜单 工具栏等开发环境,Visual FoxPro 的工作方式和命令规则, 并简单介绍了向导 设计器 生成器的功能和作用, 总结了 Visual FoxPro 常用文件类型 1.11 习题 一 选择题 1. 用二维表来表示实体与实体之间联系的数据模型称为 A. 实体 - 联系模型 B. 层次模型 C. 网状数据模型 D. 关系模型 2.Visual FoxPro 支持的数据模型是 A. 层次数据模型 B. 关系数据模型 C. 网状数据模型 D. 树状数据模型 3.Visual FoxPro 中的记录对应于关系中的 A. 元组 B. 属性 C. 数据库 D. 关键字 4. 退出 Visual FoxPro 的方法是 A. 从 文件 菜单中选择 退出 选项 B. 用鼠标左键单击 关闭 窗口按钮 C. 在 命令 窗口键入 QUIT 命令, 然后按 <Enter> 键 D. 以上方法都可以 5. 下列能显示命令窗口的是 A. 用鼠标单击 显示 菜单的 工具栏 选项 B. 通过 窗口 菜单下的 命令窗口 选项来切换 C. 直接按 <Alt+F4> 组合键 D. 以上方法都可以 6. 在 选项 对话框的 文件位置 选项卡中可以设置 二 填空题 A. 表单的默认大小 B. 默认目录 C. 日期和时间的显示格式 D. 程序代码的颜色 1. 在 Visual FoxPro 中, 显示或隐藏工具栏, 应选择 菜单下的工具栏项 2.Visual FoxPro 的命令工作方式是通过 窗口实现的 科学出版社职教技术出版中心 3. 打开 选项 对话框之后, 要设置日期和时间的显示格式, 应当选择 选项

30 16 Visual FoxPro 数据库应用技术 对话框的 选项卡 4. 在 Visual FoxPro 中, 一个关系存储为一个文件, 其扩展名是.DBF, 称为 5. 在 Visual FoxPro 中, 把相互之间存在联系的表放到一个数据库中统一管理, 数据库文件的扩展名是 6. 在 Visual FoxPro 中, 把目录 D:\VFP 设置为默认目录的命令是 三 思考题 1. 什么是数据库 数据库管理系统 数据库系统和数据库应用系统? 2. 什么是键 主键? 它们的作用是什么? 3.Visual FoxPro 工作主界面主要由哪几部分组成? 4.Visual FoxPro 通常有哪几种工作方式? 简述各种工作方式的特点 5.Visual FoxPro 向导 设计器和生成器的作用是什么?

31 第 2 章数据与数据运算 学习目标 理解数据类型 常量 变量的概念与表示方法 熟练掌握各类型运算符及表达式的使用方法 熟练掌握常用函数 在 Visual FoxPro 系统中, 除需要处理表中的数据外, 还需要处理程序运算中的数据 根据计算机系统处理数据的形式来分,Visual FoxPro 将数据分为常量 变量 函数和表达式 4 种形式, 每种形式又可以包含各种不同的数据类型 常量和变量是数据运算和处理的基本对象 ; 函数是一段程序代码, 用来进行一些特定的运算或操作 ; 表达式是由常量 变量 函数和运算符等构成的式子 本章将介绍数据类型 常量 变量 运算符与表达式和函数 2.1 数据类型 Visual FoxPro 共有 13 种数据类型, 如表 2-1 所示 这些数据类型均可用于表中的字段变量 其中, 数值型 字符型 日期型 日期时间型 逻辑型和货币型六种数据类型既可于表中的字段, 又可用于常量 内存变量和表达式, 称为基本数据类型 ; 而双精 表 2-1 Visual FoxPro 的数据 ( 字段 ) 类型 数据类型 表示宽度符号 ( 字节 ) 说明 数值型 (Numeric) N 最多 20 整数或小数, 如学生的入学成绩 字符型 (Character) C 最多 254 字母 数字和汉字等一切可打印的 ASCII 字符, 如学生姓名 日期型 (Date) D 8 由年 月 日构成, 如学生的出生日期 日期时间型 (Date Time) T 8 由年 月 日 时 分 秒构成, 如学生上课时间 逻辑型 (Logical) L 1 值为真或假, 如是否为党员 货币型 (Currency) Y 8 带有货币符号的数值, 如商品价格 双精度型 (Double) B 8 双精度数值, 常用于精度要求很高的数据 浮点型 (Float) F 最多 20 类似于数值型 整型 (Integer) I 4 不含小数点的数值类型, 如商品数量 备注型 (Memo) M 4 不定长的字母 数字 文本, 如个人简历 通用型 (General) G 4 OLE 对象 ( 存储声音 图像 文档 电子表格等 ) 二进制字符型 C 最多 254 与字符型数据类似, 以二进制存储 二进制备注型 M 4 与备注型数据类似, 以二进制存储 科学出版社职教技术出版中心

32 18 Visual FoxPro 数据库应用技术 度型 浮点型 整型 备注型 通用型 二进制字符型和二进制备注型七种数据类型只能用于表中字段变量 2.2 常量 常量是指在命令或程序中引用的具体值, 在命令操作或程序运行过程中始终保持不变 不同类型的常量有不同的书写格式 Visual FoxPro 的常量类型有数值型 字符型 日期型 日期时间型 逻辑型和货币型六种 1. 数值型常量 数值型常量用来表示一个具体的数, 即通常所说的常数 由数字 0~9 小数点和正负号组成 例如, 表示正数, 表示负数 数值型常量也可以用科学记数法表示 例如 : 在计算机中表示为 7.9E5, 在计算机中写成 3.14E-7 2. 字符型常量 字符型常量由中英文字符 各种符号 空格和数字组成, 使用时需要用定界符括起来 定界符包括英文半角单引号 双引号或方括号, 必须成对出现, 即前后定界符一致 在字符型常量中, 一个汉字占两个字节, 其他字符占一个字节 例如, 正确的字符型常量 :'hello' "123" [ 大学 ] 错误的字符型常量 :" 计算机 ] [ 二级 考试 不含任何字符的空串 ("") 和包含一个空格的字符串 ("") 是不一样的, 空串里没有任何内容, 长度为 0, 而空格的长度是 1 3. 日期型常量 日期型常量用于表示具体日期, 定界符是一对花括号 {} 花括号内用斜杠(/) 将年 月 日三部分内容分隔开 斜杠 (/) 是默认的分隔符, 其他的合法分隔符还有减号 (-) 句点(.) 和空格等 1) 传统日期格式与严格日期格式日期型常量分为传统日期格式和严格日期格式, 如表 2-2 所示 在程序或命令中通常使用严格日期格式 在书写严格日期格式时一定要在前边加脱字符 (^) 表 2-2 传统日期格式与严格日期格式 类别表示方式说明举例 传统日期格式 mm/dd/yy 其中,mm 是用两位表示月份,dd 是用两位表示日,yy 是用两位表示年 {05/01/11} 表示 2011 年 5 月 1 日 严格日期格式 {^yyyy-mm-dd} 可以确切地表示一个日期而不会受到命令语句的任何影响 {^ } 表示 2011 年 5 月 1 日

33 2) 影响日期格式的设置命令 (1) 设置日期格式 : 第 2 章数据与数据运算 19 格式 SET DATE [TO] AMERICAN ANSI MDY DMY YMD 功能 设置日期显示的格式 命令中各个短语所定义的日期格式如表 2-3 所示 例如, 使用 SET DATE TO YMD 命令, 则日期将以 yy/mm/dd 的格式显示 表 2-3 设置日期显示的格式 短语格式短语格式 AMERICAN mm/dd/yy ANSI yy.mm.dd MDY mm/dd/yy DMY dd/mm/yy YMD (2) 设置日期分隔符 : yy/mm/dd 格式 SET MARK TO [ 日期分隔符 ] 功能 用于设置显示日期型数据时使用的分隔符 若执行 SET MARK TO 没有指 定任何分隔符, 表示恢复系统默认的斜杠 (/) 分隔符 说明 分隔符为字符型常量, 即两边需要加定界符 (3) 设置年份的位数 : 格式 SET CENTURY ON OFF 功能 用于设置显示日期型数据时是否显示世纪 说明 ON 表示日期输出时显示世纪值, 即年份占 4 位 OFF 为默认值, 表示日期输出时不显示世纪值, 即年份占 2 位 例 2.1 设置不同的日期格式 在 命令 窗口中输入下列四条命令, 并分别按 <Enter> 键执行 : SET CENTURY ON && 设置 4 位数年份 SET MARK TO "-" && 设置日期分隔符 (-) SET DATE TO YMD && 设置年 月 日格式?{^2011/05/01} 输出结果 : 继续输入 : SET CENTURY OFF && 设置 2 位数年份 SET MARK TO && 设置日期分隔符为系统默认 (/) SET DATE TO AMERICAN && 设置日期格式为 mm/dd/yy?{^ } 输出结果 :05/01/11 4. 日期时间型常量 日期时间型常量用来表示具体的日期及时间, 分为传统日期时间型常量和严格日期时间型常量 严格日期时间型常量的格式为 :{^yyyy-mm-dd,[hh[:mm[:ss]][a p]]} 科学出版社职教技术出版中心

34 20 Visual FoxPro 数据库应用技术 严格日期时间型常量由前面的日期和后面的时间组成, 日期和时间之间用逗号或空格隔开, 其中 hh mm 和 ss 分别表示小时 分和秒,a 代表上午,p 代表下午, 默认为上午 5. 逻辑型常量逻辑型常量用来表示逻辑值, 只有逻辑真 (True) 和逻辑假 (False) 两个值, 定界符为圆点 例如,.T..t..Y. 和.y. 表示逻辑真值 ;.F..f..N. 和.n. 表示逻辑假值 6. 货币型常量货币型常量常用来表示货币的值 货币型常量与数值型常量的主要不同之处就是前面有货币符号 $, 如 $18,$ 变量 变量是指在命令操作或程序运行过程中其值可以改变的量 Visual FoxPro 中的变量分为内存变量 数组变量 字段变量和系统变量 内存变量内存变量是存放单个数据的内存单元, 是独立于数据库之外存在于内存中的临时存储变量, 用来存放程序运行中的原始数据 中间结果和最后结果 除非用内存变量文件保存内存变量值, 否则, 当退出 Visual FoxPro 系统后, 内存变量的值会从系统中清除 内存变量类型取决于变量值的类型, 主要有字符型 数值型 货币型 逻辑型 日期型和日期时间型六种 1. 内存变量命名规则每一个内存变量都必须有一个固定的名称, 以标识该内存单元的存储位置 内存变量名以字母或汉字开头, 可由字母 ( 不区分大小写 ) 汉字 下划线和数字组成, 其长度最多可达到 254 个字符 2. 内存变量赋值内存变量在使用之前必须先赋值, 如果没赋值也没预先定义则不能使用 给内存变量赋值的同时也建立了内存变量 Visual FoxPro 常用以下两种命令来创建内存变量并为其赋值 格式 1 < 内存变量名 >=< 表达式 > 格式 2 STORE < 表达式 > TO < 内存变量名表 > 功能 将表达式的值赋给内存变量 说明 格式 1 中等号一次只能给一个变量赋值 格式 2 中 STORE 命令可以同时给若干个变量赋予相同的值, 各内存变量名之间用英文半角逗号分开 可以通过对内存变量重新赋值来改变内存变量内容或类型

35 第 2 章数据与数据运算 21 例 2.2 内存变量的赋值 A=123 && 创建数值型变量 A, 值为 123( 一百二十三 ) A="123" && 创建字符型变量 A, 值为 "123"( 一二三 ) B={^2011/05/01} && 创建日期型变量 B, 值为 {^2011/05/01} STORE 20 TO X,Y && 创建数值型变量 X 和 Y, 值为 20 STORE 命令不能同时把多个不同的值分别赋给若干变量 例如, STORE 20,30 TO X,Y && 这个命令的使用方式是错误的 应改为 X=20 Y=30 3. 内存变量值的输出 内存变量值的输出可使用? 或?? 命令来实现 格式 1?[ < 表达式 >] 格式 2?? < 表达式 > 功能 计算表达式的值, 并把结果显示在屏幕上 说明 使用? 命令, 显示结果在下一行输出 ; 使用?? 命令, 显示结果在当前行输出 如果只执行不带任何表达式的? 命令, 则输出一个空行 例 2.3 输出变量的值 STORE 15 TO m,n && 创建变量 m,n 数据类型为数值型, 值为 15? m,n+1?? m,n-1 && 不换行, 在前面的结果后直接输出 输出结果 : 继续输入 :? m,n+1 && 换行显示? m,n-1 输出结果 : 变量显示 格式 1 LIST MEMORY [LIKE < 通配符 >] 格式 2 DISPLAY MEMORY [LIKE < 通配符 >] 科学出版社职教技术出版中心

36 22 Visual FoxPro 数据库应用技术 功能 显示内存变量的当前信息, 包括变量名 作用域 取值和类型 格式 1 不暂停连续显示, 直到显示结束 格式 2 分屏显示, 每显示一屏暂停, 等待用户按任意键继续显示 选用 LIKE 短语只显示与通配符相匹配的内存变量 Visual FoxPro 命令中的通配符包括 * 和?, * 表示任意多个字符,? 表示任意一个字符 例如,a* 可以表示 ab abc abfedf 等所有以 a 开头的变量 ;b? 可以表示 b bf bg be 等由一个或两个字母组成并且第一个字母是 b 的变量 5. 内存变量清除变量的清除指释放不再使用的变量所占的内存空间, 被清除的变量不能在程序中继续使用 清除变量可以使用以下命令 格式 1 CLEAR MEMORY 格式 2 RELEASE < 内存变量名表 > 功能 格式 1 清除所有内存变量, 格式 2 清除指定内存变量 数组变量数组变量是名字相同而下标不同的一组有序内存变量的集合, 其中每一个内存变量都是这个数组的一个元素, 每个数组元素在内存中独占一个内存单元, 相当于一个简单的内存变量 为了区分不同的数组元素, 每个数组元素都是通过数组名和下标来访问的 数组下标的个数称为数组的维数, 只有一个下标的数组称为一维数组, 有两个下标的数组称为二维数组 数组必须先定义后使用 1. 数组的定义 格式 DIMENSION < 数组名 1>(< 下标 1>[,< 下标 2>])[,< 数组名 2> ] DECLARE < 数组名 1>(< 下标 1>[,< 下标 2>][,< 数组名 2> ] 功能 定义一个或多个一维或二维数组 说明 (1) 数组下标的起始值为 1,< 下标 1> 用来指定数组第一维的最大下标,< 下标 2> 用来指定数组第二维的最大下标, 缺省 < 下标 2> 时, 定义的是一维数组 (2) 当数组被定义为二维时, 也能以一维下标方式进行访问 这是由于在内存中, 二维数组元素是按行次序线性排列的 例如 : DIMENSION X(3),Y(2,3) 图 2-1 一维 二维数组对应关系 表示定义了一维数组 X 和二维数组 Y, 其中一维数组 X 中包含三个元素, 即 X(1) X(2) 和 X(3); 二维数组 Y 中包含六个元素, 即 Y(1,1) Y(1,2) Y(1,3) Y(2,1) Y(2,2) 和 Y(2,3), 二维数组 Y 也可表示为 Y(1) Y(2) Y(3) Y(4) Y(5) 和 Y(6), 对应关系如图 2-1 所示

37 第 2 章数据与数据运算 数组的赋值数组定义后, 自动为每一个元素赋逻辑假值.F. 可以向内存变量赋值一样, 通过 STORE 命令或 = 为整个数组或个别数组元素重新赋值 同一数组中的各个元素可以存放不同类型的数据 例 2.4 DIMENSION X(3),Y(2,3) X=3 && 将数组 X 的所有元素都赋值为 3 X(1)=.T. && 将数组 X 的第 1 个元素赋值为.T. Y(2,1)=X && 将数组 Y 的第 4 个元素赋值为数组 X 的第 1 个元素 STORE " 北京 " TO Y(2) && 将数组 Y 的第 2 个元素赋值为 " 北京 " 数组变量可以不带下标使用, 当它被赋值时, 表示该数组中的所有元素 ; 当将它的值赋给其他变量时, 表示该数组中的第一个元素 字段变量 字段变量就是数据表中的字段, 变量名就是表中的字段名 例如, 学生表中的 学号 姓名 等字段就是字段变量 由于内存变量存放在独立于数据库文件的临时存储单元中, 所以内存变量可以和字段变量重名 在这种情况下, 字段变量具有更高的优先级 在两种变量同名的前提下, 如果用户想访问内存变量, 需要在内存变量名前加 M. 或 M-> 作为前缀, 例如, M. 学号 或 M-> 学号, 但对字段变量赋值时不能加 M. 或 M-> 作为前缀, 字段变量可以加表名作为自己的前缀, 例如, 学生表中的 学号 姓名 字段, 可以表示成 学生. 学号 学生. 姓名 例 2.5 有一个如图 2-2 所示的 学生 数据表, 指针指向第一条记录 执行以下命令 : 学号 =" "? 学号输出结果 : 继续输入 :?M. 学号输出结果 : 假设指针指向第二条记录, 执行以下命令 :? 学生. 学号, 学生. 姓名 图 2-2 学生 数据表 科学出版社职教技术出版中心

38 24 Visual FoxPro 数据库应用技术 输出结果 : 张美芳字段变量的值随着记录指针的变化而变化, 字段变量的值取自表中当前记录的某一列 ( 字段 ) 的值 字段变量的值不能用 = 来赋值, 例如, 学生. 学号 =" ", 是错误的语句, 字段变量的值只能通过 Visual FoxPro 的 REPLACE 语句或 SQL 的 UPDATE 语句来赋值 2.4 运算符与表达式 表达式是由常量 变量 函数通过运算符连接起来的特定公式, 它的运算结果是单一的值, 即表达式的值 根据运算结果数据类型的不同, 表达式可以分为数值表达式 字符表达式 日期时间表达式 关系表达式和逻辑表达式, 各类表达式都有自己特定的运算符, 且存在一定的运算顺序, 也称为运算优先级 算术运算符和数值表达式 格式 < 数值 1>< 算术运算符 1>< 数值 2> [< 算术运算符 2>< 数值 3> ] 说明 数值表达式由算术运算符 数值型常量 变量 函数和圆括号组成 运算结果类型 : 数值型 当数值表达式存在两种以上的运算, 运算是分先后次序的, 即优先级 数据运算的优先级和运算符号的含义如表 2-4 所示 表 2-4 算术运算符 优先级 运算符 说 明 1 ( ) 形成表达式的子表达式 2 ^ 或 ** 数学中的乘方, 如 2^3 表示 2*2*2 3 * / % 乘 除 求余, 如 11%3 结果为 加 减 例 2.6 求余运算符 % 运算示例? 10%3,-10%3,10%-3,-10%-3 输出结果 : 求余运算符 % 同 节数值函数中的 MOD() 函数 返回两数值相除的余数, 返回值的符号与除数的符号相同 两数值同号, 直接求余数再取正负号 ; 两数值异号, 用除数绝对值减余数绝对值再取正负号 字符运算符和字符表达式 格式 < 字符串 1>< 字符运算符 1>< 字符串 2>[< 字符运算符 2>< 字符串 3> ] 说明 表达式由字符型常量 变量 函数和运算符 + - 组成, + - 两

39 第 2 章数据与数据运算 25 个运算符的优先级相同, 表示的含义都是字符串的连接, 只是在处理前串尾部空格上有所区别 运算结果类型 : 字符型 字符运算符如表 2-5 所示 表 2-5 字符运算符运算符名称说明 + 连接前后两个字符串首尾连接形成一个新的字符串 - 空格移位连接连接前后两个字符串, 并将前字符串的尾部空格移到合并后的新字符串尾部 例 2.7 字符串运算示例 ( 注 : 表示空格 ) a="hello " b="teacher! "? a+b, a-b 输出结果 :hello teacher! helloteacher! 日期时间运算符和日期时间表达式 日期型数据是比较特殊的数据类型, 只能进行 + 和 - 运算 此外, 在格式上还有严格的限制, 一些合法的组合如表 2-6 所示 表 2-6 日期时间表达式格式 格式运算后的数据类型运算后的结果 < 日期 >+ 天数日期型指定日期若干天后的日期 < 日期 >-< 天数 > 日期型指定日期若干天前的日期 < 日期 >-< 日期 > 数值型两个指定日期相差的天数 < 日期时间 >+ 秒数日期时间型指定日期时间若干秒后的日期时间 < 日期时间 >- 秒数日期时间型指定日期时间若干秒前的日期时间 < 日期时间 >-< 日期时间 > 数值型两个指定日期时间相差的秒数 例 2.8 日期运算示例?{^ }+5 && 输出结果 :05/06/11? {^ }-{^ } && 输出结果 :30? {^ }-{^ } && 输出结果 : 关系运算符和关系表达式 格式 < 表达式 1>< 关系运算符 >< 表达式 2> 说明 相同类型的数据之间的比较 运算结果类型 : 逻辑型 关系表达式也叫做简单逻辑表达式, 由关系运算符将两个运算对象连接起来 关系 科学出版社职教技术出版中心

40 26 Visual FoxPro 数据库应用技术 表达式的运算结果是逻辑型 关系运算符的作用是比较两个同类型表达式的大小 关系运算符的含义如表 2-7 所示 表 2-7 关系运算符及含义 运算符 含 义 运算符 含 义 > 大于 = 等于 >= 大于等于 == 字符串精确比较 < 小于 <>, #,!= 不等于 <= 小于等于 $ 子串包含测试 运算符 $ 和 == 仅可用于字符型数据, 其他运算符适用于任何类型数据 ; 在比较运算时, 前后两个运算对象的类型必须相同 1. 数值 货币和日期时间型数据的比较数值 货币和日期时间型数据的比较规则如表 2-8 所示 表 2-8 数值 货币 日期时间型数据的比较规则 比较类型 规 则 举 例 数值和货币型数据 按数值大小 5>-4;$12<$34 日期和日期时间型数据 越早的日期时间越小 {^ }>{^ } 逻辑型数据 逻辑真大于逻辑假.T.>.F. 2. 字符型数据的比较对两个字符串进行比较时, 系统会从左到右逐个字符进行比较, 当发现两个对应的字符不同时, 根据两个字符在字母表中的顺序判断两个字符串的大小 在 Visual FoxPro 中, 默认按 pinyin( 拼音次序 ) 进行排序, 其排序的规则是 : 空格 <0~9<a<A<b<B <z<z< 汉字 对常用的汉字而言, 根据它们的拼音顺序决定大小 还有另外两种排序方式 machine( 机器次序 ) 和 stroke( 笔画次序 ), 可以在 工具 选项 菜单命令中进行设置 例 2.9 默认排序设置下字符串的比较? "abd"<"abc", "b"<"b", " 十 "<" 三 " 输出结果 :.F..T..F. 使用 == 对字符串进行的是精确比较, 即只有当两个字符串完全相同时 ( 包括空格 各字符的位置 ), 运算结果才为真, 否则为假 使用 = 对字符串进行比较, 结果和 SET EXACT ON OFF 命令有关, 如表 2-9 所示 既可以通过命令进行设置, 也可以通过 选项 对话框的 数据 选项卡进行设置

41 第 2 章数据与数据运算 27 表 2-9 ON/OFF 状态下 = 的比较结果 状态功能举例 OFF ON 只要右边的字符串与左边的字符串的前半部分相匹配, 运算结果就为真 比较是以右边的字符串的长度为基准的, 右面的字符串结束就终止比较 ( 默认状态 ) 在进行比较之前, 系统会在较短的字符串的尾部加空格, 使之和较长的字符串长度相同, 再进行比较 "abc"="a","abc"="ab" 和 "abc"="abc" 运算结果都为真, 但 "a"="abc","bc"="abc" 这些都为假 "ab "="ab" 为真,"ab"="a" 为假 3. 子串包含运算 $ 格式 < 字符串表达式 1>$< 字符串表达式 2> 说明 如果字符串表达式 1 是字符串表达式 2 的一个子串, 即一部分, 结果为真, 否则为假 例 2.10 子串包含运算示例?" 教育学 "$" 高等教育学 "," 教学 "$" 高等教育学 "," 高等教育学 "$" 教育学 " 输出结果 :.T..F..F 逻辑运算符和逻辑表达式 逻辑运算符有三个, 分别是.NOT.( 逻辑非 ).AND.( 逻辑与 ) 和.OR.( 逻辑或 ), 也可以省略两边的圆点 它们的优先级依次是 NOT AND OR 逻辑运算的操作数是逻辑型数据, 运算的结果也是逻辑型数据 逻辑运算的运算规则如表 2-10 所示 ( 其中 R 和 S 是两个逻辑型数据 ) 表 2-10 逻辑运算的运算规则 R S.NOT.R R.AND.S R.OR.S.T..T..F..T..T..T..F..F..F..T..F..T..T..F..T..F..F..T..F..F. 逻辑表达式经常用在判断条件的语句中 运算符优先级 在每一类运算中, 各个运算符都有自己的优先级 当不同类别的运算符出现在同一个表达式中, 其运算符的优先级从高到低依次为算术运算符 > 字符 日期和时间运算符 > 关系运算符 > 逻辑运算符圆括号具有最高的优先级, 可以任意改变运算顺序 相同优先级的运算符按从左到右的顺序进行运算 例 2.11 不同运算符优先级示例? 22>12 AND "tianjin"<"beijing"or.t.<=.f. 运算结果 :.F. 科学出版社职教技术出版中心

42 28 Visual FoxPro 数据库应用技术 运算过程如图 2-3 所示 图 2-3 运算符优先级示例 2.5 常用函数 函数是一段程序代码, 用来进行一些特定的运算或操作 函数有若干个自变量, 即运算对象, 但只有一个运算结果, 即函数值 函数可以用函数名加一对圆括号加以调用, 函数调用的一般形式为 : 函数名 ([ 参数 1],[ 参数 2], ) Visual FoxPro 提供了几百种函数 按函数提供的方式, 可将函数分为用户自定义函数和系统函数, 用户自定义函数由用户根据需要自行编写 ; 系统函数是由 Visual FoxPro 提供的内部函数, 用户可以随时调用 按函数运算处理的对象及结果的数据类型, 可将函数分为数值函数 字符函数 日期和时间函数 数据类型转换函数 测试函数以及其他函数等 数值函数 1. 取绝对值函数 格式 ABS(< 数值表达式 >) 功能 返回指定数值表达式的绝对值 例 2.12?ABS(-20),ABS(10-20) 输出结果 : 最大值 最小值函数 格式 MAX MIN(< 表达式 1>,< 表达式 2>, ) 功能 返回 n 个表达式中的最大值 ( 或最小值 )

43 第 2 章数据与数据运算 29 说明 所有表达式的类型必须相同 例 2.13?MAX(10,20),MIN(-10,-20,-30),MAX("a","B"," 西 ") 输出结果 :20-30 西 3. 求余数函数 格式 MOD(< 数值表达式 1>,< 数值表达式 2>) 功能 返回两数值相除的余数, 返回值的符号与除数的符号相同 说明 两数值同号, 直接求余数再取正负号 ; 两数值异号, 用除数绝对值减余数绝对值再取正负号 例 2.14?MOD(23,5),MOD(23,-5),MOD(-23, 5),MOD(-23,-5) 输出结果 : 四舍五入函数 格式 ROUND(< 数值表达式 1>,< 数值表达式 2>) 功能 对数值表达式 1 按照数值表达式 2 进行四舍五入, 数值表达式 2 大于等于 0, 对小数部分进行四舍五入 ; 数值表达式 2 小于 0, 对整数部分进行四舍五入 例 2.15?ROUND( ,3),ROUND( ,-2) 输出结果 : 求平方根函数 格式 SQRT(< 数值表达式 >) 功能 返回非负数值表达式的平方根 6. 圆周率函数 格式 PI() 功能 返回圆周率 PI 的近似值, 该函数没有自变量 例 2.16?SQRT(16),PI() 输出结果 : 取整函数 格式 INT (< 数值表达式 >) FLOOR(< 数值表达式 >) CEILING(< 数值表达式 >) 功能 INT() 函数返回指定数值表达式的整数部分, 小数部分不四舍五入 FLOOR() 函数返回小于或等于指定数值表达式的最大整数 CEILING() 函数返回大于或等于指定数值表达式的最小整数 例 2.17?INT(5.9),INT(-8.66),INT( ) 输出结果 :5-8 8 例 2.18? FLOOR(-3.45),FLOOR(0.7),FLOOR(2.8) 科学出版社职教技术出版中心

44 30 Visual FoxPro 数据库应用技术 输出结果 : 例 2.19? CEILING(-3.45),CEILING(0.7) CEILING(2.8) 输出结果 : 符号函数 格式 SIGN(< 数值表达式 >) 功能 返回指定数值表达式的符号, 当表达式的结果为正数 负数和零时, 返回 的函数值分别为 1-1 和 0 例 2.20? SIGN (3), SIGN (0), SIGN (-3) 输出结果 : 字符函数 1. 删除字符串空格函数 格式 LTRIM RTRIM ALLTRIM(< 字符表达式 >) 功能 LTRIM( ) RTRIM( ) 和 ALLTRIM( ) 函数分别删除字符串左端 右端和两端空格, 其中 RTRIM( ) 也可以写成 TRIM( ) 例 2.21? "ab"+ltrim(" cd ")+"e" && 假设用 表示空格?ALLTRIM("b ")+[c] 输出结果 :abcd e bc 2. 计算字符串长度函数 格式 LEN(< 字符表达式 >) 功能 返回指定字符表达式的长度 例 2.22?LEN("ABCDF"),LEN(" 中国 ") 输出结果 : 返回位置函数 格式 AT(< 字符串 1>, < 字符串 2>,< 数值表达式 N>) 功能 返回字符串 1 在字符串 2 中第 N 次出现的位置, 如不存在则返回 0 如省略 N, 则返回第 1 次出现的位置 例 2.23?AT("BC","ABC"),AT("B","ABCB",2) 输出结果 : 取子字符串函数 格式 SUBSTR(< 字符表达式 >,< 数值表达式 N1> [,< 数值表达式 N2>]) 功能 返回对字符表达式从 N1 位开始截取出 N2 个字符组成的字符串 如省略 N2, 则从 N1 位开始截取到字符串结尾

45 例 2.24?SUBSTR(" 社会经济学 ",5,4) 输出结果 : 经济 格式 LEFT RIGHT(< 字符表达式 >, < 数值表达式 N>) 第 2 章数据与数据运算 31 功能 返回从字符串左端或右端开始, 连续取 N 位字符所组成的字符串 例 2.25?LEFT("ABC",2),RIGHT("ABC",2) 输出结果 :AB 5. 生成空格函数 BC 格式 SPACE(< 数值表达式 >) 功能 生成若干个空格, 空格的个数由数值表达式的值决定 例 2.26?" 中国 "+SPACE(3)+" 加油 " 输出结果 : 中国 加油 6. 大小写转换函数 格式 UPPER LOWER(< 字符表达式 >) 功能 UPPER() 函数将字符串中的大写字母转换成小写, 其他字符不变 LOWER() 函数将字符串中的小写字母转换成大写, 其他字符不变 例 2.27?UPPER("aBC"),LOWER("aBc") 输出结果 :ABC abc 7. 计算子串出现次数函数 格式 OCCURS(< 字符表达式 1>,< 字符表达式 2>) 功能 返回 < 字符表达式 1> 在 < 字符表达式 2> 中出现的次数 例 2.28? OCCURS("c","abcabcd") 输出结果 :2 8. 子串替换函数 格式 STUFF(< 字符表达式 1>,< 起始位置 >,< 长度 >,< 字符表达式 2>) 功能 用 < 字符表达式 2> 的值替换 < 字符表达式 1> 中由 < 起始位置 > 和 < 长度 > 指明的一个子串, 返回所形成的新字符串 例 2.29? STUFF("aBc",2,1, "b") 输出结果 :abc 9. 子串匹配函数 格式 LIKE(< 字符表达式 1>,< 字符表达式 2>) 功能 判断两个字符中对应位置的字符是否匹配, 若匹配返回逻辑真 (.T.), 若不匹配则返回逻辑假 (.F.) < 字符表达式 1> 中可以包含通配符 * 和?, * 可与任何长度字符串相匹配,? 只能与任何单个字符进行匹配 例 2.30? LIKE("ab*","abcd"),LIKE("Abc","abc"), LIKE("ab?", "abcd") 科学出版社职教技术出版中心

46 32 Visual FoxPro 数据库应用技术 输出结果 :.T..F..F. 10. 重复输出指定次数的字符函数 格式 REPLICATE (< 字符表达式 >,< 数值表达式 >) 功能 将字符串表达式重复指定的次数 例 2.31? REPLICATE ("abc",3) 输出结果 :abcabcabc 日期和时间函数 1. 系统当前日期和时间函数 格式 DATE( ) TIME( ) DATETIME( ) 功能 DATE( ) 函数返回系统当前日期, 结果为日期型 TIME( ) 函数返回系统当前时间, 结果为字符型 DATETIME( ) 函数返回系统当前日期和时间, 结果为日期时间型 例 2.32? DATE( ),TIME( ),DATETIME( ) 输出结果 :05/01/11 21:24 :05 05/01/11 09:24:05 PM 2. 年份 月份和天数函数 格式 YEAR(< 日期表达式 > < 日期时间表达式 >) MONTH(< 日期表达式 > < 日期时间表达式 >) DAY(< 日期表达式 > < 日期时间表达式 >) 功能 分别返回日期或日期时间中对应的年份 月份和天数, 结果为数值型 例 2.33 D={^ }? YEAR(D), MONTH(D), DAY(D) 输出结果 : 数据类型转换函数 1. 字符型函数转换成数值型函数 格式 VAL(< 字符表达式 >) 功能 把符合数字符号规则的字符串部分转换成数值, 当遇到非数字符时则舍弃剩余字符, 默认四舍五入并保留两位小数 例 2.34? VAL("23.756"),VAL("2+3") 输出结果 : 数值型函数转换为字符型函数 格式 STR(< 数值表达式 N1>[,< 数值表达式 N2> [,< 数值表达式 N3>]])

47 第 2 章数据与数据运算 33 功能 把 N1 转换成小数位为 N3 总长度为 N2 的字符型数据, 省略 N2 N3 时 表示不保留小数位, 长度默认为 10, 如果 N2 和 N3 不能同时满足, 则优先保证整数位 负号和小数点也各占 N2 中一位 例 2.35? STR( ,5,3),STR(3.14) 输出结果 : 字符型函数转换成 ASCII 码函数 格式 ASC(< 字符表达式 >) 功能 返回字符串中第一个字符的 ASCII 码值 例 2.36? ASC("ABC") 输出结果 :65 4.ASCII 码函数转换成字符型函数 格式 CHR(< 数值表达式 >) 例 2.37? CHR(66),CHR(97) 输出结果 :B a 5. 字符型函数转换成日期型函数 格式 CTOD( )(< 字符表达式 >) 功能 将字符型数据转换成日期型数据 例 2.38? CTOD("^2011/05/01") 输出结果 :05/01/11 6. 日期型函数转换成字符型函数 格式 DTOC( )(< 日期表达式 >[,1]) 功能 将日期型数据转换成字符型数据 若选参数 1, 结果为 yyyymmdd 格式 ; 缺省可选项时, 结果为 mm/dd/yy 格式 例 2.39?DTOC({^2011/05/01}),DTOC({^2011/05/01},1) 输出结果 :05/01/ 测试函数 1. 值域测试函数 格式 BETWEEN (< 表达式 1>,< 表达式 2>,< 表达式 3>) 功能 判断表达式 1 的值是否大于等于表达式 2 的值并且小于等于表达式 3 的值, 若是, 则返回.T., 否则, 返回.F. 科学出版社职教技术出版中心

48 34 Visual FoxPro 数据库应用技术 例 2.40? BETWEEN(5,3,7),BETWEEN("A","X","Y") 输出结果 :.T..F. 2. 空值测试函数 格式 ISNULL(< 表达式 >) 功能 判断一个表达式的运算结果是否为 NULL 值, 若是 NULL 值则返回.T., 否则返回.F. 例 2.41? ISNULL(null) 输出结果 :.T. 3. 空 测试函数 EMPTY( ) 格式 EMPTY(< 表达式 >) 功能 判断一个表达式的运算结果是否为 空, 如果为 空 则返回.T., 否则返回.F. 说明 数值 0 逻辑值.F. 和空字符串 "" 或任意多个空格字符串 " " 都可以理解为 空 例 2.42? EMPTY(0),EMPTY(.F.),EMPTY(""),EMPTY(" ") 输出结果 :.T..T..T..T. 4. 数据类型测试函数 格式 VARTYPE (< 表达式 >) 功能 以一个大写字母的形式返回表达式的类型 例 2.43? VARTYPE (5),VARTYPE ("m"),vartype (DATE()) 输出结果 :N C D 5. 条件测试函数 格式 IIF(< 逻辑表达式 >,< 表达式 1>,< 表达式 2>) 功能 判断逻辑表达式的值, 若为真, 函数返回表达式 1; 若为假, 则返回表达式 2 例 2.44? IIF(3<4," 正确 "," 错误 "),IIF(3>4," 正确 "," 错误 ") 输出结果 : 正确错误 6. 表文件尾测试函数 格式 EOF( 工作区号 表别名 ) 功能 测试指定表文件中的记录指针是否指向文件尾, 指向文件尾返回.T., 否则返回.F. 7. 表文件头测试函数 格式 BOF( 工作区号 表别名 ) 功能 测试指定表文件中的记录指针是否指向文件首, 指向文件首返回.T., 否则返回.F.

49 第 2 章数据与数据运算 记录号测试函数 格式 RECNO( 工作区号 表别名 ) 功能 返回指定表文件中当前记录的记录号, 返回值是一个整型数据 9. 记录个数测试函数 格式 RECCOUNT( 工作区号 表别名 ) 功能 返回指定表文件中的记录个数, 返回值是一个整型数据 10. 记录删除测试函数 格式 DELETED( 工作区号 表别名 ) 功能 测试指定表文件中当前记录是否有删除标记, 有删除标记返回.T., 否则返回.F. 11. 查找是否成功测试函数 格式 FOUND( 工作区号 表别名 ) 功能 如果 LOCATE/CONTINUE SEEK 等查找记录的命令按照条件查找成功 ( 即找到了记录 ), 该函数返回.T., 否则返回.F 其他函数 1. 宏替换函数 格式 &< 字符型内变量 >[. 字符表达式 ] 功能 用字符型内存变量的值去替换 & 和字符型内存变量 [. 字符表达式 ] 用来将替换之后的内容与字符表达式连接 例 2.45 m=3 n="m+2"?n,&n 输出结果 :m 显示信息对话框函数 格式 MESSAGEBOX(< 提示信息 >[,< 数值表达式 >][,< 标题文本 >]) 功能 以对话框形式显示信息, 返回选取按钮的对应数值 说明 (1)< 提示信息 >: 指定在对话框中显示的文本 (2)< 数值表达式 >: 指定对话框中的按钮 图标和显示对话框时的默认按钮 这里只介绍对话框中的按钮, 如表 2-11 所示, 缺省时只显示 确定 按钮 (3)< 标题文本 > 指定对话框标题栏中的文本 若省略, 标题栏中将显示 Microsoft Visual FoxPro 科学出版社职教技术出版中心

50 36 Visual FoxPro 数据库应用技术 (4)MESSAGEBOX() 的返回值标明选取了对话框中的哪个按钮 选择 确定 按钮返回值 1, 选择 取消 按钮返回值 2, 选择 放弃 按钮返回值 3, 选择 重试 按钮返回值 4, 选择 忽略 按钮返回值 5, 选择 是 按钮返回值 6, 选择 否 按钮返回值 7 表 2-11 对话框中的按钮 数值数值对话框按钮表达式表达式 对话框按钮 0 确定 按钮 3 是 否 和 取消 按钮 1 确定 和 取消 按钮 4 是 和 否 按钮 2 终止 重试 和 忽略 按钮 5 重试 和 取消 按钮 例 2.46 X=MESSAGEBOX(" 是否继续查找!",1," 查找 ")?X 运行效果如图 2-4 所示 图 2-4 运行效果 如果单击 取消 按钮,X 变量的值是 本章小结 本章主要介绍了常量 变量 表达式和函数四个概念及其各种数据类型的运算 常量和变量是数据处理的基本对象, 表达式和函数则体现出计算机数据处理的强大功能 2.7 习题 一 选择题 1. 以下日期值正确的是 A.{" "} B.{^ } C.{ } D.{[ ]} 2. 在下面的 Visual FoxPro 表达式中, 不正确的是 A.{^ :10:10AM}-10 B.{^ }-DATE() C.{^ }+DATE() D.{^ }+1000

51 第 2 章数据与数据运算 在下面的 Visual FoxPro 表达式中, 运算结果是逻辑真的是 A.EMPTY(.NULL.) B.LIKE("abc", "ac? ") C.AT("a", "123abc") D.EMPTY(SPACE(2)) 4. 设 D=5>6, 命令? VARTYPE(D) 的输出值是 A.L B.C C.N D.D 5. 在下列函数中, 函数值为数值的是 A.BOF( ) B.CTOD("01/01/11") C.AT(" 人民 ", " 中华人民共和国 ") D.SUBSTR(DTOC(DATE( )),7) 6. 设 N=886,M=345,K= "M+N", 表达式 1+&K 的值是 A.1232 B. 数据类型不匹配 C.1+M+N D 表达式 VAL(SUBS(" 奔腾 586",5,1))* LEN("Visual FoxPro") 的结果是 A B C D 连续执行以下命令之后, 最后一条命令的输出结果是 二 填空题 SET EXACT OFF X="A"? IIF("A"=X,X-"BCD",X+"BCD") A.A B.BCD C.ABCD D.A BCD 1. 命令? ROUND( ,3) 的执行结果是 2. 命令? LEN("THIS IS MY BOOK") 的执行结果是 3.TIME( ) 返回值的数据类型是 4. 顺序执行下列操作后, 屏幕最后显示的结果是和 Y=DATE( ) H=DTOC( Y)? VARTYPE(Y), VARTYPE(H) 5. 表达式 -23%5 的值是 三 思考题 1.Visual FoxPro 有哪几种数据类型? 2. 什么是内存变量? 什么是字段变量? 3. 如何定义数组? 如何为数组赋值? 4. 表达式运算的优先级是如何规定的? 5. 空值 (NULL) 的含义是什么? 科学出版社职教技术出版中心

52 第 3 章数据库与数据表 学习目标 掌握数据库的建立和操作方法 掌握数据表建立及表记录的操作方法 掌握索引的建立和数据完整性 数据库是数据库管理系统的重要组成部分, 是以一定组织方式存储在一起的相关数据的集合 在关系型数据库管理系统中, 系统是以数据表的形式存储和管理数据的, 因此数据库是表的集合, 它不仅可以管理数据, 还可以管理数据之间的联系 把几个表组织到一个数据库中, 可以减少数据的冗余度, 保护数据的完整性 3.1 数据库的创建与操作 数据库是存储数据的仓库, 一个数据库可以包含多个扩展名为.DBF 的表 建立数据库就是建立一个扩展名为.DBC 的文件, 同时自动建立一个扩展名为.DCT 的数据库备注文件和一个扩展名为.DCX 的数据库索引文件 创建数据库创建数据库的基本操作是先创建一个空数据库, 以后可以在空数据库中创建数据表或添加已创建的表 创建数据库通常使用 文件 菜单中的 新建 命令 例 3.1 建立 教学 数据库 选择 文件 新建 命令, 打开 新建 对话框, 如图 3-1 所示 选择 数据库 单选按钮, 单击 新建文件 按钮, 打开 创建 对话框, 如图 3-2 所示 输入数据库名 教学.dbc, 选择保存位置, 单击 保存 按钮, 建立一个空数据库并打开数据库设计器窗口, 如图 3-3 所示 打开和关闭数据库 1. 打开数据库对数据库及数据库中的表进行操作前, 应先打开数据库 选择 文件 打开 命令, 打开 打开 对话框, 如图 3-4 所示 选择文件类型 数据库 (*.dbc), 选中要打开的数据库文件, 单击 确定 按钮, 打开相应的数据库

53 第 3 章数据库与数据表 39 图 3-1 新建 对话框 图 3-2 创建 对话框 图 3-3 数据库设计器 窗口 图 3-4 打开 对话框 若选择 以只读方式打开 复选框, 则打开的数据库不能被修改, 默认的打开方式 科学出版社职教技术出版中心 是读写方式 ; 若选择 独占 复选框, 则不允许其他用户同时使用该数据库, 默认为共享方式

54 40 Visual FoxPro 数据库应用技术 2. 关闭数据库数据库使用完之后要及时关闭, 关闭数据库需要使用 CLOSE DATABASE 命令完成 修改数据库修改数据库实际上是打开数据库设计器, 在数据库设计器中完成各种数据对象的建立 修改和删除等操作 利用菜单打开数据库后会自动打开数据库设计器, 然后可以对数据库进行修改 有关数据库的基本操作命令 1. 创建数据库 格式 CREATE DATABASE [< 数据库名 >?] 说明 如果不指定数据库名或输入?, 系统会弹出 创建 对话框, 请用户输入数据库名 例 3.2 通过命令方式建立 教学 数据库 CREATE DATABASE 教学 2. 打开数据库 格式 OPEN DATABASE < 数据库文件名 > 例 3.3 通过命令方式打开 教学 数据库 OPEN DATABASE 教学 3. 关闭数据库 格式 CLOSE DATABASE 功能 关闭当前打开的数据库和数据表 3.2 数据库表的建立与操作 在 Visual FoxPro 中, 根据数据表是否属于数据库, 将数据表分为数据库表和自由表 属于某一数据库的表称为数据库表, 不属于任何数据库的表称为自由表 如果在建立表时数据库是打开的, 则建立的表为数据库表 ; 如果数据库是关闭的, 则建立的表为自由表 设计表结构用户在日常工作 学习和生活中经常用到二维表格 如在表 3-1 所示的学生表中, 每一列称为一个字段, 第一行中的每一项是相应的字段名, 表中的所有字段构成了表结构, 第一行以下的每一行称为一条记录

55 第 3 章数据库与数据表 41 表 3-1 学生表 学号 姓名 性别 民族 出生日期 专业 入学成绩 简历 照片 王欣 女 汉 外语 张美芳 女 苗 外语 杨永丰 男 汉 外语 周军 男 汉 物理 孙志奇 男 苗 物理 胡丽梅 女 汉 物理 李丹阳 女 汉 物理 郑志 男 壮 计算机 赵海军 男 藏 计算机 479 设计表结构主要是设计表中各字段属性, 包括字段名 字段类型 字段宽度 小数 位数 是否允许为空值和是否建立索引等 根据表 3-1 建立一个 Visual FoxPro 系统的数 据表, 它的表结构定义见表 3-2 表 3-2 学生 表结构 字段名 类型 宽度 小数位 索引 NULL 学号 字符型 8 姓名 字符型 8 性别 字符型 2 民族 字符型 2 出生日期 日期型 8 专业 字符型 10 入学成绩 数值型 4 0 个人简历 备注型 4 照片 通用型 建立表结构 在 Visual FoxPro 中, 常在 表设计器 中建立表结构 表设计器 是 Visual FoxPro 提供的建立和修改表结构的工具 本节以建立 教学 数据库中的 学生 表结构为实例 例 3.4 在 教学 数据库中创建如表 3-2 所示的 学生 表的表结构 操作步骤如下 : 1) 打开 教学 数据库使用 文件 菜单中的 打开 命令完成 2) 打开 表设计器 对话框在 数据库设计器 窗口中, 选择 文件 新建 命令 ( 或选择 数据库 新建表 命令 ), 打开 新建 对话框 在 文件类型 选项组中选择 表, 单击 新建文件 按钮, 打开 创建 对话框, 选择保存位置, 输入表名 学生, 单击 保存 按钮, 打开 表设计器 对话框, 如图 3-5 所示 科学出版社职教技术出版中心

56 42 Visual FoxPro 数据库应用技术 图 3-5 表设计器 对话框 3) 定义字段的属性在 表设计器 对话框中输入各字段的字段名 类型 宽度和小数位数等属性 (1) 字段名 : 字段名即关系的属性名或表的列名, 一个表由若干列 ( 字段 ) 组成, 每个列必须有一个唯一的名字, 即字段名, 可以通过字段名引用表中的数据 字段名的命名规则如下 : 字段名必须以字母或汉字开头, 由字母 汉字 数字及下划线组成 自由表的字段名最多由 10 个字符组成 数据库表支持长字段名, 最多可达 128 个字符 (2) 字段类型和宽度 : 字段的数据类型决定存储在字段中值的数据类型, 字段宽度指该字段所能容纳数据的最大字节数 Visual FoxPro 提供了 13 种字段类型, 见表 2-1 (3) 小数位 : 对于数值型和浮点型字段需要设置小数位数, 字段宽度是符号位 整数位数 小数点和小数位数的总长度 (4)NULL 值 ( 空值 ): 在设计表结构时, 可指定某个字段是否接受 NULL 值 NULL 值是指没有值或没有确定的值 NULL 值不等于零或空格, 例如 : 把某一商品的价格设置为空值, 表示该商品暂无定价 ; 而把某一商品的价格设置为 0, 表示该商品免费 (5) 字段的有效性规则 : 字段有效性 设置是对一个字段的约束, 用于检验用户输入到某个字段中的数据是否有效 一旦输入了与字段有效性验证规则不相符的字段值时, 系统会立即报错, 并且阻止该值的输入 规则 : 用于设置对字段输入数据的有效性进行检查的条件, 规则是一个逻辑表达式, 结果为真或假 信息 : 用于设置当输入值不符合规则时, 显示的错误提示信息 在 信息 框中输入的错误信息必须加定界符

57 第 3 章数据库与数据表 43 默认值 : 用于设置向表中输入记录时, 该字段的初始值 默认值的数据类型取决于该字段的类型, 如该字段为字符型, 则默认值必须加定界符 例 3.5 为 学生 表 性别 字段设置有效性规则 : 性别 字段只能输入 男 或 女, 如果输入其他字符, 系统则提示 性别只能为男或女 新增表记录时, 默认性别值为 男 在 学生 表设计器对话框中, 选择 字段 选项卡, 选择 性别 字段, 设置字段有效性规则, 如图 3-6 所示, 规则 文本框输入 : 性别 $" 男或女 ", 信息 文本框输入 :" 性别只能为男或女 ", 默认 文本框输入 :" 男 " 图 3-6 设置字段有效性规则 1) 表设计器中各按钮功能 字段名前的方框 : 拖动字段名前的方框, 可调整字段的先后顺序 插入 按钮 : 单击此按钮, 将在当前字段前插入一个空白字段 删除 按钮 : 单击此按钮, 将删除当前字段 2) 完成表结构建立单击 确定 按钮, 系统提示 现在输入数据记录吗?, 此例单击 否 按钮, 结束表结构的建立 Visual FoxPro 中表文件的扩展名为.DBF, 如果表中包含了备注型或通用型字段, 系统还将创建与表相关的.FPT 文件 ( 备注文件 ) 输入记录 表结构创建完成后, 就可以向表中输入记录了, 向表中输入记录常用以下几种方法 1. 创建表结构时立即输入记录 科学出版社职教技术出版中心 在创建表时, 当表中所有字段的属性定义完成后, 单击 确定 按钮, 将保存表结构并打开 现在输入数据记录吗? 对话框 单击 是 按钮, 打开输入记录窗口, 进

58 44 Visual FoxPro 数据库应用技术 入表 浏览 或表 编辑 窗口, 在该窗口中完成表中数据的输入 2. 追加记录若在建立表结构时没有立即输入记录或未将记录输入完毕, 可在以后任何时候向表中追加记录 在表的 浏览 或 编辑 窗口中, 可用以下三种方式追加记录 1) 显示 菜单下追加记录选择 显示 追加方式 命令, 系统会在表的末尾追加一条空记录, 并显示一个输入框 当输入完一条记录后, 系统自动追加下一条记录 2) 表 菜单下追加记录选择 表 追加新记录 命令, 系统会在表的末尾追加一条空记录, 并显示一个输入框 这种方式只允许追加一条记录, 若想再追加一条记录, 需要再次选择 追加新记录 命令 3) 从其他表或数据文件中追加记录在表浏览窗口选择 表 追加记录 命令, 打开 追加来源 对话框, 如图 3-7 所示 用户可以选择作为追加来源的文件类型和文件, 单击 选项 按钮可指定要追加的字段和记录 图 3-7 追加来源 对话框 例 3.6 用追加记录方式, 向 学生 表中输入如表 3-1 所示的记录 1) 打开表浏览窗口, 输入表记录在数据库设计器中选中 学生 表, 选择 显示 浏览 命令, 打开 学生 表记录浏览窗口, 此时窗口界面只处于显示状态, 要想向其中输入记录, 可选择 显示 追加方式 命令, 逐条输入 学生 表中除备注型和通用型字段以外的记录, 如图 3-8 所示 输入记录时, 当输入的内容填满一个字段的宽度时, 光标会自动跳到下一个字段 ; 输入的内容不足一个字段宽度时, 可用 <Tab> 键或按 <Enter> 键将光标移到下一个字段 也可以在 浏览 窗口选择 显示 编辑 命令, 打开 学生 表编辑窗口输入记录, 如图 3-9 所示 两种窗口模式可根据用户需要随时进行切换 2) 备注型和通用型字段的输入备注型字段存放长度不定的文本, 最大容量可达 64KB 通用型字段常用于存储 OLE 对象, 如图像 声音 字处理文档或电子表格等 备注型和通用型字段不能在窗口直接输入内容

59 第 3 章数据库与数据表 45 图 3-8 学生 表浏览窗口 图 3-9 学生 表编辑窗口 备注型字段输入方法如下 : 双击备注型字段 memo 处, 打开文本编辑窗口, 如图 3-10 所示 输入学生个人简历信息后, 单击 关闭 按钮, 关闭当前窗口并存盘 若不想保存输入或修改的内容, 则按 <Esc> 键退出该窗口 输入数据后, 有值的备注型字段标记由 memo 变为 Memo 通用型字段 OLE 输入方法如下 : 双击通用型字段图 3-10 备注型字段编辑窗口 gen 处, 打开数据编辑窗口, 选择 编辑 插入对象 命令, 打开 插入对象 对话框, 如图 3-11 所示 在此窗口中选择 新建 或 由文件创建 选项进行文件的创建, 本例选择 由文件创建 按钮, 单击 浏览 按钮, 选择要插入的图片文件, 单击 确定 按钮, 所选对象就被插入到通用型字段中了, 如图 3-12 所示 插入对象后, 通用型字段的标记由 gen 变为 Gen 所有记录输入完后, 关闭浏览窗口, 或按 <Ctrl+W> 组合键退出浏览窗口, 输入的记录被保存在表文件中 若按 Esc 键或 <Ctrl+Q> 组合键, 则放弃当前输入 备注型或通用型内容保存在扩展名为.FPT 的备注文件中 图 3-11 插入对象 窗口图 3-12 插入图片后的通用型字段窗口 例 3.7 在 教学 数据库中建立如图 3-13 所示的 教师 表和如图 3-14 所示 的 课程 表 教师表的结构如下 : 教师 ( 教师号 C(6), 姓名 C(8), 性别 C(2), 职称 C(6), 党员否 L, 年龄 N(2)) 科学出版社职教技术出版中心

60 46 Visual FoxPro 数据库应用技术 课程表的结构如下 : 课程 ( 课程号 C(4), 课程名 C(20), 教师号 C(6), 学时 N(3), 学分 N(3)) 图 3-13 教师 表记录 图 3-14 课程 表记录 操作方法如下 : 1) 使用快捷菜单创建 教师 表打开 教学 数据库, 右击数据库设计器的任意空白处, 在弹出的如图 3-15 所示的快捷菜单中选择 新建表 命令, 打开 表设计器 对话框, 建立 教师 表结构, 输入记录 2) 使用数据库菜单创建 课程 表在如图 3-16 所示的 教学 数据库设计器中, 选择 数据库 新建表 命令, 打开 表设计器 对话框, 建立 课程 表结构, 输入记录 图 3-15 数据库设计器快捷菜单 图 3-16 数据库设计器数据库菜单 3.3 数据库表的操作 打开表在使用数据表前, 首先要打开表文件 选择 文件 打开 命令, 打开 打开 对话框, 如图 3-17 所示 选择文件类型 表 (*.dbf), 选中要打开的表文件, 单击 确定 按钮

61 第 3 章数据库与数据表 47 图 3-17 打开 对话框 浏览表记录 在 Visual FoxPro 中对数据表进行维护的最简单 方便的方法是使用表浏览窗口 打 开一个表后, 选择 显示 浏览 命令可以打开表浏览窗口 在表浏览窗口, 可以浏览当前表中的记录, 用户根据需要可以改变窗口的列宽和行高, 调整字段顺序等 修改表记录 在表浏览窗口, 将光标定位在需要修改的记录和字段值上, 直接输入新值可修改表中记录的值 如果表中有大量数据需要有规律地修改, 可以使用 表 菜单中的 替换字段 命令 例 3.8 将 教师 表中所有教师的年龄增加 1 岁 (1) 打开 教师 表 (2) 选择 显示 浏览 命令, 打开 浏览 窗口 (3) 选择 表 替换字段 命令, 打开 替换字段 对话框, 输入相应的内容, 如图 3-18 所示 字段 (D): 选择要替换的字段 本例中选择 年龄 字段 替换为 : 要替换的表达式 本例中为 年龄 +1 作用范围 (S): 用于限定操作的记录范围 本例中选 ALL, 对当前表中所有记录操作 For: 对指定范围内所有满足条件的记录进行操作 While: 在指定范围内按顺序对满足条件的记录操作, 直到遇到第一个不满足条件的记录为止 (4) 单击 替换 按钮 科学出版社职教技术出版中心

62 48 Visual FoxPro 数据库应用技术 图 3-18 替换字段 对话框 删除与恢复表记录表中无用的记录可以删除,Visual FoxPro 中记录的删除分为逻辑删除和物理删除两种, 逻辑删除可以恢复, 物理删除不能恢复 1. 记录的逻辑删除逻辑删除记录是指在要删除的记录前添加一个黑色的删除标记, 并不真正删除记录 例 3.9 逻辑删除 学生 表中的部分记录 (1) 打开 学生 表 (2) 选择 显示 浏览 命令, 打开 浏览 窗口 (3) 单击记录左边的空白方框, 即可加上一个黑色的删除标记, 如图 3-19 所示 用此方法可以给多条记录添加删除标记 例 3.10 逻辑删除 学生 表中性别为 男 的记录 (1) 打开 学生 表, 选择 显示 浏览 命令, 打开 浏览 窗口 (2) 选择 表 删除记录 命令, 打开 删除 对话框, 在对话框中输入相应内容, 如图 3-20 所示 (3) 单击 删除 按钮, 系统将在性别为 男 的记录前添加删除标记 图 3-19 给记录添加删除标记 图 3-20 删除 对话框

63 第 3 章数据库与数据表 记录的恢复加了逻辑删除标记的记录并没有被真正删除, 取消删除标记就可以恢复被逻辑删除的记录 在浏览窗口中, 单击黑色的删除标记, 即可取消删除标记 若要恢复一组记录, 可以通过 表 菜单中的 恢复记录 命令来完成 3. 记录的物理删除物理删除就是把逻辑删除的记录彻底从磁盘上删除, 释放磁盘空间 物理删除可以通过 表 菜单中的 彻底删除 命令来完成 记录指针定位 Visual FoxPro 为每个表设置了一个记录指针, 记录指针指向的记录, 称为当前记录 打开表时, 记录指针自动指向第一条记录 记录指针的定位就是将记录指针移到某个记录上, 使其成为当前记录 打开表记录的 浏览 窗口, 当前记录前有一个黑三角图 3-21 转到记录 子菜单标志 通过移动光标或鼠标单击任意记录可以改变记录的位置 也可以选择 表 转到记录 命令, 打开 转到记录 的子菜单, 如图 3-21 所示 选择相应的选项, 实现记录指针的定位 关闭表表使用完后, 为防止数据丢失, 必须及时关闭 方法如下 : (1) 选择 窗口 数据工作期 命令, 打开 数据工作期 对话框, 如图 3-22 所示 图 3-22 数据工作期 对话框 (2) 在 别名 列表框内, 选择需要关闭的表名, 如选 学生 表 (3) 单击 关闭 按钮, 关闭该表 科学出版社职教技术出版中心

64 50 Visual FoxPro 数据库应用技术 有关数据表的基本操作命令 1. 建立表结构 格式 CREATE [< 表文件名 >?] 功能 调用表设计器, 创建一个新表 2. 修改表结构 格式 MODIFY STRUCTURE 功能 打开当前表的 表设计器 对话框, 可对表结构进行修改 说明 当字段宽度改小时, 如果该字段为字符型, 则超出字段宽度的字符会丢失 ; 如果该字段为数值型, 则会溢出, 这时在表的浏览窗口看到的是几个 * 号, 并且丢失的字符或数字不能通过将字段改为原有长度而恢复 3. 打开和关闭表 1) 打开表 格式 USE < 表文件名 >? 功能 打开指定的表文件 若该表含有备注型或通用型字段, 则自动打开同名的 FPT 文件 例 3.11 使用命令打开 D 盘 教学管理系统 文件夹中的 学生 表 USE D:\ 教学管理系统 \ 学生 2) 关闭表 格式 1 USE: 关闭当前打开的表 格式 2 CLOSE ALL: 关闭所有打开的文件 格式 3 QUIT: 关闭所有文件, 退出 Visual FoxPro 系统 4. 记录指针定位对表中某条记录进行处理时, 必须移动记录指针, 使其指向该记录 记录指针的移动范围如图 3-23 所示 记录首标记 首记录 TOP 当前记录 记录尾标记 尾记录 BOTTOM 图 3-23 记录指针的移动范围

65 第 3 章数据库与数据表 51 说明 (1) 记录首标记 : 指向表文件第一条记录的前面, 此时 BOF( ) 的值为.T. (2) 记录尾标记 : 指向表文件最后一条记录的后面, 此时 EOF( ) 的值为.T. 1) 直接定位 格式 GO GOTO < 记录号 > TOP BOTTOM 功能 将记录指针定位于指定的记录 2) 相对定位 格式 SKIP [< 数值表达式 >] 功能 将记录指针从当前记录向上或向下移动若干个记录 说明 < 数值表达式 > 的值表示记录指针移动的相对记录数, 值为正数时, 记录指针向下移动 ; 值为负数时, 记录指针向上移动 ; 缺省时, 记录指针向下移动 1 个记录位置 例 3.12 打开 学生 表, 在 命令 窗口输入命令, 在主窗口观察记录指针的变化, 如图 3-24 所示 3) 条件定位 (1) 顺序查询命令 LOCATE: 格式 LOCATE [< 范围 >][FOR < 条件 >] 功能 在指定的范围内, 按记录的顺序从上向下查找满足条件的第一条记录 说明 < 范围 >: 缺省时为 ALL LOCATE 命令查找到满足条件的第一条记录时, 就结束查找并将记录指针指向该记录, 此时 FOUND() 函数的返回值为.T.,EOF() 函数的返回值为.F. 如果没有查找到满足条件的记录, 则记录指针指向 范围 尾记录 若范围为 ALL, 则记录指针指向文件尾部, 此时函数 FOUND() 的返回值为.F., 函数 EOF() 的返回值为.T. (2) 继续查找命令 CONTINUE: 格式 CONTINUE 功能 与 LOCATE 命令连用, 用于继续查找满足条件的下一条记录 例 3.13 在 学生 表中查询性别为 女, 专业为 外语 的学生记录 USE 学生 LOCATE FOR 性别 = " 女 ".AND. 专业 =" 外语 "?FOUND() DISPLAY 学号, 姓名, 性别, 入学成绩 CONTINUE?FOUND() DISPLAY 学号, 姓名, 性别, 入学成绩 CONTINUE?FOUND() 命令执行后, 显示结果如图 3-25 所示 5. 显示表记录 格式 LIST DISPLAY [< 范围 >] [[FIELDS]< 字段名表 >][FOR < 条件 >] 科学出版社职教技术出版中心

66 52 Visual FoxPro 数据库应用技术 图 3-24 记录指针的变化 图 3-25 例 3.13 显示结果 功能 显示当前表中的内容 若没有范围选项,LIST 命令显示全部记录,DISPLAY 命令显示当前一条记录 例 3.14 学生表共有九条记录, 显示第一条和后三条记录 USE 学生 DISPLAY GO 7 LIST REST 显示结果如图 3-26 所示 图 3-26 LIST 和 DISPLAY 命令显示结果 6. 修改表记录 格式 REPLACE [ 范围 ]< 字段名 1>WITH< 表达式 1>; [,< 字段名 2>WITH< 表达式 2>, ][FOR< 条件表达式 >] 功能 在指定范围内满足条件的记录中, 用表达式的值替换对应的字段值 缺省 < 范围 > 时, 默认对当前记录操作 例 3.15 将 学生 表中所有性别为 女 的入学成绩增加 10 分 USE 学生 REPLACE ALL 入学成绩 WITH 入学成绩 +10 FOR 性别 =" 女 "

67 第 3 章数据库与数据表 追加和插入表记录 每次追加记录前, 首先要打开表, 然后可以采用如下两种命令方式输入数据 1) 追加记录 格式 1 APPEND [BLANK] 功能 向打开的表文件末尾添加新记录 说明 BLANK 子句表示在表的末尾追加一条空白记录, 记录内容可用 EDIT 或 BROWSE 等命令输入 格式 2 APPEND FROM < 表文件名?> [FIELDS < 字段名表 >] [FOR < 条件 >] 功能 从指定的表文件中读取数据并追加到当前表文件的末尾 说明 < 表文件名 > 为提供数据的表名, 而当前打开的数据表为被追加的数据表 例 3.16 现有一个空表 学生 1, 其表结构与 学生 表结构相同, 要求将 学生 表的记录追加到 学生 1 表中 USE 学生 1 APPEND FROM 学生 LIST 2) 插入记录 格式 INSERT [BEFORE] [BLANK] 功能 在当前表中插入一条新记录 说明 (1)BEFORE: 在当前记录前插入新记录, 缺省此项, 则在当前记录之后插入新记录 (2)BLANK: 插入一条空白记录, 可用 EDIT BROWSE 等命令添加内容 例 3.17 在学生表第 4 条记录前插入一条新记录 USE 学生 GO 3 && 记录指针指向第 3 条记录 INSERT 在 命令 窗口执行上述命令后, 屏幕上弹出输入记录编辑窗口, 用户可输入新记录 8. 复制表记录 格式 COPY TO < 表文件名 > [FIELDS < 字段名表 >] [< 范围 >][FOR < 条件 >] 功能 将当前数据表中指定范围内满足条件的记录复制到指定的表文件中 说明 FIELDS < 字段名表 >: 复制字段名表中给出字段的记录 例 3.18 复制一个与 学生 表完全一样的新表 学生 2.DBF USE 学生 COPY TO 学生 2 科学出版社职教技术出版中心

68 54 Visual FoxPro 数据库应用技术 9. 删除表记录 1) 逻辑删除 格式 DELETE [ 范围 ] [FOR< 条件表达式 >] 例 3.19 用 DELETE 命令逻辑删除 学生 表中性别为 男 的记录 USE 学生 DELETE FOR 性别 =" 男 " LIST 显示结果如图 3-27 所示, 带 * 的记录为逻辑删除记录 图 3-27 逻辑删除后记录 2) 恢复逻辑删除记录恢复逻辑删除记录是将逻辑删除记录恢复为正常记录, 即去掉删除标记 * 格式 RECALL [< 范围 >][FOR < 条件表达式 >] 功能 取消指定范围内满足条件记录的删除标记 说明 缺省 < 范围 > 和 < 条件 > 时, 只取消当前记录的删除标记 例 3.20 恢复 学生 表中加删除标记的记录 USE 学生 RECALL ALL 3) 物理删除记录物理删除记录是将当前表文件中被逻辑删除的记录全部彻底删除 格式 PACK 功能 将所有带删除标记的记录彻底删除 说明 彻底删除后, 记录将不能恢复, 使用此命令要十分小心 例 3.21 物理删除 学生 表中入学成绩小于 500 分的记录 USE 学生 DELETE FOR 入学成绩 <500 LIST PACK LIST 4) 一次性删除所有记录 格式 ZAP

69 功能 将当前表中的记录全部彻底删除 第 3 章数据库与数据表 表的索引 表文件中的记录通常是按其输入先后顺序排列存放的, 因此, 表中记录的排列是没 有规则的 使用索引技术可以使表记录按照一定的顺序排列, 以提高数据的查找效率 索引是按照表文件中某个关键字段或表达式, 以升序或降序的排列方式对表中的记 录进行逻辑排序, 它不改变表中数据的物理顺序, 而是另外建立一个索引文件 索引文件是一个指针文件, 由记录号 源表文件中提取的索引表达式值和链接指针等组成 索引文件只是表文件的附属文件, 必须同原数据表一起使用 索引的类型 Visual FoxPro 中的索引分为主索引 候选索引 唯一索引和普通索引四种类型 1) 主索引主索引是在指定字段或表达式中不允许出现重复值也不允许为空值的索引, 只能在数据库表中建立 建立主索引的字段称为主关键字, 一个表只能创建一个主索引 如果某个表有多个字段不允许出现重复值, 只能为一个字段建立主索引, 为其他字段建立候选索引 2) 候选索引候选索引和主索引具有相同的特性, 即在指定的字段或表达式中不允许出现重复值, 也不允许为空值 候选索引在数据库表和自由表中都可以建立, 一个表可以建立多个候选索引 3) 唯一索引唯一索引是允许指定的字段或表达式存在重复值的索引, 但重复值在索引文件中只出现一次, 即只保留第一次出现的重复值, 一个表可以建立多个唯一索引 4) 普通索引普通索引允许指定的字段或表达式存在重复, 并且索引文件中也允许出现重复值, 一个表可以建立多个普通索引 索引文件 Visual FoxPro 中的索引文件分为单索引文件 (.IDX) 和复合索引文件 (.CDX) 两类 1) 单索引文件单索引文件是根据一个关键字或关键字表达式建立的索引文件, 其扩展名为.IDX 单索引文件不会随表的打开而打开 2) 复合索引文件复合索引文件可以包含多个索引, 每个索引与单索引文件类似, 有一个特殊的索引标识名, 用户可以利用标识名来区分和使用索引 复合索引文件的扩展名为.CDX, 在 表设计器 中建立的索引保存在复合索引文件中 科学出版社职教技术出版中心

70 56 Visual FoxPro 数据库应用技术 建立索引 例 3.22 在 教学 数据库的 学生 表中, 按 学号 字段升序建立主索引, 按 出生日期 字段降序建立普通索引, 索引名和索引表达式相同 (1) 打开 教学 数据库, 右击 学生 表, 在弹出的快捷菜中选择 修改 命令, 打开 表设计器 对话框, 如图 3-28 所示 图 3-28 表设计器 字段 选项卡 (2) 在 字段 选项卡下单击 学号 字段, 设置索引标记为升序 ; 单击 出生日 期 字段, 设置索引标记为降序 在 字段 选项卡下建立的索引默认是普通索引 (3) 切换到 索引 选项卡, 设置 学号 字段的索引类型为 主索引, 出生日期 字段的索引类型为 普通索引, 如图 3-29 所示 索引 选项卡中各选项的含义如下 移动按钮 : 位于选项卡左列, 鼠标上下拖动可调整索引的排列次序 排序按钮或 : 指定索引按降序或升序排列 单击按钮可在两种状态间切换 索引名 : 给建立的索引命名, 系统默认的索引名与字段名同名 表达式 : 系统默认表达式为字段名, 如果要建立多字段索引, 单击表达式文本框右侧的生成器按钮, 在弹出的 表达式生成器 对话框中创建表达式 筛选 : 允许输入一个筛选表达式, 为该索引记录指定一个筛选条件 插入和删除按钮 : 在选中的字段前插入一个新索引或删除选中的索引 (4) 单击 确定 按钮, 完成建立索引操作, 生成文件名为 学生.CDX 的结构复合索引文件

71 第 3 章数据库与数据表 57 打开 教学 数据库设计器, 可以看到 学生 表中列出了新建的索引 学号 和 出生日期, 如图 3-30 所示 学号 索引名前有钥匙符号, 表明是主索引 图 3-29 表设计器 索引 选项卡 图 3-30 建立索引的学生表 例 3.23 在 教学 数据库的 学生 表中, 按 性别 + 出生日期 字段的升序建立普通索引, 索引名为 sdate (1) 打开 学生 表设计器, 切换到 索引 选项卡界面 (2) 在 索引名 文本框中输入索引名 sdate (3) 从索引 类型 下拉列表框中选择 普通索引 (4) 在 表达式 文本框中输入表达式 性别 +dtoc( 出生日期 ), 如图 3-31 所示 最后, 单击 确定 按钮 和索引操作相关的命令 1. 建立索引文件 格式 图 3-31 表设计器 索引 选项卡界面 INDEX ON < 索引表达式 > TAG < 索引标识名 >; [ASCENDING DESCENDING] [UNIQUE CANDIDATE] 功能 为打开的表建立索引文件或在复合索引文件中添加索引标识 说明 (1)< 索引表达式 >: 可以是字段名或包含字段名的表达式 (2)TAG < 索引标识名 >: 用来建立复合索引文件 (3)ASCENDING DESCENDING: 表示升序或降序索引, 系统默认升序 只对复 科学出版社职教技术出版中心

72 58 Visual FoxPro 数据库应用技术 合索引有效 (4)UNIQUE CANDIDATE: 表示建立唯一索引或候选索引 例 3.24 将学生表按 性别 字段建立索引 USE 学生 INDEX ON 性别 TAG 性别 LIST 学号, 姓名, 性别显示结果如图 3-32 所示 例 3.25 将学生表按 性别 和入学成绩建立索引 USE 学生 INDEX ON 姓名 +str( 入学成绩 ) TAG xmrxcj LIST 学号, 姓名, 性别, 入学成绩显示结果如图 3-33 所示 图 3-32 例 3.24 运行结果 图 3-33 例 3.25 运行结果 2. 指定控制索引索引文件必须先打开然后才能使用 一个表文件可以打开多个索引文件, 一个索引文件可能包含多个索引标识, 但任何时候只有一个索引文件或索引标识起作用 当前起作用的索引称为控制索引 格式 SET ORDER TO [< 数值表达式 > [TAG]< 索引标识 >]; [ASCENDING DESCENDING] 功能 为打开的文件重新指定控制索引 说明 (1)< 数值表达式 >: 指定打开索引文件时 索引文件表 中的索引文件序号为控制索引 (2)[TAG]< 索引标识 >: 指定该索引标识为控制索引 (3)ASCENDING DESCENDING: 重新指定索引文件为升序或降序 (4)SET ORDER TO 或 SET ORDER TO 0: 取消当前的控制索引, 表中记录按物理顺序显示 例 3.26 学生 表中已建立索引, 包含 学号 姓名 两个索引标识 利用命令按不同的索引标识显示记录

73 第 3 章数据库与数据表 59 USE 学生 && 索引文件 学生.CDX 自动打开 SET ORDER TO TAG 学号 LIST && 按学号升序显示记录 SET ORDER TO TAG 姓名 LIST && 按姓名升序显示记录 3.5 数据完整性 数据完整性是保证数据正确的特性, 包括实体完整性 域完整性和参照完整性, 它 们分别在记录级 字段级和数据表级提供了数据正确性的验证规则 实体完整性与主关键字 实体完整性是保证表中记录唯一的特性, 即在一个表中不允许有重复的记录出现 在关系数据模型中, 利用主关键字或候选关键字来保证实体完整性, 即保证表中的记录唯一 如果一个字段的值或几个字段的值能够唯一标识表中的一条记录, 则这样的字段称为候选关键字 在一个表中可能会有几个符合这种要求的字段, 可以从中选择一个作为主关键字 在 Visual FoxPro 中将主关键字称作主索引, 将候选关键字称作候选索引 域完整性与约束规则 域完整性是表中域的特性, 对表中字段取值的限定都是域完整性的范围, 如字段的类型 字段的宽度和字段的有效性规则等 字段有效性规则又称作域约束规则, 只能存在于数据库表中, 在插入或修改记录时被激活, 用于检验用户输入到某个字段中的数据是否有效 一旦输入了与字段有效性验证规则不相符的字段值时, 系统会立即报错, 并且阻止该值的输入 参照完整性与表之间的关系 参照完整性是指在建立了关系的两个表之间插入 删除或修改一个表中的数据时, 通过参照引用相互关联的另一个表中的数据, 来检查对表的数据操作是否正确 在建立参照完整性之前应先建立表之间的关联 表之间的关联关系有两种, 一种是一对一的关系, 另一种是一对多的关系 在数据库设计器中设计两个表之间的联系时, 首先要使两个表具有相同属性的字段, 然后在父表中定义该字段为主索引 若在子表中定义该字段为主索引或候选索引, 则建立的是一对一的关系 ; 若在子表中定义该字段为普通索引, 则建立的是一对多的关系 1. 建立表之间的联系 在数据库设计器中建立的表之间的关系存储在数据库文件中, 不需要每次使用时都重建, 只要不删除将一直保存, 因此称为永久联系 在数据库设计器中, 表之间的永久联系显示为表索引间的连接线 科学出版社职教技术出版中心

74 60 Visual FoxPro 数据库应用技术 例 3.27 在 教学 数据库中, 通过 学号 字段建立 学生 表和 选课 表间的永久联系 ; 通过 课程号 字段建立 课程 表和 选课 表之间的永久联系 ; 通过 教师号 字段建立 教师 表和 课程 表之间的永久联系 (1) 打开 教学 数据库, 进入 数据库设计器 窗口, 为 教学 数据库中的表建立如表 3-3 所示的索引 表 3-3 教学 数据库中的表建立的索引 表名 索引类型 关键字表达式 学生 主索引 学号 选课 普通索引学号普通索引课程号 教师 主索引 教师号 课程 主索引课程号普通索引教师号 (2) 用鼠标左键选中父表 学生 表的主索引标识 学号, 拖动至子表 选课 表的索引标识 学号 处, 松开鼠标左键, 两个表之间产生一条连线 学生 表和 选课 表之间的永久联系建立完成 (3) 用上述方法建立 课程 表和 选课 表, 教师 表和 课程 表之间的一对多的永久联系, 如图 3-34 所示 图 3-34 建立永久联系的教学数据库如果需要修改或删除已建立的联系, 可以右击关系连线, 连线变粗, 从弹出的快捷菜单中选择 编辑关系 或 删除关系 选项 2. 清理数据库在建立参照完整性之前必须先清理数据库, 即物理删除数据库各个表中所有带有删除标记的记录 操作方法是打开数据库设计器后, 选择 数据库 清理数据库 命令 在清理数据库时, 如果出现如图 3-35 所示的提示对话框, 表示数据库中的表处于打开状态,

75 第 3 章数据库与数据表 61 需要关闭后才能正常完成清理数据库操作 可以在 数据工作期 窗口中关闭表, 即选择 窗口 数据工作期 命令, 打开如图 3-36 所示的 数据工作期 窗口, 选择要关闭的表, 单击 关闭 按钮 图 3-35 清理数据库出错对话框 图 3-36 数据工作期 窗口 3. 设置参照完整性约束 在清理完数据库后, 可以设置参照完整性 右击表之间的联系并从快捷菜单中选择 编辑参照完整性 命令, 打开 参照完整性生成器 对话框, 如图 3-37 所示 图 3-37 参照完整性生成器 对话框 无论单击的是哪个联系, 所有联系都将出现在参照完整性生成器中 科学出版社职教技术出版中心

76 62 Visual FoxPro 数据库应用技术 参照完整性规则包括更新规则 删除规则和插入规则 (1) 更新规则规定了当更新父表中的连接字段 ( 主关键字 ) 值时, 如何处理相关的子表中的记录 级联 : 用父表中新的连接字段值自动修改子表中的所有相关记录 限制 : 若子表中有相关的记录, 则禁止修改父表中的连接字段值 忽略 : 不作参照完整性检查, 可以随意更新父记录的连接字段值 (2) 删除规则规定了当删除父表中的记录时, 如何处理子表中相关的记录 级联 : 自动删除子表中的所有相关记录 限制 : 若子表中有相关的记录, 则禁止删除父表中的记录 忽略 : 不作参照完整性检查, 即删除父表的记录时与子表无关 (3) 插入规则规定了当插入子表中的记录时, 是否进行参照完整性检查 限制 : 若父表中没有相匹配的连接字段值则禁止插入记录 忽略 : 不作参照完整性检查, 即可以随意插入记录 例 3.28 为 教学 数据库中的 学生 和 选课 两个表设置参照完整性规则, 更新规则为 级联, 删除规则为 级联, 插入规则为 限制 (1) 教学 数据库中的表已建立永久性联系, 如图 3-34 所示 (2) 选择 数据库 清理数据库 命令, 删除所有加删除标记的记录 (3) 选择 数据库 编辑参照完整性 命令, 打开 参照完整性生成器 对话框, 如图 3-37 所示 (4) 在 关系 列表框中选择 学生 - 选课 关系 ; 在 更新规则 选项卡中选择 级联, 在 删除规则 选项卡中选择 级联, 在 插入规则 选项卡中选择 限制 建立的参照完整性规则如图 3-38 所示 图 3-38 设置各表之间的参照完整性规则 (5) 单击 确定 按钮, 连续两次弹出 参照完整性生成器 对话框, 如图 3-39 所示, 确认后即完成参照完整性设置

77 第 3 章数据库与数据表 63 图 3-39 参照完整性生成器 对话框 3.6 自由表 前面介绍的都是数据库中的表, 不属于数据库中的表就是自由表 自由表与数据库表间的联系与区别 数据库表和自由表可以相互转换, 将数据库表从数据库中移出, 数据库表就成为自 由表 ; 将一个自由表添加到某一数据库中, 自由表就成为数据库表 在 Visual FoxPro 中保留自由表是为了兼容 FoxPro 早期的软件版本 建议在 Visual FoxPro 中尽量使用数据库表, 数据库表相对于自由表有如下特点 (1) 数据库表可以使用长文件名, 在表中可以使用长字段名 (2) 可以为数据库表的字段指定默认值和输入掩码 (3) 可以为数据库表的字段指定标题, 添加注释 (4) 可以为数据库表规定字段级规则和记录级规则 (5) 数据库表支持主关键字 参照完整性和表之间的联系 建立自由表 建立自由表的过程和建立数据库表的过程基本相同, 需要注意的是建立自由表前要 先关闭数据库 可以在 命令 窗口中使用 CLOSE DATABASE 或 CLOSE ALL 命令关 闭数据库 例 3.29 创建如图 3-40 所示的自由表 选课 表 选课 表结构为 : 选课 ( 学号 C(8), 课程号 C(4), 成绩 N(3)) 操作步骤如下 : (1) 在 命令 窗口输入命令 :CLOSE ALL (2) 选择 文件 新建 表 命令, 单击 新建文件 按钮, 打开 创建 对话框, 输入文件名 选课, 单击 保存 按钮, 打开 表设计器 对话框 (3) 在 表设计器 对话框中建立表结构, 输入相应记录 向数据库中添加自由表 一个数据表只能属于一个数据库, 不允许把一个表添加到多个数据库中 在 Visual FoxPro 中常在数据库设计器中添加自由表 例 3.30 将 选课 表添加到 教学 数据库中 科学出版社职教技术出版中心 (1) 打开 教学 数据库, 在数据库设计器中选择 数据库 添加表 命令,

78 64 Visual FoxPro 数据库应用技术 如图 3-41 所示 (2) 选择 选课 表, 单击 确定 按钮, 选课 表被添加到 教学 数据库中 图 3-40 选课 表记录 图 3-41 数据库设计器 窗口 从数据库中移去或删除表当数据库不再需要某个表时, 可将其从数据库中移去或删除 从数据库中移去或删除某个表, 常在数据库设计器中完成 例 3.31 从 教学 数据库中移去或删除 选课 表 (1) 打开 教学 数据库, 在数据库设计器中右击 选课 表, 在弹出的快捷菜单中选择 删除 命令, 打开如图 3-42 所示的对话框 (2) 若单击 移去 按钮, 将 选课 表从数据库中移去, 变为自由表 ; 若单击 删除 按钮, 则将 选课 表从磁盘上物理删除 图 3-42 移去表对话框 数据库表与自由表转换的操作命令 1. 向数据库中添加自由表 ( 自由表转换为数据库表 ) 格式 ADD TABLE[< 表名 >?][NAME< 长表名 >] 功能 在当前数据库中添加指定的表 说明 (1)< 表名 >: 指添加到数据库中的表名

79 第 3 章数据库与数据表 65 (2)NAME< 长表名 >: 为表指定一个长文件名, 最多 128 个字符 例 3.32 将 课程 表添加到 教学 数据库中, 并指定长表名为 :2011 级学生课程信息表 ADD TABLE 课程 NAME 2011 级学生课程信息表 2. 从数据库中移去表 ( 数据库表转换为自由表 ) 格式 REMOVE TABLE [< 表名 >][DELETE] 功能 将指定的表从数据库中移出 说明 DELETE 表示移出表的同时将该表从磁盘上删除 例 3.33 使用命令从 教学 数据库中移去 课程 表 REMOVE TABLE 课程 3.7 多表同时使用 在 Visual FoxPro 中打开一个新表后, 前面打开的表就会关闭 在实际应用中, 用户常常需要同时对多个表文件进行操作, 为解决这一问题,Visual FoxPro 引入了工作区的概念 多工作区 工作区是每个打开的表所在的内存区, 打开表文件就是把它从磁盘调入内存的某一工作区 Visual FoxPro 提供了 个工作区, 每个工作区只能打开一个表文件, 通过选择不同的工作区, 打开不同的表文件, 可以实现对多表进行操作 在 Visual FoxPro 中, 虽然可以在不同的工作区打开多个表, 但只有最后选择的工作区是处于活动的, 称为主工作区或当前工作区, 其他的工作区称为非当前工作区 当前工作区中的表称为 当前表, 而非当前工作区中的表称为 非当前表 当前表文件能进行读写操作, 而非当前表文件, 只能进行读操作 1. 选择当前工作区 每个工作区都有自己的标号和别名 用户可以利用工作区的标号和别名来选择 更改当前工作区 (1) 工作区的标号 :Visual FoxPro 为每个工作区赋予一个唯一的标号, 分别为 1,2, 3,,32767, 也称为工作区的区号 (2) 工作区的别名 : 除了工作区标号, 系统还为每个工作区规定了一个固定别名, 称为系统别名 用户也可以在某工作区中打开一个表文件的同时为工作区定义一个别名, 称为用户别名 1 工作区的系统别名 : 1~10 号工作区的系统别名分别为 A B J; 11~32767 号工作区的系统别名分别为 W11~W32767 科学出版社职教技术出版中心

80 66 Visual FoxPro 数据库应用技术 2 工作区的用户别名 : 格式 USE < 表文件名 > [ALIAS< 别名 >] 说明 有 ALIAS 选择项时,< 别名 > 是用户为当前工作区规定的用户别名 ; 无 ALIAS 选项时, 打开的表文件名就是当前工作区的用户别名 (3) 工作区的选择 : 启动 Visual FoxPro 时, 默认 1 号工作区是当前工作区,SELECT 命令可以改变当前工作区 格式 SELECT < 工作区号 > < 工作区别名 > 功能 选择一个工作区为当前工作区 说明 若工作区号为 0, 表示选用当前未使用过的编号最小的工作区为当前工作区 例 3.34 分别在不同工作区打开 教学 数据库中的学生 课程和选课三个表 OPEN DATABASE 教学 SELECT 1 && 选择 1 号工作区 USE 学生 SELECT D && 选择 4 号工作区 USE 课程 SELECT 0 && 选择未使用的最小工作区号 2 USE 选课如果要回到第一个工作区, 可以使用命令 : SELECT 学生或 SELECT 1 使用 USE 命令可以直接指定在哪个工作区中打开表 上面例子可用下面的语句实现 : OPEN DATABASE 教学 USE 学生 IN 1 USE 课程 IN 4 USE 选课 IN 2 2. 非当前工作区字段的引用在 Visual FoxPro 中, 当前工作区中的字段在程序中可以直接引用, 而非当前工作区中的字段在程序中引用时要注明它的工作区号 在当前工作区中可通过以下两种格式访问其他工作区表中的数据 工作区别名. 字段名或工作区别名 -> 字段名 数据工作期数据工作期是多表操作的动态工作环境 利用它可以打开 关闭和浏览多个数据库表或自由表, 并可设置表属性 选择 窗口 数据工作期 命令, 打开如图 3-43 所示的 数据工作期 窗口

81 第 3 章数据库与数据表 67 图 3-43 数据工作期 窗口 数据工作期 窗口中各按钮的含义如下 (1) 打开 (O): 单击此按钮弹出如图 3-44 所示的 打开 对话框, 用户选择要打开的表文件, 打开表后如图 3-45 所示 (2) 关闭 (C): 关闭选定的表文件 (3) 属性 (P): 单击此按钮弹出如图 3-46 所示的 工作区属性 对话框, 对选定的表文件进行属性设置 (4) 浏览 (B): 以浏览的方式显示表文件内容 (5) 关系 (R): 设定两个表间的联系, 如图 3-47 所示 图 3-44 打开 对话框 图 3-46 工作区属性 对话框 图 3-45 打开表后 科学出版社职教技术出版中心 图 3-47 学生 表和 选课 表关系

82 68 Visual FoxPro 数据库应用技术 表间的临时关联在数据库中建立的表之间的永久联系可以长期存在, 随着数据库的打开而打开, 但是却不能实现不同记录之间指针的联动 而临时联系可以实现表间记录指针的联动, 这种临时联系称为关联, 用来建立关联的表称为父表, 被关联的表称为子表 建立表间的关联即临时联系后, 子表的记录指针会自动随父表的记录指针移动 1. 建立表间的关联 格式 SET RELATION TO < 表达式 > INTO [< 别名 > < 工作区号 >] 功能 将当前工作区中的表与 < 别名 > 工作区中的表建立关联 说明 (1) 在建立关联之前, 必须打开父表, 而且还必须在另一个工作区中打开子表 (2) 通常建立关联的两个表具有相同字段, 而且用来建立关系的表达式常常是父表的主控索引表达式, 子表的普通索引表达式 (3) 每当父表文件记录指针移动到某记录时, 子表文件的记录指针指向其索引中与 < 表达式 > 相匹配的第一条记录 若找不到匹配记录, 则指针指向子表文件尾 (EOF( ) 为.T.) 例 3.35 通过 学号 字段建立 学生 表和 选课 表之间的临时关联, 其中 学生 表已按 学号 建立主索引, 选课 表已按 学号 建立普通索引 CLOSE ALL OPEN DATABASE 教学 ** 在 2 号工作区中打开选课表, 设置学号索引标识为控件索引 USE 选课 IN 2 ORDER 学号 ** 在 1 号工作区中打开学生表, 设置学号索引标识为控件索引 USE 学生 IN 1 ORDER 学号 SET RELATION TO 学号 INTO 选课 && 父表 学生 和子表 选课 建立关联 LIST 学号, 选课. 课程号, 选课 -> 成绩 && 显示结果如图 3-48 所示 图 3-48 建立临时关联后显示的结果

Microsoft Word - 01.doc

Microsoft Word - 01.doc 1. 数据库系统的核心是 ( ) A. 数据库 B. 操作系统 C. 文件 D. 数据库管理系统 2. 数据模型是 ( ) 的集合 A. 文件 B. 记录 C. 数据 D. 记录及其联系 3. 数据库系统的组成包括 ( ) A. 数据库 DBMS 和数据库管理员 B. 数据库 DBMS 硬件 软件 C.DBMS 硬件 软件和数据库 D. 数据库 硬件 软件和数据库管理员 4.Visual FoxPro

More information

四川省普通高等学校

四川省普通高等学校 四 川 省 普 通 高 等 学 校 计 算 机 应 用 知 识 和 能 力 等 级 考 试 考 试 大 纲 (2013 年 试 行 版 ) 四 川 省 教 育 厅 计 算 机 等 级 考 试 中 心 2013 年 1 月 目 录 一 级 考 试 大 纲 1 二 级 考 试 大 纲 6 程 序 设 计 公 共 基 础 知 识 6 BASIC 语 言 程 序 设 计 (Visual Basic) 9

More information

数值型常量数值型常量也就是常数 用来表示数量的大小 数值型常量由数字 ' 小数点和正负号构成 例如 )&'(+: & 等 有些很大或很小的数值型常量也可以使用科学记数法形式书写 例如 用 2(&+ 7 & 表示 2(&+ C ' & 用 &(+7: & 表示 &(+C ' : & 数值型数据在内存中

数值型常量数值型常量也就是常数 用来表示数量的大小 数值型常量由数字 ' 小数点和正负号构成 例如 )&'(+: & 等 有些很大或很小的数值型常量也可以使用科学记数法形式书写 例如 用 2(&+ 7 & 表示 2(&+ C ' & 用 &(+7: & 表示 &(+C ' : & 数值型数据在内存中 第 章 数据与数据运算 在进行数据处理时 除了需要表中的数据外 还经常要处理其他的数据 根据计算机系统处理数据的形式来划分 有常量 变量 表达式和函数 种形式的数据 常量和变量是数据运算和处理的基本对象 而表达式和函数则体现了程序设计语言对数据进行运算和处理的能力与功能 本章将详细介绍这些程序设计基础要素 常量与变量 每个数据都有自己所属的数据类型 分类 数据类型决定了数据的存储方式和运算方式 每种类型的数据均有常量和变量之分

More information

FJXBQ

FJXBQ 高等医学院校选用教材 ( 供成人教育中医药专业 中西医结合专业使用 ) 方剂学 闫润红 主编 2 0 0 1 内容简介本书是供成人教育中医药专业 中西医结合专业使用的教材 全书分总论和各论两部分, 总论部分对中医方剂的基本理论, 如治法 君臣佐使 剂型 剂量等及其现代研究进展进行了介绍 各论部分对常用方剂的主治病证 配伍意义 临床应用 加减变化规律及现代研究概况等内容, 按分类进行了系统阐述 在保证方剂学学科知识结构完整性的前提下,

More information

36 Visual FoxPro 程序设计基础教程 据都包括以下 6 种数据类型 : 数值型 货币型 字符型 日期型 日期时间型和逻辑型 常量通常用于表示一个具体的 不变的值 常量在命令和程序中可以直接引用, 其特征 是在操作过程中它的值和表现形式保持不变 常量包括数值型 货币型 字符型 日期型 日

36 Visual FoxPro 程序设计基础教程 据都包括以下 6 种数据类型 : 数值型 货币型 字符型 日期型 日期时间型和逻辑型 常量通常用于表示一个具体的 不变的值 常量在命令和程序中可以直接引用, 其特征 是在操作过程中它的值和表现形式保持不变 常量包括数值型 货币型 字符型 日期型 日 第 3 章 Visual FoxPro 的数据元素 知识结构图 数值型 : 常数 ( 数字 小数点 正负号 ) 货币型 : 定界符 ($), 四舍五入 常量 字符型 : 定界符 ("" '' [ ]) 日期型 :{^yyyy mm dd} 日期时间型 :{< 日期 >,< 时间 >} 逻辑型 : 真.T. 假.F. 变量 字段变量 内存变量 简单内存变量 赋值 := STORE TO 显示输出 :???

More information

Microsoft Word - 2002Äê¼Æ»ú¶þ¼¶±ÊÊÔÊÔÌâ.doc

Microsoft Word - 2002Äê¼Æ»ú¶þ¼¶±ÊÊÔÊÔÌâ.doc 2002 年 计 机 二 级 笔 试 试 题 (VFP) 一 选 择 题 (1)~(35) 题 每 题 2 分, 共 70 分 下 列 各 题 A) B) C) D) 四 个 先 项 中, 只 有 一 个 选 择 是 正 确 的, 请 将 正 确 选 项 涂 写 在 答 题 卡 相 应 位 置 上, 答 在 试 卷 上 不 得 分 (1) 关 系 数 据 库 管 理 系 统 所 管 理 的 关 系

More information

科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心

More information

科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心

More information

科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心

More information

科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心 www.aboo 科学出版社职教技术出版中心

More information

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例 帝国 CMS 下在 PHP 文件中调用数据库类执行 SQL 语句实例 这篇文章主要介绍了帝国 CMS 下在 PHP 文件中调用数据库类执行 SQL 语句实例, 本文还详细介绍了帝国 CMS 数据库类中的一些常用方法, 需要的朋友可以参考下 例 1: 连接 MYSQL 数据库例子 (a.php)

More information

普通高等教育医药类院校 十二五 规划教材信息技术类 Visual FoxPro 程序设计教程 王延红肖峰主编姜华张希伟副主编郑尚志梁宝华参编周进钱进参编 北京

普通高等教育医药类院校 十二五 规划教材信息技术类 Visual FoxPro 程序设计教程 王延红肖峰主编姜华张希伟副主编郑尚志梁宝华参编周进钱进参编 北京 社 心 版 中 出 版 学 科 术出 k.cn o 技 o b 教 a. 职 ww w 普通高等教育医药类院校 十二五 规划教材信息技术类 Visual FoxPro 程序设计教程 王延红肖峰主编姜华张希伟副主编郑尚志梁宝华参编周进钱进参编 北京 内容简介本书依据全国计算机等级考试 ( 二级 )Visual FoxPro 程序设计的最新大纲及教育部高等学校非计算机专业基础课程教学指导委员会对计算机基础课程教学的基本要求,

More information

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 月 3 日 1 1 INPUTOUTPUT 1 InputOutput 题目描述 用 cin 输入你的姓名 ( 没有空格 ) 和年龄 ( 整数 ), 并用 cout 输出 输入输出符合以下范例 输入 master 999 输出 I am master, 999 years old. 注意 "," 后面有一个空格,"." 结束,

More information

ExcelUtility 类库使用说明 ( 续 ) 开发 / 设计 : 左文俊 第一个新增功能, 列宽自适应, 当超过 30 个字符则将单元格内容设为换行 任意一个无模板的导出方法均支持该功能, 示例代码如下 : /// <summary> /// 测试方法

ExcelUtility 类库使用说明 ( 续 ) 开发 / 设计 : 左文俊 第一个新增功能, 列宽自适应, 当超过 30 个字符则将单元格内容设为换行 任意一个无模板的导出方法均支持该功能, 示例代码如下 : /// <summary> /// 测试方法 ExcelUtility 类库使用说明 ( 续 ) 开发 / 设计 : 左文俊 第一个新增功能, 列宽自适应, 当超过 0 个字符则将单元格内容设为换行 任意一个无模板的导出方法均支持该功能, 示例代码如下 : 0 /// 测试方法 : 测试将 DataTable 导出到 EXCEL, 无模板 public void TestExportToExcelByDataTable() string excelpath

More information

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464>

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464> 第 1 章 进入 Photoshop 的全新世界 本章导读 Photoshop 1 1.1 Photoshop CS6 Photoshop Photoshop 1.1.1 Photoshop POP 1-1 图 1-1 平面广告效果 1.1.2 Photoshop 1-2 Photoshop CS6 Photoshop CS6 Photoshop CS6 Extended 3D 3 Photoshop

More information

手册 doc

手册 doc 1. 2. 3. 3.1 3.2 3.3 SD 3.4 3.5 SD 3.6 3.7 4. 4.1 4.2 4.3 SD 4.4 5. 5.1 5.2 5.3 SD 6. 1. 1~3 ( ) 320x240~704x288 66 (2G SD 320x2401FPS ) 32M~2G SD SD SD SD 24V DC 3W( ) -10~70 10~90% 154x44x144mm 2. DVR106

More information

科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心

More information

科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心

More information

科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心 科学出版社职教技术出版中心

More information

Microsoft Word - WJ01.doc

Microsoft Word - WJ01.doc 第一部分 Visual FoxPro 实验与实训 第 1 章 Visual FoxPro 数据库系统 实验一熟悉 Visual FoxPro 6.0 环境 实验目的 1. 了解 Visual FoxPro 软件的安装过程, 掌握 Visual FoxPro 的安装方法 2. 掌握 Visual FoxPro 应用程序窗口的各组成部分, 并能熟练使用 实验内容 1. Visual FoxPro 的安装

More information

试题二

试题二 试题二 一 选择题 1 [ 单选题 ] 为数据表 CJ 添加一备注型字段 " 简历 ", 可采用下列的 命令 INSERT TABLE CJ 简历 (M) ADD TABLE CJ 简历 M ALTER TABLE CJ ADD 简历 M ALTER TABLE CJ INSERT 简历 (M) 2 [ 单选题 ] 要显示 " 参照完整性 ", 可以 从 " 数据库设计器 " 快捷菜单中选择 " 编辑参照完整性

More information

图书在版编目穴 CIP 雪数据做事细节全书 / 赵彦锋编著郾 北京 : 企业管理出版社, ISBN Ⅰ 郾做... Ⅱ 郾赵... Ⅲ 郾工作方法 通俗读物 Ⅳ 郾 B 中国版本图书馆 CIP 数据核字 (2005) 第 号 书

图书在版编目穴 CIP 雪数据做事细节全书 / 赵彦锋编著郾 北京 : 企业管理出版社, ISBN Ⅰ 郾做... Ⅱ 郾赵... Ⅲ 郾工作方法 通俗读物 Ⅳ 郾 B 中国版本图书馆 CIP 数据核字 (2005) 第 号 书 做事细节全书 赵彦锋著 企业管理出版社 图书在版编目穴 CIP 雪数据做事细节全书 / 赵彦锋编著郾 北京 : 企业管理出版社, 2005.11 ISBN 7-80197-338-0 Ⅰ 郾做... Ⅱ 郾赵... Ⅲ 郾工作方法 通俗读物 Ⅳ 郾 B026-49 中国版本图书馆 CIP 数据核字 (2005) 第 136676 号 书 名 : 做事细节全书 作 者 : 赵彦锋 责任编辑 : 吴太刚

More information

Microsoft Word 新正文.doc

Microsoft Word 新正文.doc 第 2 章 Visual FoxPro 6.0 系统概述 Visual FoxPro 6.0 是以关系模型为基础的 32 位数据库管理系统 (DBMS), 是适于在 PC 机上使用的小型 DBMS 与大型 DBMS 相比较, 它具有操作简单 易学易用的特点, 极大地方便了软件的开发, 因而被广泛地使用 本章介绍 Visual FoxPro 的基础知识, 包括 Visual FoxPro 的特点 工作环境

More information

长 安 大 学 硕 士 学 位 论 文 基 于 数 据 仓 库 和 数 据 挖 掘 的 行 为 分 析 研 究 姓 名 : 杨 雅 薇 申 请 学 位 级 别 : 硕 士 专 业 : 计 算 机 软 件 与 理 论 指 导 教 师 : 张 卫 钢 20100530 长安大学硕士学位论文 3 1 3系统架构设计 行为分析数据仓库的应用模型由四部分组成 如图3 3所示

More information

Microsoft PowerPoint - 03.Fortran程序设计基础1

Microsoft PowerPoint - 03.Fortran程序设计基础1 简单 Fortran 90 程序的构造形式 : 第二讲 Fortran 程序设计基础 (2) [PROGRAM 程序名 ] [ 声明语句 ] [ 执行语句 ] END [PROGRAM [ 程序名 ]] 程序的书写 (P5) PROGRAM MONEY!calculate balance after interest compounded! 根据利息计算余额 REAL BALANCE, INTEREST,

More information

普通高等教育 十二五 规划教材计算机系列规划教材 Visual FoxPro 程序设计实验与实训指导 刘建平杨钧主编 刘广张颖吴磊副主编 朱丽莉主审 科学出版社职教技术出版中心 北京

普通高等教育 十二五 规划教材计算机系列规划教材 Visual FoxPro 程序设计实验与实训指导 刘建平杨钧主编 刘广张颖吴磊副主编 朱丽莉主审 科学出版社职教技术出版中心   北京 普通高等教育 十二五 规划教材计算机系列规划教材 Visual FoxPro 程序设计实验与实训指导 刘建平杨钧主编 刘广张颖吴磊副主编 朱丽莉主审 科学出版社职教技术出版中心 www.aboo 北京 内容简介本书是 Visual FoxPro 程序设计 ( 刘建平 吴磊主编, 科学出版社 ) 的配套教材, 共 21 个实验项目, 包含了 Visual FoxPro 6.0 软件的初步使用 项目管理器的操作

More information

内容简介根据教育部高等学校非计算机专业计算机基础课程教学指导委员会提出的非计算机专业计算机基础课程的教学要求, 本书以 Visual FoxPro 6.0 为软件背景, 深入浅出地介绍了关系数据库管理系统的基础理论及开发技术 本书系统全面地介绍了 Microsoft Visual FoxPro( 简

内容简介根据教育部高等学校非计算机专业计算机基础课程教学指导委员会提出的非计算机专业计算机基础课程的教学要求, 本书以 Visual FoxPro 6.0 为软件背景, 深入浅出地介绍了关系数据库管理系统的基础理论及开发技术 本书系统全面地介绍了 Microsoft Visual FoxPro( 简 普通高等教育 十二五 规划教材 Visual FoxPro 数据库程序设计 陈东升主编熊瑞英牛朵朵副主编副主编罗根源杨明硕副主编朱丽莉主审 科学出版社职教技术出版中心 www.aboo 北京 内容简介根据教育部高等学校非计算机专业计算机基础课程教学指导委员会提出的非计算机专业计算机基础课程的教学要求, 本书以 Visual FoxPro 6.0 为软件背景, 深入浅出地介绍了关系数据库管理系统的基础理论及开发技术

More information

内容简介 本书根据全国计算机等级考试二级 Visual FoxPro 数据库程序设计考试大纲要求, 结合目前高等院校计算机程序设计课程教学的情况, 系统 全面地介绍了 Visual FoxPro 数据库程序设计的基础知识 本书以一个简单数据库应用系统 学生成绩管理系统的开发过程为主线组织内容, 将理

内容简介 本书根据全国计算机等级考试二级 Visual FoxPro 数据库程序设计考试大纲要求, 结合目前高等院校计算机程序设计课程教学的情况, 系统 全面地介绍了 Visual FoxPro 数据库程序设计的基础知识 本书以一个简单数据库应用系统 学生成绩管理系统的开发过程为主线组织内容, 将理 普通高等教育计算机系列规划教材 Visual FoxPro 程序设计基础 ( 第二版 ) 齐邦强 齐苏敏主编王蓓王抒黄宝贵朱荣 副主编 科学出版社职教技术出版中心 北京 内容简介 本书根据全国计算机等级考试二级 Visual FoxPro 数据库程序设计考试大纲要求, 结合目前高等院校计算机程序设计课程教学的情况, 系统 全面地介绍了 Visual FoxPro 数据库程序设计的基础知识 本书以一个简单数据库应用系统

More information

普通高等教育 十二五 重点规划教材公共课系列中国科学院教材建设专家委员会 十二五 规划教材 Visual FoxPro 6.0 程序设计教程 侯仲尼朱丽莉张丹彤主编 梁银山刘国成董迎红刘钱副主编 科学出版社职教技术出版中心 北京

普通高等教育 十二五 重点规划教材公共课系列中国科学院教材建设专家委员会 十二五 规划教材 Visual FoxPro 6.0 程序设计教程 侯仲尼朱丽莉张丹彤主编 梁银山刘国成董迎红刘钱副主编 科学出版社职教技术出版中心   北京 普通高等教育 十二五 重点规划教材公共课系列中国科学院教材建设专家委员会 十二五 规划教材 Visual FoxPro 6.0 程序设计教程 侯仲尼朱丽莉张丹彤主编 梁银山刘国成董迎红刘钱副主编 科学出版社职教技术出版中心 www.aboo 北京 内容简介本书以 Visual FoxPro 6.0 为基础, 深入浅出地介绍了关系数据库管理系统的基础理论及数据库应用系统的开发过程 本书主要内容包括概述

More information

C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 1 TEMPLATE 1 Template 描述 使用模板函数求最大值 使用如下 main 函数对程序进行测试 int main() { double a, b; cin >> a >> b; cout c >> d; cout

More information

122 数据库原理与应用 建立项目文件在 Visual FoxPro 系统中创建具有菜单 报表和表单等功能的应用程序的最简便有效的方法是使用项目文件 (Project File) 来建立这个应用程序 Visual FoxPro 中的项目文件是以.PJX 为扩展名的文件, 在项目文件中包含

122 数据库原理与应用 建立项目文件在 Visual FoxPro 系统中创建具有菜单 报表和表单等功能的应用程序的最简便有效的方法是使用项目文件 (Project File) 来建立这个应用程序 Visual FoxPro 中的项目文件是以.PJX 为扩展名的文件, 在项目文件中包含 第 5 章 Visual FoxPro 的基本操作 ( 知识点 数据表 数据库 自由表 视图 报表 表单 菜单 控件 数据更新 数据维护 项目管理 ~ 难点 数据表 数据库的结构定义 表与表 库与表之间的关系 表与视图的关系 SQL 语言的查询方法 与其他语言之间的数据交换 表单 菜单 控件的建立与使用方法 要求熟练掌握以下内容 : 项目的建立与使用 视图 报表的建立与使用 数据表 数据库的建立与使用方法

More information

《计算概论》课程 第十九讲 C 程序设计语言应用

《计算概论》课程 第十九讲  C 程序设计语言应用 计算概论 A 程序设计部分 字符数组与字符串 李戈 北京大学信息科学技术学院软件研究所 lige@sei.pku.edu.cn 字符数组的定义 #include int main() char a[10] = 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j' ; for (int i = 0; i < 10; i++) cout

More information

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 第 1 页共 32 页 crm Mobile V1.0 for IOS 用户手册 一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 二 crm Mobile 界面介绍 : 第 3 页共 32 页 三 新建 (New) 功能使用说明 1 选择产品 第 4 页共 32 页 2 填写问题的简要描述和详细描述 第 5 页共

More information

Microsoft Word - 1_page0.doc

Microsoft Word - 1_page0.doc 社 心 版 中 出 学 出版 cn 科 术 k. 技 boo 教.a 职 ww w 普通高等教育计算机系列规划教材 Visual FoxPro 程序设计基础 齐苏敏主编齐邦强孙尚辉王抒鲁大营副主编 北 京 内容简介 本书根据全国计算机等级考试二级 Visual FoxPro 数据库程序设计考试大纲要求, 结合目前高等院校学生学习计算机程序设计课程的情况, 系统 全面地介绍了 Visual FoxPro

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 The BitCoin Scripting Language 交易实例 交易结构 "result": { "txid": "921a dd24", "hash": "921a dd24", "version": 1, "size": 226, "locktime": 0, "vin": [ ], "vout": [ ], "blockhash": "0000000000000000002c510d

More information

图书在版编目 (CIP) 数据 满堂花醉 / 沈胜衣著. 南京 : 江苏教育出版社, ( 沈郎文字 ) ISBN Ⅰ. 满... Ⅱ. 沈... Ⅲ. 作家 - 人物研究 - 世界 Ⅳ.K815.6 中国版本图书馆 CIP 数据核字 (2005) 第 041

图书在版编目 (CIP) 数据 满堂花醉 / 沈胜衣著. 南京 : 江苏教育出版社, ( 沈郎文字 ) ISBN Ⅰ. 满... Ⅱ. 沈... Ⅲ. 作家 - 人物研究 - 世界 Ⅳ.K815.6 中国版本图书馆 CIP 数据核字 (2005) 第 041 图书在版编目 (CIP) 数据 满堂花醉 / 沈胜衣著. 南京 : 江苏教育出版社, 2005.4 ( 沈郎文字 ) ISBN 7-5343-6512-0 Ⅰ. 满... Ⅱ. 沈... Ⅲ. 作家 - 人物研究 - 世界 Ⅳ.K815.6 中国版本图书馆 CIP 数据核字 (2005) 第 041843 号 出版者社址网址出版人 南京市马家街 31 号邮编 :210009 http://www.1088.com.cn

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN:978-7-302-13599-9, 红色封面 答案制作时间 :2011 年 2 月 -5 月 一 选择题 1. 设已定义 int a, * p, 下列赋值表达式中正确的是 :C)p=&a 2. 设已定义 int x,*p=&x;, 则下列表达式中错误的是 :B)&*x 3. 若已定义 int a=1,*b=&a;,

More information

untitled

untitled 21 Visual FoxPro Visual FoxPro 6.0 11 Visual FoxPro Visual FoxPro CIP Visual FoxPro 2004 21 ISBN 7-03-014834-7 V Visual FoxPro TP311.138 CIP 2004 143035 16 100717 http://www.sciencep.com * 2004 12 7871092

More information

8 Visual FoxPro 程序设计教程 ( 第二版 ) 习题集与解答 A) 变量未定义的提示 B)10 C)20 D).F. 9. 在下面的 Visual FoxPro 表达式中, 运算结果为逻辑真的是 A)EMPTY(. NULL. ) C)AT( 'xy','abcxyz') 10. 依次

8 Visual FoxPro 程序设计教程 ( 第二版 ) 习题集与解答 A) 变量未定义的提示 B)10 C)20 D).F. 9. 在下面的 Visual FoxPro 表达式中, 运算结果为逻辑真的是 A)EMPTY(. NULL. ) C)AT( 'xy','abcxyz') 10. 依次 第 2 章数据类型 常量 变量与项目的使用 习题二 一 选择题 1. 表达式 2*2^3 4/8+3 的值为 A)24.45 B)18.50 C)18 D)0 2. 设 x = " 11",Y = " 1122", 下列表达式结果为假的是 A)NOT ( X = = Y) AND (X $ Y) B)NOT (X $ Y) OR ( X < > Y) C)NOT ( X > = Y) D)NOT (X

More information

单元四数据的查询 数据库原理与应用 课内例题 任务 5 多表查询 课内例题 例创建数据表 orders, 并向表中添加记录 首先创建表 orders,sql 语句如下 : CREATE TABLE orders( o_num int NOT NULL AUTO_INCREMENT, o_date d

单元四数据的查询 数据库原理与应用 课内例题 任务 5 多表查询 课内例题 例创建数据表 orders, 并向表中添加记录 首先创建表 orders,sql 语句如下 : CREATE TABLE orders( o_num int NOT NULL AUTO_INCREMENT, o_date d 任务 5 多表查询 课内例题 例创建数据表 orders, 并向表中添加记录 首先创建表 orders,sql 语句如下 : CREATE TABLE orders( o_num int NOT NULL AUTO_INCREMENT, o_date datetime NOT NULL, c_id int NOT NULL, PRIMARY KEY (o_num) ) ; 插入需要演示的数据,SQL

More information

《C语言程序设计》第2版教材习题参考答案

《C语言程序设计》第2版教材习题参考答案 教材 C 语言程序设计 ( 第 2 版 ) 清华大学出版社, 黄保和, 江弋编著 2011 年 10 月第二版 ISBN:978-7-302-26972-4 售价 :35 元 答案版本 本习题答案为 2012 年 2 月修订版本 一 选择题 1. 设已定义 int a, * p, 下列赋值表达式中正确的是 :C)p = &a A. *p = *a B. p = *a C.p = &a D. *p =

More information

Microsoft Word - 正文.doc

Microsoft Word - 正文.doc 3 Access 3.1 SharePoint SharePoint SharePoint 3.6 1 1.15 1 3.1 3.2 1 3.1 40 Access 3.2 2 ID / 3.3 3 3.4 3.5 3.3 / 3.4 3.5 3 41 4 / 6 3.6 3.6 5 1 40 24 3.7 3.7 6 3.8 * 3.8 2 42 Access 1.16 1 3.1 / 1 3.9

More information

!"# $ %&'!"#$

!# $ %&'!#$ !"# $ %&'!"#$ 内容简介本书是在作者已经出版的 XilinxAlProgrammableZynq-7000SoC 设计指南 一书的基础上进行大幅度修订而成的 本书的一大特色就是更加突出 ARMCortex-A9 双核处理器的使用 此外, 在修订本书时采用了 Xilinx 最新的 Vivado2015 4 集成开发环境 通过本书的修订, 能反映最新的 ARM 嵌入式设计技术和实现方法, 同时也能更加凸显采用异构架构的

More information

实用教程 任务一 : 安装 程序 任务描述小张是某程序公司的员工, 目前需要使用 进行开发工作 所以小张需要安装 程序, 并熟悉其基本操作 任务分析在学习 之前, 首先需要在电脑上安装 软件 下面我们可以跟小张一起学习 程序的安装过程 准备知识 1. 的发展历程 的发展历史可以分为以下几个阶段 1

实用教程 任务一 : 安装 程序 任务描述小张是某程序公司的员工, 目前需要使用 进行开发工作 所以小张需要安装 程序, 并熟悉其基本操作 任务分析在学习 之前, 首先需要在电脑上安装 软件 下面我们可以跟小张一起学习 程序的安装过程 准备知识 1. 的发展历程 的发展历史可以分为以下几个阶段 1 1 项目一 基础知识 项目要点安装 程序定制工具栏利用项目管理器创建及定制新项目开发应用程序 引言 本项目通过安装 程序 定制工具栏 创建及定制新项目 开发应用程序等操作, 介绍了 Visual FoxPro 的安装 启动 退出, 的用户界面 项目管理器 选项对话框 向导 设计器和生成器以及应用开发步骤等主要内容 实用教程 任务一 : 安装 程序 任务描述小张是某程序公司的员工, 目前需要使用 进行开发工作

More information

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP:  ******************* * 关于 Java 测试试题 ****** ******************* * 关于 Java 测试试题 ******************* 問 1 运行下面的程序, 选出一个正确的运行结果 public class Sample { public static void main(string[] args) { int[] test = { 1, 2, 3, 4, 5 ; for(int i = 1 ; i System.out.print(test[i]);

More information

目录 1 IPv6 PIM Snooping 配置命令 IPv6 PIM Snooping 配置命令 display pim-snooping ipv6 neighbor display pim-snooping ipv6 routing-ta

目录 1 IPv6 PIM Snooping 配置命令 IPv6 PIM Snooping 配置命令 display pim-snooping ipv6 neighbor display pim-snooping ipv6 routing-ta 目录 1 IPv6 PIM Snooping 配置命令 1-1 1.1 IPv6 PIM Snooping 配置命令 1-1 1.1.1 display pim-snooping ipv6 neighbor 1-1 1.1.2 display pim-snooping ipv6 routing-table 1-2 1.1.3 display pim-snooping ipv6 statistics

More information

Microsoft Word - FM{new}.doc

Microsoft Word - FM{new}.doc Lanczos 方法 Louis Komzsik 著张伟廖本善译 演变与应用 清华大学出版社 北京 内容简介 Lanczos 方法是 20 世纪计算数学方向最有影响的方法之一, 并且已经在工程中得到了广泛应用. 本书兼顾了 Lanczos 方法的理论演变和工程中的实际应用, 其内容分为两部分 : 第一部分阐述了方法的演变, 并提供了具体算法 ; 第二部分讨论了工业中的实际应用, 包括常用的模态分析

More information

sql> startup mount 改变数据库的归档模式 sql> alter database archivelog # 打开数据库 sql> alter database open 禁止归档模式 sql> shutdown immediate sql>startup mount sql> al

sql> startup mount 改变数据库的归档模式 sql> alter database archivelog # 打开数据库 sql> alter database open 禁止归档模式 sql> shutdown immediate sql>startup mount sql> al RMAN sql> sqlplus / as sysdba 查看数据库版本 sql> select * from v$version; 查看数据库名称 sql> show parameter db_name; 一 使用 RMAN 时, 需要将数据库设置成归档模式 sql> conn / as sysdba; sql> show user 查看数据库是否为归档模式 sql> archive log list

More information

扉页.doc

扉页.doc 高 职 高 专 规 划 教 材 中 文 PowerPoint 2002 操 作 教 程 本 书 编 委 会 编 西 北 工 业 大 学 出 版 社 内 容 提 要 本 书 为 高 职 高 专 计 算 机 系 列 教 材 之 一 书 中 主 要 介 绍 了 中 文 PowerPoint 2002 的 基 础 知 识, 演 示 文 稿 的 制 作 播 放, 以 及 文 本 报 表 图 表 图 示 幻 灯

More information

Microsoft Word - 新1-5.doc

Microsoft Word - 新1-5.doc 第 1 章创建 Access 2003 数据库与数据表 实训目的 学习关系型数据库的基本概念, 建立面向对象的数据库应用系统设计概念 掌握 Access 2003 的进入与退出方法, 了解 Access 2000 数据库管理系统的开发环境及其基本对象 学习并掌握创建 Access 2003 数据库对象的方法, 创建 零售商店管理信息系统 数据库 掌握 Access 2003 数据库对象的操作方法 掌握

More information

北京大学

北京大学 1 string 类 郭炜刘家瑛 北京大学程序设计实习 string 类 string 类是一个模板类, 它的定义如下 : typedef basic_string string; 使用 string 类要包含头文件 string 对象的初始化 : string s1("hello"); // 一个参数的构造函数 string s2(8, x ); // 两个参数的构造函数

More information

A) 属性 B) 键 C) 关系 D) 域 (11) 数据库 (DB) 数据库系统(DBS) 和数据库管理系统 (DBMS) 三者之间的关系是 ( ) A)DBS 包括 DB 和 DBMS B)DBMS 包括 DB 和 DBS C)DB 包括 DBS 和 DBMS D)DBS 就是 DB, 也就是

A) 属性 B) 键 C) 关系 D) 域 (11) 数据库 (DB) 数据库系统(DBS) 和数据库管理系统 (DBMS) 三者之间的关系是 ( ) A)DBS 包括 DB 和 DBMS B)DBMS 包括 DB 和 DBS C)DB 包括 DBS 和 DBMS D)DBS 就是 DB, 也就是 2009 年 3 月全国计算机等级考试二级笔试试卷 Visual FoxPro 数据库程序设计 ( 考试时间 90 分钟, 满分 100 分 ) 一 选择题 ( 每小题 2 分, 共 70 分 ) 下列各题 A) B) C) D) 四个选项中, 只有一个选项是正确的, 请将正确选项涂写在答题卡相应位置 上, 答在试卷上不得分 (1) 下列叙述中正确的是 ( ) A) 栈是 先进先出 的线性表 B)

More information

Microsoft Word - page0.doc

Microsoft Word - page0.doc 普通高等教育 十二五 规划教材计算机系列规划教材 Visual FoxPro 程序设计实验与实训指导 ( 第二版 ) 刘建平刘广张颖主编吴磊刘世芳蔡洪涛副主编 科学出版社职教技术出版中心 www.aboo 北京 内容简介 本书是 Visual FoxPro 程序设计 ( 第二版 ) 的配套教材, 主要包括两方面的内容 : 上机实验和全国计算机等级考试 ( 二级 Visual FoxPro) 应试练习及参考答案

More information

Microsoft Word - 第3章.doc

Microsoft Word - 第3章.doc 第 3 章流程控制和数组 3.1 实验目的 (1) 熟练掌握控制台应用程序的代码编写和调试, 以及运行方法 (2) 掌握选择结构的一般语法格式和应用 (3) 掌握 switch 语句的用法 (4) 掌握选择结构的嵌套的用法, 能灵活使用选择结构解决实际问题 (5) 掌握 while 循环语句的一般语法格式 (6) 掌握 for 循环语句的一般语法格式 (7) 掌握循环嵌套的语法格式 (8) 掌握一维数组的定义

More information

内容简介本书是 VisualFoxPro 程序设计教程 ( 李敬兆主编, 科学出版社出版 ) 的配套实验教程, 主要内容包括 VisualFoxPro6.0 集成环境实验 Visual FoxPro 表操作实验 VisualFoxPro 数据库操作实验 VisualFoxPro 程序设计实验 关系数

内容简介本书是 VisualFoxPro 程序设计教程 ( 李敬兆主编, 科学出版社出版 ) 的配套实验教程, 主要内容包括 VisualFoxPro6.0 集成环境实验 Visual FoxPro 表操作实验 VisualFoxPro 数据库操作实验 VisualFoxPro 程序设计实验 关系数 普通高等教育 十二五 重点规划教材 计算机系列 中国科学院教材建设专家委员会 十二五 规划教材 犞犻狊狌犪犾犉狅狓犘狉狅程序设计实验教程 李敬兆 主编 曲卫平 张柱张玉韦忠亮周庆松赵宝周文 副主编 科学出版社职教技术出版中心 www.aboo 北 京 内容简介本书是 VisualFoxPro 程序设计教程 ( 李敬兆主编, 科学出版社出版 ) 的配套实验教程, 主要内容包括 VisualFoxPro6.0

More information

Visual FoxPro 8.0 数据库程序设计 实验指导 综合实验习题参考答案等级考试参考 张民坤马崇华 吕宁 赵晓侠编著 华明 王鸿

Visual FoxPro 8.0 数据库程序设计 实验指导 综合实验习题参考答案等级考试参考 张民坤马崇华 吕宁 赵晓侠编著 华明 王鸿 Visual FoxPro 8.0 数据库程序设计 实验指导 综合实验习题参考答案等级考试参考 张民坤马崇华 吕宁 赵晓侠编著 华明 王鸿 前 言 Visual FoxPro 是用于小型数据库系统开发的优秀软件, 其最新版本 Visual FoxPro 8.0 是 Visual FoxPro 系统软件的一次大的变革 为配合教学, 培养学生的实践能力, 让学生结合 所学的知识, 了解小型数据库系统的开发过程,

More information

图书在版编目 (CIP) 数据 文学与现代性批判 / 邵建著. 南京 : 江苏教育出版社, ISBN Ⅰ. 文... Ⅱ. 邵... Ⅲ. 当代文学 - 文学研究 - 中国 Ⅳ.I206.7 中国版本图书馆 CIP 数据核字 ( 2005 ) 第 04185

图书在版编目 (CIP) 数据 文学与现代性批判 / 邵建著. 南京 : 江苏教育出版社, ISBN Ⅰ. 文... Ⅱ. 邵... Ⅲ. 当代文学 - 文学研究 - 中国 Ⅳ.I206.7 中国版本图书馆 CIP 数据核字 ( 2005 ) 第 04185 图书在版编目 (CIP) 数据 文学与现代性批判 / 邵建著. 南京 : 江苏教育出版社, 2005.4 ISBN 7-5343-6528-7 Ⅰ. 文... Ⅱ. 邵... Ⅲ. 当代文学 - 文学研究 - 中国 Ⅳ.I206.7 中国版本图书馆 CIP 数据核字 ( 2005 ) 第 041850 号 出版者社址网址出版人 南京市马家街 31 号邮编 :210009 http://www.1088.com.cn

More information

项目 3 创建和管理表 任务实现 Office Visio PK 3 FK FK1 3.1 相关知识 SQL Server 一 制订表规划 1. 表要存储什么对象 2. 表中每一列的数据类型和长度 059

项目 3 创建和管理表 任务实现 Office Visio PK 3 FK FK1 3.1 相关知识 SQL Server 一 制订表规划 1. 表要存储什么对象 2. 表中每一列的数据类型和长度 059 项目 3 创建和管理表 表是数据库中最重要的基础对象 它包含数据库中的所有数据 其他数据库对象 例如索引和视图等 都是依赖于表而存在的 若要使用数据库来存储和组织数据 首先就需要创建表 在本项目中将通过 15 个任务来创建和管理表 主要内容包括表的设计 理解 SQL Server 2008 中的数据类型 以及创建和修改表等 任务 1 表的设计 任务描述 Office Visio 3.1 3.1 项目

More information

ChinaBI企业会员服务- BI企业

ChinaBI企业会员服务- BI企业 商业智能 (BI) 开源工具 Pentaho BisDemo 介绍及操作说明 联系人 : 杜号权苏州百咨信息技术有限公司电话 : 0512-62861389 手机 :18616571230 QQ:37971343 E-mail:du.haoquan@bizintelsolutions.com 权限控制管理 : 权限控制管理包括 : 浏览权限和数据权限 ( 权限部分两个角色 :ceo,usa; 两个用户

More information

F515_CS_Book.book

F515_CS_Book.book /USB , ( ) / L R 1 > > > 2, / 3 L 1 > > > 2 + - 3, 4 L 1 了解显示屏上显示的图标 Wap 信箱收到一条 Wap push 信息 ( ) GSM 手机已连接到 GSM 网络 指示条越多, 接收质量越好 2 ...........................4.............................. 4 Micro SD (

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 第 6 章 Office 2010 信息管理应用 主讲 : 计算机应用基础 提纲 数据库概述 Access 2010 Access2010 的基本操作 Access 2010 的基本对象 Access2010 的操作界面数据库 表 查询创建及操作 Outlook 2010 概述 Outlook 2010 账户管理 电子邮件管理 日程管理 任务管理 2 6.1 Access2010 Access 2010

More information

44 Access 2010 数据库程序设计实验教程 图 3 2 简单查询向导二 2. 使用查询向导创建查询 ts2, 查询 tstud 表的 学号 姓名 字段, tcourse 表的 课程名 字段, tscore 表的 成绩 字段 打开 学生管理.accdb, 使用查询向导创建一个查询, 在 简单

44 Access 2010 数据库程序设计实验教程 图 3 2 简单查询向导二 2. 使用查询向导创建查询 ts2, 查询 tstud 表的 学号 姓名 字段, tcourse 表的 课程名 字段, tscore 表的 成绩 字段 打开 学生管理.accdb, 使用查询向导创建一个查询, 在 简单 第 3 章查询 实验一 选择查询 实验目的 掌握利用查询向导创建查询 掌握利用查询设计视图创建查询 掌握分组计算 数据来源 实验用数据库 / 第三章查询 / 实验一 / 学生管理.accdb 实验内容 1. 使用查询向导创建查询 ts1, 查询 tstud 表的 姓名 性别 入校时间 毕 业学校 字段 打开 学生管理.accdb, 使用查询向导创建一个查询, 在 简单查询向导 对话 框中选择 表 :tstud,

More information

JAVA 单元 2.1 四则运算机 ( 一 ) 单元教学进度设计 教学环节 教学内容 教师学生活动活动 反馈 反馈课前作业完成情况 反馈加分 1. 下面哪些是合法的变量名? ( ) A.2variable 答案 :DEG B..variable2 解答 : C.._whatavariable A:/

JAVA 单元 2.1 四则运算机 ( 一 ) 单元教学进度设计 教学环节 教学内容 教师学生活动活动 反馈 反馈课前作业完成情况 反馈加分 1. 下面哪些是合法的变量名? ( ) A.2variable 答案 :DEG B..variable2 解答 : C.._whatavariable A:/ 单元 2.1 四则运算机 ( 一 ) 单元教学进度设计 教学环节 教学内容 教师学生活动活动 反馈 反馈课前作业完成情况 反馈加分 1. 下面哪些是合法的变量名? ( ) A.2variable 答案 :DEG B..variable2 解答 : C.._whatavariable A:// 不能以数字开头 D._3_ B:// 不能用点和空格 提问 抢答 E.$anothervar C: // 不能用点和空格

More information

器之 间 向一致时为正 相反时则为负 ③大量电荷的定向移动形成电 流 单个电荷的定向移动同样形成电流 3 电势与电势差 1 陈述概念 电场中某点处 电荷的电势能 E p 与电荷量 q Ep 的比值叫做该点处的电势 表达式为 V 电场中两点之间的 q 电势之差叫做电势差 表达式为 UAB V A VB 2 理解概念 电势差是电场中任意两点之间的电势之差 与参考点的选择无关 电势是反映电场能的性质的物理量

More information

Microsoft Word - 第4章 单表查询—教学设计.doc

Microsoft Word - 第4章 单表查询—教学设计.doc 传智播客 MySQL 数据库入门 教学设计 课程名称 : MySQL 数据库入门 授课年级 : 2015 年级 授课学期 : 2015 学年第一学期 教师姓名 : 某某老师 2014 年 04 月 09 日 课题名称第 4 章单表查询 计划 学时 7 课时 内容分析教学目标及基本要求重点及措施 通过前面章节的学习, 我们知道如何对数据进行添加 修改 删除等操作 数据库还有一项重要的操作就是查询数据,

More information

Microsoft Word - 财务d08z.doc

Microsoft Word - 财务d08z.doc 版 权 所 有 侵 权 必 究 图 书 在 版 编 目 (CIP) 数 据 用 好 Excel(2007 版 ): 财 务 篇 / 王 维, 云 大 勇 编 著. 北 京 : 中 国 宇 航 出 版 社,2007.5 ( 时 尚 IT 生 活 秀 ) ISBN 978-7-80218-208-0 Ⅰ. 用 Ⅱ.1 王 2 云 Ⅲ. 电 子 表 格 系 统,Excel Ⅳ.TP391.13 中 国 版

More information

Microsoft Word - yx-wq.doc

Microsoft Word - yx-wq.doc 普通高等教育 十三五 规划教材 医学数据库应用教程 娄岩主编 徐东雨郑琳琳副主编 北 京 内容简介 本书以 Visual FoxPro 6.0 数据库作为教学载体, 系统介绍了数据库系统的基本知识和开发技术, 以解决医学数据问题为主线, 以定义 解析 例题和结果呈现为编写思路, 突出其医学特色和实用性 本书共 9 章, 主要内容包括数据库系统基础知识 数据与运算 程序设计 自由表 数据库与数据库表

More information

目 录(目录名)

目  录(目录名) 目录 目录...1-1 1.1 域名解析配置命令... 1-1 1.1.1 display dns domain... 1-1 1.1.2 display dns dynamic-host... 1-1 1.1.3 display dns server... 1-2 1.1.4 display ip host... 1-3 1.1.5 dns domain... 1-4 1.1.6 dns resolve...

More information

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 odps-sdk 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基 开放数据处理服务 ODPS SDK SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基础功能的主体接口, 搜索关键词 "odpssdk-core" 一些

More information

Visual FoxPro 程序设计 实体 实体也可以是抽象的概念或联系, 如学生的一次选课 (2) 实体的属性 实体的属性是指描述实体的特性, 即实体是通过属性来描述的 比如 : 学生实体的属性 有学号 姓名 性别等 属性由属性名 类型和属性值组成 比如, 姓名 是属性名, 类型 为字符型, 对于

Visual FoxPro 程序设计 实体 实体也可以是抽象的概念或联系, 如学生的一次选课 (2) 实体的属性 实体的属性是指描述实体的特性, 即实体是通过属性来描述的 比如 : 学生实体的属性 有学号 姓名 性别等 属性由属性名 类型和属性值组成 比如, 姓名 是属性名, 类型 为字符型, 对于 第 章数据库基本概念 数据库是企业 组织或部门所涉及的存储在一起的相关数据的集合, 它反映了数据本身的内容及数据之间的联系 Visual FoxPro 是目前优秀的数据库管理系统之一 掌握数据库及数据库管理系统的基本概念, 有助于在 Visual FoxPro 的可视化环境下, 使用面向对象的方法开发出功能良好的数据库和应用程序 本章主要介绍数据库 数据库管理系统 关系及关系数据库的基本概念 关系数据库设计的基本知识.

More information

untitled

untitled PowerPoint 2002 158 PowerPoint 2002 PowerPoint 2002 11 PowerPoint 2002 100084 http://www.tup.tsinghua.edu.cn 787 1092 1/16 : 18.5 : 432 2001 9 1 2001 9 1 ISBN 7-302-04709-X/TP 2800 0001~6000 26.00 Microsoft

More information

CIP /. - 1999.1 ISBN 7-81059-300-! ". #. - - - - $. D909.5-44 CIP 1999 00865 100038 850 1168 1/32 8 200 1999 1 1 2003 3 1 2003 3 1 0001-5000 180.00 15.00 !! 2003 2 1998!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 6!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

More information

2015年计算机二级(C语言)模拟试题及答案(三)

2015年计算机二级(C语言)模拟试题及答案(三) 2016 年计算机二级 (C 语言 ) 模拟试题及答案 (3) 1.( A ) 是构成 C 语言程序的基本单位 A 函数 B 过程 C 子程序 D 子例程 2.C 语言程序从 ( C ) 开始执行 A 程序中第一条可执行语句 B 程序中第一个函数 C 程序中的 main 函数 D 包含文件中的第一个函数 3 以下说法中正确的是( C ) A C 语言程序总是从第一个定义的函数开始执行 B 在 C 语言程序中,

More information

Microsoft Word - 《C语言开发入门》课程教学大纲-2.doc

Microsoft Word - 《C语言开发入门》课程教学大纲-2.doc C 语言开发入门 课程教学大纲 ( 课程英文名称 ) 课程编号 :201409210011 学分 :5 学分学时 :60 学时 ( 其中 : 讲课学时 :37 学时上机学时 :23 学时 ) 先修课程 : 计算机导论后续课程 :C++ 程序设计适用专业 : 信息及其计算机相关专业开课部门 : 计算机系 一 课程的性质与目标 C 语言开发入门 是计算机各专业必修的基础课程, 是数据结构 C++ Java

More information

PowerPoint Presentation

PowerPoint Presentation 5 数据查询 5.1 简单 SELECT 语句 5.2 SELECT 语句的统计功能 5.3 SELECT 语句中的多表连接 5.4 子查询 5.5 使用 SQL Server Management Studio 进行数据查询与维护 学习目标 通过本部分的学习, 应该掌握以下内容 数据查询的各种语句 运用 S QL S e rve r M a n a g e m e n t S t u d io 和基本的

More information

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas 目录 1 IPv6 快速转发 1-1 1.1 IPv6 快速转发配置命令 1-1 1.1.1 display ipv6 fast-forwarding aging-time 1-1 1.1.2 display ipv6 fast-forwarding cache 1-1 1.1.3 ipv6 fast-forwarding aging-time 1-3 1.1.4 ipv6 fast-forwarding

More information

例 计算 平均分 例 求 最高分 例 分别用 f1.dat f2.dat 计算 平均分 f1.dat f1.dat f2.dat f2.dat 缺点 1 共享性较弱 2 数据冗余度大, 易造成数据不一致 3 安全性差 4 数据联系弱 数据 1: 基本信息 学号姓名性别年龄院系专业 数据 2: 修课信

例 计算 平均分 例 求 最高分 例 分别用 f1.dat f2.dat 计算 平均分 f1.dat f1.dat f2.dat f2.dat 缺点 1 共享性较弱 2 数据冗余度大, 易造成数据不一致 3 安全性差 4 数据联系弱 数据 1: 基本信息 学号姓名性别年龄院系专业 数据 2: 修课信 第 4 章数据库技术基础 数据库概述 数据模型 关系数据库 4.1.1 数据管理技术的发展 4.1.2 数据库系统 制作 : 宋朝霞 4.1.1 数据管理技术的发展 人工管理阶段 1. 人工管理阶段 数据和程序不可分割, 靠人工对数据进行管理 文件系统阶段 应用程序 A 数据 1 应用程序 B 数据 2 数据库系统阶段 1 数据无法保存, 不能实现数据共享 2 没有专门的软件对数据进行管理 3 数据彼此独立,

More information

基于UML建模的管理管理信息系统项目案例导航——VB篇

基于UML建模的管理管理信息系统项目案例导航——VB篇 PowerBuilder 8.0 PowerBuilder 8.0 12 PowerBuilder 8.0 PowerScript PowerBuilder CIP PowerBuilder 8.0 /. 2004 21 ISBN 7-03-014600-X.P.. -,PowerBuilder 8.0 - -.TP311.56 CIP 2004 117494 / / 16 100717 http://www.sciencep.com

More information

图书在版编目 (CIP) 数据程序员的数学. 3, 线性代数 /( 日 ) 平冈和幸, ( 日 ) 堀玄著 ; 卢晓南译. 北京 : 人民邮电出版社, ( 图灵程序设计丛书 ) ISBN Ⅰ. 1 程 Ⅱ. 1 平 2 堀 3 卢 Ⅲ. 1 电子计算

图书在版编目 (CIP) 数据程序员的数学. 3, 线性代数 /( 日 ) 平冈和幸, ( 日 ) 堀玄著 ; 卢晓南译. 北京 : 人民邮电出版社, ( 图灵程序设计丛书 ) ISBN Ⅰ. 1 程 Ⅱ. 1 平 2 堀 3 卢 Ⅲ. 1 电子计算 图灵程序设计丛书 程序员的数学 3: 线性代数 [ 日 ] 平冈和幸堀玄著 卢晓南译 图书在版编目 (CIP) 数据程序员的数学. 3, 线性代数 /( 日 ) 平冈和幸, ( 日 ) 堀玄著 ; 卢晓南译. 北京 : 人民邮电出版社, 2016.3 ( 图灵程序设计丛书 ) ISBN 978-7-115-41774-9 Ⅰ. 1 程 Ⅱ. 1 平 2 堀 3 卢 Ⅲ. 1 电子计算机 数学基础 2

More information

中医疗法(下).doc

中医疗法(下).doc ( 20 010010) 787 1092 1/32 498.50 4 980 2004 9 1 2004 9 1 1 1 000 ISBN 7-204-05940-9/R 019 1880.00 ( 20.00 ) ...1...2...3...4...13...15...17...17...24...25...26...26...28...28...29...31...31...33...33

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 友乾营 报表的 SQL 植入风险 规避风险 : 让你的报表变的安全起来 SQL 植入的概念 恶意的 SQL 归根结底 : 执行了不该允许执行的 SQL 命令, 达到非法的目的 常见案例 骗过登录验证非法获取账号信息篡改 删除数据 为什么存在 SQL 植入 植入原理 如何攻击 特殊的输入参数 未处理特殊字符 -- # 数据库配置不合理 植入原理 : 案例 1, 特殊输入参数 union or 猜表名

More information

<4D F736F F D205A572D2D A1AAA1AAD4ACE7F42D43D3EFD1D4CAB5D1B5BDCCB3CC2E646F6378>

<4D F736F F D205A572D2D A1AAA1AAD4ACE7F42D43D3EFD1D4CAB5D1B5BDCCB3CC2E646F6378> 第 1 部分 Visual Studio 6.0 开发环境介绍 本书以 Visual C++ 6.0 作为 C 源程序的实践开发环境, 本章将首先介绍 Visual C++ 6.0 环境的基本操作, 包括 Visual C++ 6.0 的安装和启动,C 源程序的编辑 运行与调试 1.1 安装与启动 Visual C++ 6.0 MSDN Visual C++ 6.0 1.1 Microsoft Visual

More information

Microsoft Word - install_manual-V _CN.docx

Microsoft Word - install_manual-V _CN.docx NO TASK Q-Sign Install Manual PAGE 1/28 Q-Sign INSTALL MANUAL Version 3.0 Server Manager Client Codec NO TASK Q-Sign Install Manual PAGE 2/28 History DATE Contents Name Ver. Remark 2009-02-11 Q-Sign Ver.

More information

内容简介本书共分 10 个单元, 以开发一个小型的学生管理数据库应用系统项目为主线, 每个单元以任务驱动的方式展开学习内容, 把数据库技术 语言学习 可视化编程的方法与实际应用作为一个整体来介绍 本书内容编排上从简单到复杂递进, 结合 Visual FoxPro 数据库系统体系结构, 将 Visua

内容简介本书共分 10 个单元, 以开发一个小型的学生管理数据库应用系统项目为主线, 每个单元以任务驱动的方式展开学习内容, 把数据库技术 语言学习 可视化编程的方法与实际应用作为一个整体来介绍 本书内容编排上从简单到复杂递进, 结合 Visual FoxPro 数据库系统体系结构, 将 Visua 高等职业教育 十二五 规划教材 Visual FoxPro 数据库基础与应用 张旭叶茜张正军主编 张赟孙娅副主编 科学出版社职教技术出版中心 www.aboo 北 京 内容简介本书共分 10 个单元, 以开发一个小型的学生管理数据库应用系统项目为主线, 每个单元以任务驱动的方式展开学习内容, 把数据库技术 语言学习 可视化编程的方法与实际应用作为一个整体来介绍 本书内容编排上从简单到复杂递进, 结合

More information

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas 目录 1 IPv6 快速转发 1-1 1.1 IPv6 快速转发配置命令 1-1 1.1.1 display ipv6 fast-forwarding aging-time 1-1 1.1.2 display ipv6 fast-forwarding cache 1-1 1.1.3 ipv6 fast-forwarding aging-time 1-3 1.1.4 ipv6 fast-forwarding

More information

2 Visual FoxPro 程序设计 ( 第二版 ) 20 世纪 50 年代中期以前, 数据处理都是通过手工进行的, 数据管理处于人工管理阶段 在这一阶段, 计算机的硬件与软件方面都有很大的局限性 在硬件方面, 外存储器只有卡片 纸带 磁带, 没有像磁盘这样的可以随机访问 直接存取的外部存储设备

2 Visual FoxPro 程序设计 ( 第二版 ) 20 世纪 50 年代中期以前, 数据处理都是通过手工进行的, 数据管理处于人工管理阶段 在这一阶段, 计算机的硬件与软件方面都有很大的局限性 在硬件方面, 外存储器只有卡片 纸带 磁带, 没有像磁盘这样的可以随机访问 直接存取的外部存储设备 第 1 章 Visual FoxPro 6.0 概述 学习目的 : 通过学习本章内容, 使学生了解数据库的基础知识, 掌握关系数据库以及数据库语言的基本概念和知识, 对数据库语言及程序设计的思路有一定的基本了解, 学习掌握 Visual FoxPro 的基本使用方法, 为后续章节奠定基础 知识要点 : 数据 数据库 数据库管理系统 数据库系统 数据库应用系统等基本概念 数据库 数据库系统 数据库管理系统的关系

More information

目 录(目录名)

目  录(目录名) 目录 1 域名解析配置命令... 1-1 1.1 域名解析配置命令...1-1 1.1.1 display dns domain... 1-1 1.1.2 display dns dynamic-host... 1-2 1.1.3 display dns proxy table... 1-2 1.1.4 display dns server... 1-3 1.1.5 display ip host...

More information

没有幻灯片标题

没有幻灯片标题 指针作为函数参数 : 原因 : 1 需要修改一个或多个值,( 用 return 语句不能解决问题 ) 2 执行效率的角度 使用方法 : 在函数原型以及函数首部中需要声明能够接受指针值的形参, 具体的写法为 : 数据类型 * 形参名 如果有多个指针型形参, 则用逗号分隔, 例如 : void swap(int *p1, int *p2) 它说明了形参 p1 p2 是指向整型变量的指针 在函数调用时,

More information

作业参考答案

作业参考答案 本章的知识点了解 SQL 语言发展史掌握关系数据库体系结构 三层结构在关系数据库体现 ) 掌握基本表定义 包括修改 删除定义 ) 掌握视图的概念与定义 删除定义理解索引的概念与定义 删除定义总结 SQL 数据定义的特点总结用户数据查询的基本结构掌握 SELECT 子句重复元组的处理掌握 FROM 子句掌握 WHERE 子句理解更名 属性 列 ) 运算理解字符串操作理解元组显示顺序理解分组掌握聚集函数掌握空值处理理解嵌套子查询的概念

More information

旅游科学

旅游科学 旅 游 科 学 王春雷 会展专业人才培养模式是一个院校对于会展办学的整体设计 因而需要进行系统性的构建 但目前这方面的研究成果不多 更缺乏实证性的研究 本 文基于文献综述的发现和会展专业的特点 从理论上构建了一个项目驱动型会展 专业人才培养模式的基本框架 进而以上海师范大学会展经济与管理专业为例 侧重从教育理念 培养目标 培养过程 培养制度和培养评价等方面进行了实证研究 项目驱动型 会展专业 人才培养模式

More information

Microsoft Word - CX1000-HMI_程序开发_PLC通讯

Microsoft Word - CX1000-HMI_程序开发_PLC通讯 用 VB.Net 开发 CX1000 的 HMI 第二部分和 TwinCAT PLC 通讯 一 TwinCAT 动态库 TwinCAT.Ads.dll The TwinCAT.Ads.dll 是一个.NET 类库, 它提供和 ADS 设备通讯的类 如果 TwinCAT PLC 运行在 IPC 上, 则需要添加的类库是路径 \TwinCAT\ADS Api\.NET\v1.1.4322 下的 TwinCAT.Ads.dll

More information

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式]

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式] Arrays and Strings 存储同类型的多个元素 Store multi elements of the same type 数组 (array) 存储固定数目的同类型元素 如整型数组存储的是一组整数, 字符数组存储的是一组字符 数组的大小称为数组的尺度 (dimension). 定义格式 : type arrayname[dimension]; 如声明 4 个元素的整型数组 :intarr[4];

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 按钮对象 (button) 当 JavaScript 读到 标记中的 type 属性值为 button 时, 自动建立一个按钮对象, 并将该对象放到表单对象的 elements 数组当中 按钮对象包括 : 普通按钮 (button) 提交按钮 (submit) 重置按钮 (reset) 1. 使用按钮对象的格式 document.forms[ 索引值 ].elements[ 索引值

More information

untitled

untitled 图书在版编目 (CIP) 数据 家居美化中的巧 / 陈赞等编著. 北京 : 中国林业出版社,2003.4 ISBN 7-5038-3399-8 I. 家 II. 陈 III. 住宅 室内装饰 基本知识 IV.TU241 中国版本图书馆 CIP 数据核字 (2003) 第 022376 号 版权所有翻印必究 1 2002.10 1 ...1...1...2...2...3...4...5...6...7...8...8...10...10...11...12...12...13...13...15...15...16...17...18...19...20...20...20...21...22

More information

内容简介本书全面具体地介绍了 Visual FoxPro 6.0 的基础知识 基本操作和基本技能, 以及数据库设计和开发的有关知识 本书可辅助理论教程使用, 也可单独作为实验教程使用 在编写本书过程中力求语言通俗易懂, 讲解深入浅出 运用大量实例使读者更快地熟悉 Visual FoxPro 6.0

内容简介本书全面具体地介绍了 Visual FoxPro 6.0 的基础知识 基本操作和基本技能, 以及数据库设计和开发的有关知识 本书可辅助理论教程使用, 也可单独作为实验教程使用 在编写本书过程中力求语言通俗易懂, 讲解深入浅出 运用大量实例使读者更快地熟悉 Visual FoxPro 6.0 普通高等教育 十二五 重点规划教材公共课系列中国科学院教材建设专家委员会 十二五 规划教材 Visual FoxPro 6.0 程序设计实践教程 吴德胜岳莉高鹏主编 王延松俞炫昊朱建辉副主编 朱丽莉主审 科学出版社职教技术出版中心 www.aboo 北京 内容简介本书全面具体地介绍了 Visual FoxPro 6.0 的基础知识 基本操作和基本技能, 以及数据库设计和开发的有关知识 本书可辅助理论教程使用,

More information

Microsoft Word - oracle-排版文件.doc

Microsoft Word - oracle-排版文件.doc 第 6 章 数据类型和运算符 本章教学微视频 :12 个 28 分钟 s 学习指引 数据库表由多列字段构成, 每一个字段指定了不同的数据类型, 不同的数据类型也决定了 Oracle 在存储时的使用方式, 以及在使用时选择什么运算符号进行运算 本章介绍 Oracle 的数据类型和运算符, 主要内容包括常见数据类型的概念与应用 数据类型的选择方法 常见运算符的应用等 重点导读 熟悉常见数据类型的概念和区别

More information

PowerPoint Presentation

PowerPoint Presentation Skill-building Courses Intro to SQL Lesson 2 More Functions in SQL 通配符 :LIKE SELECT * FROM Products WHERE PName LIKE %gizmo% PName Price Category Manufacturer Gizmo $19.99 Gadgets GizmoWorks Powergizmo

More information

Photoshop CS6 艺术设计案例教程 ( 第二版 ) 1.1 Photoshop 的应用领域 Photoshop,,, Photoshop Photoshop 的用途 Photoshop CIS ( ) ( ) 案例展现 ~ 1

Photoshop CS6 艺术设计案例教程 ( 第二版 ) 1.1 Photoshop 的应用领域 Photoshop,,, Photoshop Photoshop 的用途 Photoshop CIS ( ) ( ) 案例展现 ~ 1 Chapter 01 Photoshop CS6 的基本操作 本章内容 1.1 Photoshop 的应用领域 1.6 控制面板的显示与隐藏 1.2 位图和矢量图的特性 1.7 新建 打开与保存文件 1.3 像素和分辨率的关系 1.8 图像的缩放 1.4 色彩模式 1.9 屏幕显示模式 1.5 Photoshop CS6 界面 1.10 计算机图形图像常用的色彩模式 Photoshop CS6 艺术设计案例教程

More information

Autodesk Product Design Suite Standard 系统统需求 典型用户户和工作流 Autodesk Product Design Suite Standard 版本为为负责创建非凡凡产品的设计师师和工程师提供供基本方案设计和和制图工具, 以获得令人惊叹叹的产品

Autodesk Product Design Suite Standard 系统统需求 典型用户户和工作流 Autodesk Product Design Suite Standard 版本为为负责创建非凡凡产品的设计师师和工程师提供供基本方案设计和和制图工具, 以获得令人惊叹叹的产品 Autodesk Product Design Suite Standard 20122 系统统需求 典型用户户和工作流 Autodesk Product Design Suite Standard 版本为为负责创建非凡凡产品的设计师师和工程师提供供基本方案设计和和制图工具, 以获得令人惊叹叹的产品设计 Autodesk Product Design Suite Standard 版本包包括以下软件产产品

More information

!"#$ %&' '!"#$!" #$ % %& ' %( ' )* #+,-.

!#$ %&' '!#$! #$ % %& ' %( ' )* #+,-. 图书在版编目 数据!"#$ $ %&' $&($('%&('&( ( ()( * ) (' +,#-./0 * + 1 & 责任编辑郑鸿特约编辑马健金 一石文化 装帧设计 陆智昌 一石文化 责任校对严道丽责任印制吴晓光出版发行四川出版集团四川教育出版社 地址成都市槐树街 号邮政编码 网址! " # 印 刷 四川福润印务有限责任公司 版 次 年 $ 月第 版 印 次 年 $ 月第 次印刷 成品规格 %##&##

More information