哪里可以找到VFP学习资料?

如题所述

  vfp有用吗?
  还不如学c语言,学完了真的觉得没用,还是什么都不懂,我以前就是在培训班学的。
  附上老师给我发的重点:第一章:
  1.数据管理经历了以下几个阶段:手工管理,文件系统,数据库系统,分布式数据库系统,面向对象的数据库系统.其中数据开始独立于程序的阶段是:数据库系统,数据库系统的高级阶段是面向对象的数据库系统.
  2.数据库是相关的数据的集合,管理的是表及表间联系,一个具体的数据库就是一个实际的关系模型.
  3.实体:客观存在,而又相互区别的事物.可以是具体的事物,也可以是抽象的概念.
  例如:学生,学生选课.
  实体型:抽象实体的外型,是属性的集合,是一种实体类型.相当于表的结构.
  实体集:同类实体的集合,相当于一个表中的所有的记录.
  4.实体或称表之间的联系的类型分为三种:一对一,一对多,多对多.
  要建立两个表多对多的关系,只需要建立第三方表--纽带表,来实现两个一对多的关系.
  5.关系术语:
  a.关系:二维表.在vfp中,表现为一个扩展名为.dbf的表文件.
  b.关系模式:对应于关系的结构,相当于表结构.
  c.元组:二维表水平方向的行.在vfp中,又叫记录
  d.属性:二维表垂直方向的列,又叫字段.
  e.域:属性的取值范围.例如逻辑型字段的域:逻辑真或者是逻辑假.
  f.关键字:能够唯一标记一个元组的属性或者是属性的组合.(字段或者是字段组合) ,分为两种:主关键字和
  候选关键字.主关键字不仅可以体现关键字的特征,而且还用于和其它表发生联系.
  g.外部关键字:不是本表的关键字,却是另外一个表的关键字(主关键字或者是候选关键字).这个字段就是外部关键字,一般用外部关键字来保证表之间的联系.
  6.关系的特点:
  a. 关系必须规范化.(关系模式必须满足一定的要求.),最基本的要求是表中的属性不可分割,即表中不能再包含表
  b. 关系中不能有相同的元组或者是属性(重复记录或者重名的字段)
  c. 关系中的元组和属性的次序无关紧要.(对表中排序体现了关系的特点------表中的记录的顺序无关紧要)
  7.数据模型分为三种:层次模型,网状模型,关系模型(用二维表来描述实体与实体之间的联系)
  8.关系的基本运算有两类:传统的集合运算(并,交,差),专门的关系运算(选择,投影,联接)
  传统的集合运算:并,交,差.要求参于运算的两个关系(表)必须具有相同的关系模式(表结构)
  并:包含两个表中的所有的记录.(查询的并运算的优先级为union)
  交:两个关系(表)中都有的元组(记录)
  差:从一个关系中去掉另一个关系中也有的元组,剩下的元组.(记录)
  专门的关系运算:选择,投影和联接.
  选择:从关系(表)中找出条件满足的元组(记录).在sql select中主要用where 条件来实现选择操作.
  投影:从关系(表)中找出若干属性(字段).在sql select 中用select 来实现关系的投影操作.
  联接:两个或者是多个关系的模向组合,即形成一个更大的关系.在sql select 中主要用join来实现其操作.
  等值联接:两个表根据公共字段相等进行的联接.(inner join)
  自然联接:去掉重复属性值的等值联接.
  9.数据库设计的步骤:
  需求分析,确定所需要的表,确定所需的字段,确定表之间的联系.设计求精.
  10.visual foxpro是一个32位关系数据库管理系统,是一个可运行于windows95,windows98,windows NT的可视 化,面向对象的编程语言.
  第二章:
  1.Visual Foxpro有三种工作方式:1.用菜单或者是工具栏.2.在命令窗口直接输入命令.3.利用各种生成器来自动产生程序,或者是编写foxpro程序(命令文件)来执行它.
  2.菜单项后面有"...",表示会弹出一个菜单.
  3.用dir命令可以显示当前目录下的表的信息.用clear命令表示清除主屏幕的内容.
  4.ctrl+F2表示显示命令窗口.ctrl+F4表示隐藏命令窗口.
  5.项目管理器的各个选项卡的功能:
  数据:管理数据库,自由表,查询.
  文档:管理表单,报表,标签
  代码:管理程序,API库,应用程序.
  其它:管理菜单,文本文件和其它文件.
  6.有关工具栏的操作:均在显示菜单下的工具栏实现.
  a.显示和隐藏工具栏.b.可以新建一个用户自己的工具栏.
  c.可以修改(定制)用户和系统的工具栏d.可以删除用户自己的工具栏.但是不能删除系统的工具栏.
  e.可以重置系统的工具栏.
  7.可以定制vfp的运行环境,通过工具/选项下进行.
  区域选项卡:设置日期和时间的显示方式,小数位以及货币的符号.
  表单:可以设置表单的默认大小.
  语法着色:可以设置程序代码的颜色.
  文件位置:可以设置默认目录和帮助文件.
  这种设置可以是永久的,也可以是临时的.当设置完毕后,直接按确定,这种设置只在本次运行vfp时有效,因为它是保存在内存中,内存在每次退出vfp时自动释放.当设置完毕后,设置为默认值后,再按确定,这种设计永久有效,因为它保存在windows注册表中.
  8.vfp新增了很多向导,有新的应用程序向导,新的连接向导,新的数据库向导,新的Web发布向导,新的示例向导.
  9,打开不同文件时,系统会自动调出相应的设计器.
  第四章:
  1.表分别两种:数据库表,自由表.
  数据库表可以设计长表名,长字段名,可以设置字段有效性规则,违反规则时的提示信息,默认值,格式,输入掩码以及在浏览时显示的标题和记录级规则.
  数据库长表名可以长达128个字符,字段名长达128个字符,自由表的字段名和表名最长只能为10个字符.
  2.记录查找的命令:
  locate for ....定位到条件满足的第一条记录
  continue...定位到条件满足的下一条记录
  seek 值---索引查找.
  都可以用found()函数来测试是否找到结果.
  3.索引分为四种:主索引,候选索引,唯一索引,普通索引.
  主索引:体现主关键字的功能,索引字段不能重复.一般用于和其它表建立联系.自由表没有主关键字,因此自由表不能建立主索引.
  候选索引:体现候选关键字的功能.索引字段也不能重复.
  唯一索引:索引字段值重复的记录,在索引项中只出现第一条记录.(一般用来统计类别)
  普通索引:一般默认情况下建立的索引,都是普通索引,索引字段可以重复.一般用于建立一对多联系的体现外部关键字的功能.
  4.索引根据参与索引的字段的多少,又可以分为单项索引,复合字段索引.
  单项索引:参与索引的字段只有一个,可以通过选择字段之后的一种索引顺序,然后转到索引选项卡中去
  改其索引的类型和索引名。
  复合字段索引:参与索引字段有多个。建立索引时,必须在索引选项卡中输入,而且索引表达式是:
  字段1+字段2+字段3...(要求字段1,字段2,字段2具有相同的类型,如果不是同种类型,必须将其转换为
  同种类型。
  5.索引文件: 存放索引的文件。根据其中索引的个数,可以将其分为单索引文件,复合索引文件(又分为
  结构索引文件和非结构索引)
  单索引文件(里面只包含一个索引),扩展名为.idx,这种文件不会随表文件打开与打开.
  复合索引文件:扩展名为.cdx ,文件名和表文件名同名的索引文件为结构索引文件.这种文件会随着表文件的打开而打开.另一种文件名和表文件名不同名,扩展名为.cdx.这种文件不会随表文件打开而打开.
  单索引文件和非结构复合索引文件在使用其中的索引项时,必须首先用命令打开.
  set index to 索引文件名(单索引文件名或者是非结构复合索引文件名)
  6.如何设置当前索引:
  set order to 索引名
  7:使所有的索引项都不成为当前索引:
  set order to
  8.建立索引: (新建的索引自动成为当前索引)
  index on 索引表达式 tag 索引项名[unique ][candidate]
  unique 表示建立的索引为唯一索引.
  candidate :表示建立的索引为候选索引.
  没有这两个选项表示建立的索引为普通索引,用命令的方式不能建立主索引.自由表不能建立主索引.
  9.删除索引项
  delete tag 索引名 &&删除指定的索引
  delete tag all &&删除表中的所有的索引.
  10.数据完整性分为三种:实体完整性,域完整性,参照完整性.
  实体完整性:即保证表中的记录的唯一性.主要通过关键字来保证的.关键字的功能通过索引来实现.
  域完整性:表中的字段在哪些范围内有意义.一般来说,表中有关字段的定义(类型,宽度,小数位,规遇等)
  都属于域完整性.
  参照完整性:建立了联系的表之间在进行某些操作(更新,删除,插入)时,必须满足的条件.主要分为更新规则,删除规则和插入规则.(更新规则,删除规则又分为级联,限制,忽略.插入规则又分为限制和忽略)
  11.工作区:
  总共有32767个工作区,一个工作区同一时刻只能打开一个表,因此同一时刻可以打开32767个表.
  工作区号从1--32767,每个工作区都有一个工作区别名 1--10:工作区别名为A-J,11-32767工作区别名为W11-W32767
  12.可以通过set relation 命令建立两个表之间的临时关联,通过这种关联可以实现A表的指针带动B表指针的移动。
  第五章:
  1.sql语言的全称:structured query language (结构化查询语言),它有四种功能:
  数据查询:(select 语句),数据定义(create,alter,drop ),数据操作(insert, update,delete ),数据控制.其中sql的核心是查询.
  2.集合的并运算的运算符为union.
  3.能够表示存在结果的谓词是exists
  4.量词any和some 是同一种意思,表示任意一个.而all代表所有.
  5.利用空值查询应该是: 字段 is null
  6.超联接查询:(vfp自身联接)有四种内联接(inner join ),左联接(left join),右联接(right join ),全联接(full join),这种联接条件是出现在on 短语中.
  7.查询去向有:表(into table <表名>),临时表(into cursor 临时表名),文本文件(to file 文本文件名),
  屏幕(to screen),数组(into array 数组名).
  当to 短语和into 短语同时出现时,优先考虑into 短语,即忽略to 短语.
  8.要查询前几条记录:使用top n短语,当查询前n%的记录,用 top n percent ,注意:top n [percent ] 必须与order by 连用.
  9.删除表的命令是: drop table 表名
  删除视图的命令是: drop view 视图名
  第六章:
  1.查询是一个预先定义好的select 语句,扩展名为.qpr, 是一个只读文件.
  2.视图是一个由基本表导出的虚表,只是作为视图的一个浏览窗口,实际并不存储数据,在磁盘上没有文件,因此在对视图进行任何操作时,必须首先打开数据库.视图可以像表一样用use 命令打开,可以用use 命令关闭,可以用browse命令浏览,可以用select 语句检索,但是不能用modify structure修改结构.
  3.视图不仅可以查询基本表,还可以更新基本表,(通过更新条件)但是必须发送sql更新.
  4.查询设计器不能设计所有的查询.(它只能建立简单查询和多个表之间的联接查询,但是不能设计嵌套等查询)
  5.查询和视图的区别:
  查询有查询去向,视图没有.视图有更新条件,而查询没有.(视图更新基本表,查询不能更新)
  第七章:
  1. 注释行以NOTE或*开头,在命令行后面添加注释用&&
  2. set talk off ---关闭人机对话.
  3.cancel: 强行终止程序执行,返回到命令窗口.
  return:结束当前程序的执行,返回到调用点.
  quit:退出vfp(释放内存)
  4.用do 命令执行程序文件时,如果没有指定扩展名,系统执行程序文件的先后顺序是:.exe(可执行文件),.app(应用程序文件),fxp(程序编译文件),.prg(程序文件)
  5.简单的输入输出命令有三种:
  input ,accept ,wait
  input 可以接受所有类型的数据.因此在输入时,必须加上相应的数据类型的定界符.
  accept :只能接受字符型的数据.在输入时,不需要加定界符,系统会自动为其加上字符型的定界符.
  如果输入的数据中含有字符型的("",'',[]),系统会将其认为是字符串本身的一部分.
  wait :只能接受单个字符.
  如果要求一个命令接受一个字符型的数据(不是单个字符),这时优先考虑用accept.
  6.程序的基本结构:顺序结构,选择结构,循环结构.
  选择结构:if...else ...endif,do case....case ...endcase ,选择结构本身也是一种顺序结构
  循环结构: do while ......enddo
  for....endfor(计数循环)
  scan for....endscan (扫描循环)
  在for ...endfor中当步长缺省为1,循环变量,初值,终值只在循环最初被计算一次.
  当步长为正数时,循环变量小于等于(<=)终值时,循环条件为.t.
  当步长为负数时,循环变量大于等于(>=)终值时,循环条件为.t.
  在循环体中可以有loop,exit
  loop:是提前结束本次循环,进入下一次循环(即在本次循环中不执行loop后面的语句,而是直接转到do while 处重新判断条件是否为.t.
  exit :表示强制性的终止(跳出)循环,转到enddo 的后面.
  7.参数传递,变量的作用域:请大家看笔记
  第八章:
  请大家在上机过程中总结,并且看一下有关控件的一些属性和一些方法,以及一些常用的事件.
  第九章:
  1.vfp的菜单分为两种:条形菜单和弹出式菜单.无论是哪一种类型的菜单,当选择其中的某个菜单项时,会有一定的动作(结果):可以是执行一条命令,可以是执行一个过程,激活子菜单.
  2.典型的菜单系统一般是一个下拉式菜单,由一个条形菜单加一组弹出式菜单组成.其中条形菜单为主菜单,弹出式菜单作为子菜单.
  快捷菜单是由一个或一组弹出式菜单组成.
  3.可以通过set sysmenu 命令可以允许或者是禁止在程序执行时访问系统菜单,也可以重新配置系统菜单.
  set sysmenu on 允许程序执行时访问系统文件.
  set sysmenu off 禁止程序执行时访问系统菜单.
  set sysmenu to default :恢复系统菜单.
  set sysmenu save:将当前菜单设置成系统菜单.
  set sysmenu nosave:系统菜单恢复成标准配置.
  要想返回到vfp的系统菜单的标准配置,可以首先执行set sysmenu nosave然后执行set sysmenu to default 命令.
  4.在菜单设计器的窗口.可以定义一个菜单.其中有三列:菜单名称,结果,选项.
  菜单名称列:指定菜单项的名称,也就是标题.可以为菜单设置一个热键(即在菜单名称的前面或者是后面加上\<字母)
  可以为菜单之间添加分组线:即在两个菜单项之间插入新菜单项,菜单项名称列中输入"\-"
  结果列:选择菜单项时引发的结果:子菜单(submenu),菜单项(pad name ),过程(procedure),命令(command)
  选项列:可以为菜单项设置快捷键.(选中键标签,按下相应的快捷键即可),可以为菜单项设置跳过条件(即当此条件为.t.时,菜单项为灰色,不可使用),可以为菜单项设置在状态栏上的功能提示.
  5. 如何从下级返回到上一级,选择菜单级中的菜单栏,如何从上级进入下级,选择子菜单,编辑即可.
  6.如何插入一个标准系统菜单命令:(插入栏)
  选中某个菜单项,选择"插入栏"按钮,在其中选择菜单命令,确定即可.(只能在弹出式菜单中插入栏)
  7.如何为顶层表单添加菜单:(假设菜单,表单都已建立)
  a.在菜单设计器中,将"显示"菜单下的"常规选项"中的"顶层表单"复选框选中,使其归顶层表单调用.
  b.将表单的showwindow属性设计为2,使其作为顶层表单.(即作为单独的一个窗口)
  c.在表单的init事件中调用菜单
  do 菜单程序文件名.mpr with this
  d.在表单的destroy事件中书写释放(清除)菜单的命令:
  release menu 菜单文件名
  8.快捷菜单一般在对象(控件)的rightclick事件中调用:
  do 快捷菜单程序文件名.mpr
  9.释放快捷菜单是在菜单设计器中的"显示"菜单下"常规选项"的"清理"事件中书写:
  release popups 快捷菜单程序文件名.mpr
  10.数据环境的对象会随着表单或者是报表的打开而打开,关闭而关闭.
  第十章:

  1.报表设计主要包括两部分内容:数据源和布局
  报表数据源:可以是数据库表或者是自由表,视图,查询或者是临时表.
  常用报表布局有四种:列报表,行报表,一对多报表和多栏报表.
  2.如何为报表设计数据源:只需要将报表的数据源添加到数据环境中即可.
  2.报表中用于排序和分组字段(表达式)必须建立了索引,而且要成为当前索引.
  要想成为当前索引,只需要在数据环境设计器中右键单击表,选属性,再选order属性,将order属性设置为 当前索引的索引项.
  3.标签:用于在报表上显示一些不需要改变的文字.
  域控件:用于显示字段,内存变量或者是表达式的值.
  图片/activex绑定控件:用于显示图片或者是通过型字段的内容.
  4.如何设计分栏报表:"文件"菜单下的"页面设置",将列数改为>1,列数及栏数.
  或者是用向导建立报表时,改变列数.
  第十一章:
  请大家参考要求大家记录的内容.
  大家必须将所有的课后习题弄清楚,笔试18套,以及机试50套.
温馨提示:答案为网友推荐,仅供参考
相似回答