具体描述
本书是一本介绍中文Visual FoxPro6.0编程基础知识的参考书。全书共分十九章,内容包括:中文Visual FoxPro6.0简介;安装与配置、常用系统工具、开发环境、应用程序开发技术;用项目管理器编写应用程序:用VFP6.0程序设计语言;用SQL查询语言、用面向对象的程序设计、事件模型、数据库和表、表处理技术、视图操作、表单、使用控件、菜单和工具栏建立数据环境;还用数据库设计一个应用程序及实例。
本书适合于利用Visual FoxPro进行程序设计的专业或非专业初、中级开发人员参考使用,同时也可用作大、中专院校和一些计算机培训班的参考书。
作者简介
目录信息
1.1Xbase系列数据库系统简介
1.2中文Visual FoxPro6.0新特点
1.2.1增强的网络服务功能
1.2.2更多更好的向导
1.2.3OLE拖放(Dragand Drop)技术
1.2.42000年时间的支持
1.2.5增强的应用程序框架
1.2.6Automati0n服务程序的改进
第二章 中文Visual FoxPro6.0安装与配置
2.1中文Visual FoxPro6.0安装步骤
2.1.1系统要求
2.1.2安装
2.1.3定制系统
2.1.4常见问题
2.2进入
2.3退出
2.4定制开发环境
2.4.1系统设置
2.4.2环境的交互式设置
2.4.3启动时设置配置选项
2.4.4配置工具栏
2.4.5设置编辑器选项
2.4.6恢复环境
2.5系统优化
2.5.1配置操作环境
2.5.2优化系统的启动速度
2.5.3在多用户环境中优化Visual FoxPro6.0
第三章 常用系统工具
3.1系统工具简介
3.3项目管理器
3.3.1项目管理器功能简介
3.3.2项目管理器的组成
3.3.3用项目管理器创建和修改文件
3.3.4用项目管理器添加和删除文件
3.3.5项目间的文件共享
3.3.6浏览表的内容
3.3.7项目管理器的定制
3.4使用设计器
3.4.1用设计器定制应用程序
3.4.2使用数据库设计器设计数据库
3.4.3使用表设计器创建表及索引
3.4.4用查询设计器创建查询
3.4.5用视图设计器创建视图
3.4.6创建菜单栏和快捷菜单
3.5使用工具栏
3.6使用向导
3.6.1不同向导的作用
3.6.2启动向导
3.6.3定制向导操作
3.6.4保存向导结果
3.6.5修改用向导创建的项
3.7使用生成器
3.7.1生成器的作用
3.7.2向表单增加控件
3.8用Visual FoxPro6.0的控件创建界面
3.8.1创建一对多表单
3.8.2使表单外观专业化
3.8.3设置控件属性
3.8.4定制表单设计器
3.8.5从类库中添加控件
3.8.6扩展类库
3.9Visual FoxPro6.0系统工具应用实例
3.9.1创建报表
3.9.2创建帮助系统
第四章 中文Visual FoxPro6.0开发环境
4.1VFP6.0集成开发环境
4.2 VFP6.0主窗口
4.3系统菜单
4.3.1“文件”菜单
4.3.2‘编辑”菜单
4.3.3“显示”菜单
4.3.4“格式”菜单
4.3.5“工具”菜单
4.3.6“程序”菜单
4.3.7“窗口”菜单
4.3.8“帮助”菜单
4.4Visual FoxPro6.0的工具栏
4.4.1定制工具栏的种类
4.4.2定制每个工具栏中的项目
4.4.3定制工具栏的显示方式
第五章 应用程序开发技术
5.1应用程序总体设计
5.2创建应用程序的过程
5.3开始开发工作
5.4使用项目管理器
5.5创建数据库
5.6创建类
5.7设计访问信息的方法
5.8测试和调试
第六章 用项目管理器编写应用程序
6.1项目管理器的主要功能
6.2使用项目管理器
6.2.1展开/折叠按钮
6.2.2项目管理器按钮
6.2.3使用项目管理器
6.3项目管理器的定制
6.4用项目管理器快速开发程序
6.4.1新建一个项目
6.4.2用“新建文件”创建一个项目
6.4.3用“向导”创建一个项目
6.5设计应用程序的一般过程
6.5.1构造应用程序框架
6.5.2向项目中添加文件
6.5.3引用可修改的文件
6.5.4运行应用程序
第七章 VFP6.0程序设计语言
7.1数据类型和字段类型
7.1.1主要数据类型
7.1.2字段类型
7.2数据存储方式
7.2.1变 量
7.2.2常 量
7.2.3数 组
7.2.4字 段
7.2.5记 录
7.2.6对 象
7.2.7操作符
7.2.8创建表达式
7.2.9宏替换
7.2.10 NULL值
7.3VFP6.0的基本语法结构
7.3.1基本的赋值语句以及表达式
7.3.2IP…ELSE…ENDIF
7.3.3DOCASE…ENDCASE
7.3.4SCAN…ENDSCAN
7.3.5FOR…ENDFOR
7.3.6DOWHILE…ENDDO
7.3.7函 数
7.4过程和用户定义函数
7.4.1过 程
7.4.2函 数
第八章 SQL查询语言
8.1SQL语言
8.2在VFP中进行查询
8.3SELECT命令
8.4其他常用SQL 命令
8.4.1ALTERTABLE命令
8.4.2CREATECURSOR命令
8.4.3CREATETABLE命令
8.4.4DELETE命令
8.4.5INSERT命令
8.4.6UPDATE命令
8.5SQL查询示例
第九章 面向对象的程序设计
9.1面向对象编程基础
9.1.1类
9.1.2对象与方法
9.1.3封装、继承和多态性
9.2Visual FoxPro中的对象和方法
9.3Visual FoxPro中的类
9.3.1类的概念
9.3.2可视类和不可视类
9.3.2Visual FoxPro类的使用
第十章 VFP6.0的事件模型
10.1Visual FoxPro中的核心事件
10.2追踪事件序列
10.3监视事件
10.4为事件指定代码
第十一章 数据库和表
11.1数据库和表的概念
11.2关系概念
11.2.1一对一关系
11.2.2一对多关系
11.2.3多对多关系
11.3创建数据库一般步骤
11.3.1使用数据字典功能
11.3.2字段级限制
11.3.3记录级限制
11.3.4创建触发器
11.3.5创建存储过程
11.3.6创建本地视图
11.3.7定义连接
11.3.8参照完整性的建立
11.3.9创建永久关系
11.3.10确定表字段的规则
11.4数据库设计方法
11.5表的设计方法
11.5.1通过表向导设计表
11.5.2通过表设计器设计表
11.6建立索引
11.6.1选择索引类型
11.6.2设置主索引、候选索引
11.6.3设置普通索引
第十二章 表处理技术
12.1表的处理
12.1.1设计数据库和自由表
12.1.2创建数据库表
12.1.3创建自由表
12.1.4命名表
12.1.5重命名表
12.1.7删除自由表
12.1.8复制表
12.1.9复制和编辑表结构
12.1.10将表另存为HTML文件
12.1.11命名字段
12.1.12选择数据类型
12.1.13创建字段的默认值
12.1.14控制字段显示
12.1.15实施商业规则
12.1.16使用触发器
12.1.17创建触发器
12.1.18修改触发器
12.1.19使用触发器建立参照完整性
12.1.20修改表结构
12.1.21添加字段
12.1.22删除字段
12.1.23重新命名字段
12.1.24设置或更改字段级规则或表规则
12.1.25设置或更改默认值
12.2记录的处理
12.2.1添加记录
12.2.2从其他表中追加记录
12.2.3采用浏览方式添加数据
12.2.4向表中输入数据
12.2.5在表中编辑记录
12.2.6向表中添加图形
12.2.7在字段中输入NUII值
12.2.8删除记录
12.2.9对记录作删除标记
12.2.10检索具有删除标记的记录
12.2.11如何撤销记录的删除标记
12.2.12删除带有删除标记的记录
12.2.13保存空间
12.2.14从表中移去所有记录
12.3表的索引
12.3.1创建一个索引
12.3.2创建索引文件
12.3.3查看索引信息
12.3.4控制重复值
12.3.5创建多个索引
12.3.6控制访问记录的顺序
12.3.7在运行时刻设置记录顺序
12.3.8使用非结构(.cdx)索引
12.3.9删除索引
12.3.10使用表达式进行索引
12.3.11筛选数据
12.3.12高效地使用索引
12.4使用多个表
12.4.1使用数据工作期
12.4.2查看工作区
12.4.3如何在工作区中打开表
12.4.4在工作区中关闭表
12.4.5引用工作区
12.4.6使用表别名
12.4.7设置表间的临时关系
12.4.8临时相关表
12.4.9用索引设置永久关系
第十三章 视图操作
13.1创建视图
13.1.1创建本地视图
13.1.2用已有的SQLSELECT语句创建视图
13.1.3修改视图
13.1.4重新命名视图
13.1.5删除视图
13.1.6创建多表视图
13.1.7在结果中包含不匹配记录
13.1.8访问远程数据
13.1.9创建远程视图
13.2使用视图
13.2.1显示视图
13.2.2限制视图的取值范围
13.3打开视图
13.3.1在多个工作区中打开一个视图
13.3.2不下载数据再次使用视图
13.3.3显示视图结构
13.3.4创建视图索引
13.4视图属性和连接属性
13.5在视图中更新数据
13.5.1更新视图的基本操作
13.5.2在视图中更新多个表
13.5.3用数据字典定制视图
13.5.4为视图字段创建默认值
13.5.5在视图的字段和数据行上创建规则
13.6在视图中集成数据
13.6.1在视图中集成本地数据和远程数据
13.6.2在视图中更新本地数据与远程数据
13.7处理自由数据
13.7.1创建游离视图
13.7.2显示和修改自由数据
13.8优化视图
13.8.1控制获取信息量的大小
13.8.2控制备注字段的获取
13.8.3设置下载的最大记录数
13.8.4优化过滤器和连接
13.8.5共享多个远程视图的连接
第十四章 表单
14.1设计表单
14.1.1使用表单设计器
14.1.2使用表单向导
14.2保存和运行表单
14.3自定义表单
14.3.1改变表单中文本的字体和大小
14.3.2向表单中添加线条
14.3.3向表单中添加形状
14.3.4向表单中添加图形
14.3.5设置表单的前景和背景颜色
14.4添加控件
14.4.1调整控件的大小和外形
14.4.2表单的布局
14.5创建表单集
14.6修改表单属性
第十五章 使用控件
15.1深入了解控件和数据
15.2根据任务选择合适的控件
15.2.1提供一组预先设定的选择
15.2.2接受预先不能确定的输入
15.2.3接受指定范围的数值输入
15.2.4允许特定操作
15.2.5在给定时间间隔执行指定操作
15.2.6显示信息
15.2.7增强控件显示
15.2.8操作多行数据
15.3使控件易于使用
15.3.1设置访问键
15.3.2设置工具提示文本
15.3.3启用和废止控件
15.3.4允许用户拖放
15.4扩展表单
15.4.1使用页框
15.4.2ActiveX控件
15.4.3ActiveX绑定控件
第十六章 菜单和工具栏
16.1设计菜单系统
16.1.1规划菜单系统
16.1.2创建图形化菜单界面
16.1.3菜单的进一步设计
16.1.4实现菜单的具体功能
16.1.5预览菜单
16.1.6生成菜单程序
16.1.7菜单代码示例
16.1.8菜单的常规选项
16.1.9菜单选项
16.2设计工具栏
16.2.1创建工具栏
16.2.2将工具栏连接到表单
16.2.3工具栏的特点
16.3调整用户设计的菜单和工具栏
第十七章 建立数据环境
17.1设置数据环境
17.2添加表或视图
17.3将表从数据环境中移去
17.4为数据环境设置关系
17.5在数据环境设计器中编辑关系
17.6向表单中添加表字段
第十八章 数据库设计实例
18.1设计表结构
18.2设计数据库
18.3设计各表间的关系
18.3.1建立关系
18.3.2编辑关系
18.3.3修改关系
18.4建立参照完整性
18.4.1更新规则
18.4.2删除规则
18.4.3插入规则
18.5浏览数据库和表
第十九章 设计一个小应用程序
19.1设计目标
19.2设计表单的界面
19.3建立数据环境
19.4向表单添加控制字段
19.5调整表单
19.6添加专用代码
· · · · · · (收起)
读后感
用户评价
这本书的结构安排,体现了一种自底向上、由简入繁的逻辑递进。开篇没有急于展示如何拖拽控件,而是用了大量篇幅来建立对“表单对象模型”的理解,强调事件驱动编程的核心思想。这种严谨的铺垫,使得后续学习如事件绑定、参数传递时,读者能够更自然地理解其工作原理,而不是死记硬背API函数。我发现它在数据访问层面的论述尤为精彩。书中对比了基于游标(Cursor)和基于SQL命令的数据操作的不同场景,并详细介绍了何时使用远程数据源连接(RDO或ODBC),以及在连接中断时如何优雅地处理回滚逻辑。很多当代数据库编程书籍都倾向于将所有操作都集中在ORM或现代数据框架上,但这本老书的价值在于,它教会了我们如何在资源相对有限的环境下,进行精细化的资源控制和数据流管理。它训练的是一种对数据生命周期全程负责的意识,这种意识在任何编程领域都是稀缺且重要的,远超VFP本身的技术范畴,更多的是一种工程学的训练。
这本书的行文风格,说实话,初读会让人感到有些枯燥,因为它更倾向于“技术手册”的语言风格,而不是“轻松阅读”的散文体。大量的篇幅用来解释数据库引擎的工作机制,比如缓存的管理、磁盘I/O的优化策略,这些内容对于那些只想快速做出一个简单录入界面的新手来说,可能过于深奥和冗余。然而,正是这种对基础的深挖,才体现出作者的功力。我特别欣赏它对关系型数据理论与VFP实现之间桥梁的搭建。例如,在讲解“多对多”关系实现时,它不仅仅展示了如何创建中间表,更重要的是,它深入剖析了在VFP环境中,如何通过存储过程(或等效的VFP逻辑)来确保数据一致性,并提到了在不同查询优化器下的执行效率差异。书中对SQL语法的讲解也相当到位,尤其是那些不常用的连接类型(如`FULL OUTER JOIN`在VFP中的变通实现),作者没有放过任何一个角落。这本书更像是一位经验丰富的老工程师在你身边,他不会急于给你答案,而是会让你明白为什么这个问题会发生,以及为什么当前的解决方案是最优的——这种慢工出细活的态度,让这本书的实用价值远超其出版年代的限制,它建立的是一种扎实的、不会被时间轻易淘汰的编程思维框架。
阅读体验上,这本书的插图和截图部分是其一个显著的“时代印记”。那些VFP 6.0的经典界面截图,如今看起来充满了怀旧感,但它们在当时无疑是非常有帮助的。排版上,虽然字号和行距设置得比较紧凑,试图在有限的篇幅内塞入最多的信息,但得益于清晰的章节划分和大量的代码块引用,使得查找特定知识点相对容易。我个人最喜欢的特点之一是它对性能调优的关注。书中有一个专门的章节讨论了如何使用性能分析工具来定位代码瓶颈,这在很多侧重于语法教学的教材中是找不到的。作者通过实际的例子展示了循环结构中变量作用域的微妙影响,以及如何通过预先编译代码来减少启动时间。对于任何一个需要维护大型、运行多年的VFP系统的开发者而言,这些实战经验比单纯的学习新语法更为宝贵。它不是一本让你“写出”一个程序的书,而是一本让你“优化”并“稳定”一个现有程序的书。如果你期望的是花哨的UI设计技巧,这本书会让你失望,但如果你追求的是代码的健壮性和运行效率,那么它提供的思路是无价的。
这本书的封面设计,坦白说,第一眼并不算惊艳,那种略显朴素的配色和传统的排版,让人感觉它像是那个年代的经典教科书,沉稳,但缺乏现代设计感。我当初翻开它,主要是因为工作需要快速上手一个遗留的VFP项目,当时市场上关于这个版本的实战书籍选择并不多。刚开始阅读时,那种扑面而来的细节密度让我有点吃惊,它没有过多地渲染“速成”或“零基础入门”的口号,而是直接切入了数据表结构、索引的建立与维护这些核心环节。作者在讲解指针移动和内存变量操作时,那种逐个击破的耐心非常明显,尤其是在介绍`UPDATE`和`APPEND FROM`命令组合使用时,配的案例代码清晰得近乎手把手教学。我记得有一个章节专门对比了不同游标适配器的性能差异,这在很多其他入门级教程中是被完全忽略的,这本书却深入挖掘了底层原理。对于一个需要快速理解已有复杂系统的维护人员来说,这种深入底层细节的讲解方式,比那些只停留在界面设计和基本表单操作的书籍,价值要高出太多。它更像是一本工具手册,而不是空泛的理论综述,每一页都充满了可以立刻复制粘贴并调试运行的实际代码片段,这一点极大地加速了我的学习曲线,尤其是那些关于事务处理和错误捕获的章节,结构化地展现了企业级应用开发的严谨性。
这本书最大的亮点,或许在于它对VFP特有的一些“怪癖”和高级特性的讲解上,这些内容在后续的数据库工具迭代中逐渐被边缘化,但对于理解VFP 6.0的生态至关重要。比如,书中对“别名”(Alias)机制的深入剖析,不仅解释了它如何用于多表引用,还详细阐述了在程序内部保持别名上下文一致性的最佳实践。此外,对于VFP特有的UDF(用户自定义函数)与系统函数的集成,以及如何用外部DLL来扩展其功能的部分,内容详实且配有编译步骤。这表明作者不仅停留在应用层,而是深入到了工具链的层面。对于一个老项目维护者而言,当面对一个可能依赖了大量底层扩展或特定环境配置的系统时,这本书提供的参考价值是无可替代的。它教会你如何像一个“老中医”一样,去诊断和调理一个有年代感的系统,而不是简单地推倒重写。它给予读者的,是一种“深入骨髓”的理解力,而不是停留在表面的CRUD操作技巧。