Visual FoxPro 教学大纲.docx
《Visual FoxPro 教学大纲.docx》由会员分享,可在线阅读,更多相关《Visual FoxPro 教学大纲.docx(26页珍藏版)》请在冰豆网上搜索。
VisualFoxPro教学大纲
VisualFoxPro教学大纲
第一章数据库系统(2学时)
知识要点:
1、基本概念:
信息、数据、数据处理、数据库、数据库管理系统、数据库系统、数据库应用系统、数据模型(层次模型、网状模型、关系模型)、关系数据库、关系、主关键字、外部关键字、字段、记录、数据项、属性
2、关系数据库的主要特点
(1)
(2)(3)
3、简要介绍VisualFoxPro6.0的特点、安装、运行及继承开发环境
窗口、菜单、工具栏、向导、生成器、设计器、项目管理器、系统配置、文件类型
1.1信息、数据和数据处理
1.1.1信息与数据
Ø信息(information)是客观事物属性的反应。
是经过加工处理并对人类客观行为产生影响的数据表现形式。
Ø数据(data):
反映客观事物属性的记录,是信息的载体。
用符号来表示。
数据是信息的具体表现形式。
数据所反映的事物属性是它的内容,符号是它的形式。
Ø信息和数据的区别和联系:
⏹从信息处理角度:
任何事务的属性都是通过数据来表示。
用数据符号表示信息的三种形式:
数值型(定量)、字符型(定性)和特殊型(声音、图形等)。
⏹从计算机角度:
数据泛指可以被计算机接受并能被计算机处理的符号。
★结论:
信息是有用的数据,数据是信息的表现形式。
信息通过数据符号传播,只有具有知识性和有用性的数据才是信息。
1.1.2数据处理(信息处理DataProcess)
包括:
采集、整理、存储、分类、排序、检索、维护、加工、统计、传输、打印等。
⏹数据处理的目的:
提出有用的成分作为行动和决策的依据。
⏹数据管理技术的发展过程:
(1)人工管理:
数据不能独立于程序,独立性差,不能共享
(2)文件管理:
把数据组织成文件,可以独立于程序,由文件管理系统管理(应用程序和数据文件之间的接口),通用性差,数据冗余大
(3)数据库系统管理:
形成数据中心——数据仓库,共享性好减少冗余
1.2数据模型
Ø数据模型的概念:
具有联系性的相关数据总是按照一定的组织关系排列,从而构成一定的结构,对这种结构的描述就是数据模型。
Ø理论上讲:
数据模型是反映客观事务及客观事物之间联系的数据组织的结构和形式。
Ø数据模型的形式:
(1)层次模型(hierarchalmodel):
表示数据之间的从属关系,象一棵倒挂的树
主要特征:
Ø仅有一个无双亲的根结点
Ø根结点以外的子节点,向上仅有一个父结点,向下由若干个子结点
(2)网状模型(networkmodel):
表示数据间的纵横关系(多种从属关系)
(3)关系模型(relationmodel):
平行的集合关系,二维表
Ø记录(record):
行,表示属性
Ø字段(field):
列,属性的类型
Ø主要特点:
⏹关系中的每一数据项不可再分,是基本的单位
⏹每一竖列数据项是同属性的,列数根据需要而定,顺序任意
⏹每一横行记录由一个个体事物的诸多属性构成,顺序任意
⏹一个关系是一个二维表,不允许有相同的字段名和相同的记录行
*1.3数据库应用系统
Ø组成:
硬件、操作系统(OS)、数据库管理系统(DBMS)、编译系统、用户应用程序和数据库(database)
1.3.1数据库:
以一定的组织形式将相关的数据组织子一起存放在计算机存储器上形成的、能为多个用户共享的、与应用程序彼此独立的一组相关数据的集合。
其性质由模型决定。
1.3.2关系数据库(relationdatabase):
若干个依照关系模型设计的数据表文件的集合。
二维表组成。
Ø相关性:
依靠每一个独立的数据表内部具有相同属性的字段建立。
Ø特点:
P8
●支持复杂的数据结构
●高度独立性
●共享性
●多用户同时访问
1.3.3数据的规范化(datanormalization):
数据的规范化准则
Ø等级:
1—5范式(1NF—5NF)
Ø关系模型规范化的原则
⏹第一范式:
一个关系中,消除重复字段,各字段不可分
⏹第二范式:
若关系模式属于第一范式,则关系中的每一个字段都完全依赖于主关键字段的每一部分。
⏹第三范式:
若关系模式属于第一范式,且关系中所有非关键字段都只依赖于主关键字段。
Ø关系种类:
⏹一对一关系
⏹一对多关系
⏹多对一关系
⏹多对多关系
1.4数据库管理系统(DBMS)
Ø组成:
⏹数据描述语言(DDL)及其编译程序:
定义数据库各级模式(外、概念、内)
⏹数据操纵语言(DML)或者查询语言及其编译或解释程序:
提供对数据库数据的存取、检索、插入、修改、删除等
(1)嵌入式的——宿主型语言
(2)交互查询语言——自主型
⏹数据库管理例行程序:
并发控制、存取控制、完整性条件检查与执行、数据库内部维护等
1.5数据库系统的体系结构
总框架
与数据库打交道的人:
用户、应用程序员和系统程序员
Ø视图:
观察、认识和理解数据的范围、角度和方法。
⏹对应于用户的外部视图
⏹对应于应用程序员的概念视图
⏹对应于系统程序员的内部视图
以此形成数据库系统的三级模式:
P13图1-2
Ø外模式:
子模式,用户模式,对应于用户级P143
Ø概念模式:
逻辑模式,对应于概念级
Ø内模式:
存储模式,对应于物理级
两级映射:
Ø外模式与概念模式间的映射
Ø概念模式与内模式之间的映射
1.6数据库应用系统的构成P14
Ø组成:
硬件+软件+数据+人员
⏹硬件环境:
CPU、内存、外存、I/O
⏹软件系统:
系统软件和应用软件
⏹数据:
信息源
⏹人员:
管理、开发人员——database管理员、系统分析员、应用程序员和用户
Ø人员分工:
⏹database管理员:
管理控制数据库系统
⏹系统分析员:
应用程序的需求分析和规范说明,确定系统的软硬件配置。
系统功能及数据库概念设计
⏹应用程序员:
设计程序模块,编程
⏹用户:
使用database
VFP特点、安装和运行
特点:
6p5
安装:
运行环境p5
集成开发环境p7
1.2.1VisualFoxPro特性
1.良好的用户界面:
菜单驱动
2.面向对象编程
3.快速创建应用程序
4.database操作简便
5.多用户开发
6.与其它应用程序交互操作
7.独特的开发clint/server解决方案
8.升级早期版本
1.2.2VisualFoxPro安装与启动
1.2.2.1安装环境P18
1.硬件环境:
2.软件环境:
3.升迁向导环境(环境要求)P18
(1)服务器
(2)客户机
(3)网络
2.2.2VisualFoxPro6.0的安装P18-19
2.2.3启动VisualFoxPro6.0的方式:
1、2、3P20
2.2.4退出VisualFoxPro6.0:
1、2、3、4、5
2.3VisualFoxPro系统环境的配置
Ø设置系统环境:
⏹添加或者删除VisualFoxPro控件
⏹更新WindowsRegistry注册项
⏹改变选项栏和工具栏
⏹安装ODBC数据源
P23选项对话框特性
2.4VisualFoxPro用户界面
2.4.1VisualFoxPro界面P24
2.4.2标题栏
●系统程序图标
●主屏幕标题
●最小化按钮
●最大化按钮(还原)
●关闭按钮
2.4.3主菜单栏P25
●文件P25图2-2
●编辑P26图2-3
●显示P26图2-4
●格式P27图2-5
●工具P27图2-6
●程序P27图2-7
●窗口P28图2-8
●帮助P28图2-9
2.4.4工具栏
●常用工具栏11种P28
●激活工具栏P29
●清除工具栏
●重新设置工具栏
●建立工具栏
2.4.5命令窗口
输入命令
2.4.6工作区
2.4.7状态栏屏幕最底部
2.5VisualFoxPro向导
向导及功能P30表2-10
2.6VisualFoxPro生成器
生成器及功能P31表2-11
2.7VisualFoxPro设计器
设计器及功能P31表2-12
第二章VisualFoxPro6.0语言基础(4)
知识要点:
数据类型、运算符、表达式、函数、数据存储方式
1、基本概念
数据类型(字符、数值、逻辑、日期、日期时间、整型、通用、备注)
其它类型简要介绍(浮点、货币、二进制字符)
2、数据存储
常量
(数值型、浮点型、字符型、逻辑型、日期型、日期时间型)
变量
命名、字段变量、内存变量、系统内存变量、数组
内存变量的定义、赋值、引用、输出、显示、释放
数组的定义、赋值、使用、输出、释放
相关命令如下:
SETDATETOamer|ansi|british|frence|german|Japan|USA|MDY|DMY|YMD
SETCENTURYON|OFF
||
STORE<表达式>TO<内存变量名表>
<内存变量名>=<表达式>
LIST|DISPLAYMEMORY[LIKE<通配符*?
>][TOPRINTER|TOFILE>]
*CLEARMEMORY
*RELEASE<内存变量名表>
*RELEASEALL[LIKE<通配符*?
>|EXCEPT<通配符*?
>]
clearall
DIMENSION例如:
DIMENSIONAA(5)
3、运算符和表达式
(1)算术运算符和算术表达式
(2)字符串运算符和字符表达式
(3)日期运算符和日期表达式
(4)关系运算符和关系表达式
(5)逻辑运算符和逻辑表达式
(6)*类和对象运算符(简单介绍)
(7)*名称表达式
4、函数
(1))数值处理函数
INT()
ROUND()
ABS()
MAX()
MIN()
SQRT()
*LOG()*
*EXP()*
MOD()
(2)字符处理函数
&宏替换
LEN()
SPACE()
LOWER()
UPPER()
TRIM()
LTRIM()
RTRIM()
ALLTRIM()
SUBSTR()
LEFT()
RIGHT()
(3)日期和时间处理函数
DATE()
TIME()
DATETIME()
DAY(DATE())
MONTH(DATE())
YEAR(DATE())
(4)数据类型转换函数
ASC()
CHR()
VAL()
CTOD()
DTOC()
(5)测试函数
IIF()
*TYPE()
BOF()
EOF()
RECNO()
FOUND()
*FILE()
DELETE()*
DBF()*
SELECT()*
USED()*
(6)其它函数
SYS()*
MESSAGEBOX()
CHR(13)
CHR(10)
5、命令
命令动词
命令书写规则
第三章VisualFoxPro6.0数据库及其操作(8)
知识要点:
数据库的基本概念和基本操作
3.1创建项目(菜单方式、命令方式)
(1)建立工作目录
a.选项——文件位置
b.SETDEFAULTTO….
(2)建立项目文件CREATEPROJECT
(3)打开项目文件MODIPROJECT
3.2创建数据库(项目中建、菜单建、命令方式)
数据库表间关系
一对一、一对多、多对多
(1)建立数据库CREATEDATABASE
(2)项目中添加数据库
(3)打开数据库(项目、菜单、命令方式)OPENDATABASE
(4)关闭数据库CLOSEDATABASE[ALL]
(5)删除数据库(项目中移去、删除,命令方式)DELETEDATABASE
3.3创建数据表
数据库表
自由表
(1)数据表结构
字段名
字段类型
字段长度
数位数
使用空值(NULL——不同于零和空白)
(2)自由表的建立
◆菜单方式
◆命令方式CREATE表名
◆项目管理器方式
※各种不同类型字段的数据输入方法
(3)数据库表的建立
◆数据库中建表
OPENDATABASE
CREATETABLE
◆在数据库中添加自由表
项目管理器方式
命令方式;ADDTABLE
◆从数据库中移去自由表
项目管理器方式
命令方式:
OPENDATABASE
REMOVETABLE
3.4数据表的基本操作(一般都有项目管理器方式、菜单方式、命令方式,菜单方式略)
(1)数据表的浏览
◆打开表(USETABLE_NAME[EXCLUSIVE][SHARE])
◆浏览显示结构LIST|DISPLAYSTRUCTURE
◆浏览显示记录BROWSE
◆条件筛选SETFILTERTO条件
◆取消条件SETFILTERTO
◆设置字段过滤器*SETFIELDSTO字段名表
◆取消字段过滤器*SETFIELDSTOALL
◆显示记录LIST|DISPLAY(范围和条件FOR…)
(2)记录定位
记录指针(TOP——BOFBOTTOM——EOF)
◆绝对移动GOTOP/BOTTOM/N
◆相对移动SKIP±n
◆条件定位LOCATEFOR….
3.5数据表的维护
(1)修改表结构
◆项目管理器方式
◆命令方式MODISTRUCTURE
(2)添加记录
◆菜单方式
◆命令方式APPEND[BLANK]尾部追加
◆插入方式INSERT[BEFORE][BLANK]某记录前后追加
◆从其它文件追加
⏹菜单方式
⏹命令方式APPENDFROM<源文件名>[FIELDS][FOR条件]
(3)编辑记录
◆浏览窗口中编辑BROWSE
◆批量修改REPLACE…….
(4)删除记录
◆逻辑删除(鼠标删除、菜单删除、命令删除DELETE…)
◆恢复逻辑删除(鼠标、菜单、命令RECALL…)
◆物理删除(菜单、命令——DELE….PACK,ZAP)
(5)复制数据表
◆复制数据表文件
⏹菜单方式
⏹命令方式COPYTONEW_NAMEFOR….
◆复制表结构COPYSTRUCTURETO….
◆数据表文件更名
⏹项目管理器方式
⏹命令方式RENAMEOLD_NAMETONEW_NAME(可以使用通配符)
(6)数据表和数组之间数据交换
◆当前表记录复制到数组SCATTER[FIELDS][MEMO]TO数组名
◆将数组复制到当前记录APPENDBLANK
GATHERFROM数组名FIELDS……
3.6数据表排序与索引
*
(1)排序*
SORTTOFILE_NAMEONFIELD_NAME[/A][/D][/C]FOR….
(2)索引
◆基本概念
⏹索引
⏹*索引和排序的区别
⏹*索引的类型(独立索引、结构复合索引、*非结构复合索引、)
⏹索引关键字
⏹索引关键字类型(主索引、候选索引、唯一索引、普通索引)
◆建立索引
⏹用表设计器建立索引
⏹INDEXON索引关键字表达式TAG索引标识名
◆按索引顺序浏览记录
⏹菜单方式
⏹命令方式SETORDERTO[TAG<索引标识名>]
(3)数据表查询
◆*FIND命令
◆SEEK命令
(4)数据表统计与汇总
◆统计
⏹计数:
COUNT……..TO…..
⏹求和:
SUM……TO
⏹求平均值:
AVERAGE……TO……
◆*数据表的分类汇总TOTALON汇总关键字TO表名FOR…..
*3.7建立数据字典
数据字段功能要点:
◆设置表的字段属性
◆设置长表名和长字段名
◆设置主关键字和候选关键字
◆制定字段的输入掩码和显示格式
◆设置字段的默认值
◆设置字段的标题
◆创建字段和记录的有效性规则
◆设置触发器(插入、更新、删除)
◆为字段、表和数据库添加注释
◆创建数据库表间的永久关系
◆设置参照完整性
◆创建存储过程*
*3.8多数据表的操作
基本概念:
工作区(32767)、连接
(1)工作区选择SELECT工作区号|别名|0
(2)数据表的联接
◆关联SETRELATIONTO关键字表达式INTO工作区号|别名…..
SETSKIPTO别名1….
SETRELATIONOFFINTO工作区号|别名(取消关联)
◆物理联接JOINTWITH工作区号|别名TONEW_NAMEFIELDSFOR…
第四章查询和视图(2学时)
知识要点:
查询、视图的概念、查询和视图的联系和区别
4.1查询
建立查询的一般过程(使用查询设计器)
◆选择查询的数据源(自由表、数据库表和视图)
◆选择出现在查询结果中的字段
◆设置查询条件来查找满足用户要求的记录
◆设置排序或者分组来组织查询结果
◆选择查询去向,也就是查询结果的输出类型
◆运行查询,获得查询结果
*命令方式:
建立:
CREATEQUERY….
运行:
DO…
修改:
MODIQUERY…
4.2视图(本地视图和远程视图*)
建立视图的一般过程
◆打开数据库
◆选择本地视图
◆选择数据源添加到数据库
◆选择字段、连接条件、筛选条件、排序、分组依据和更新条件
命令方式:
*建立:
CREATEVIEW
打开视图:
USE…
关闭视图:
USE
第五章结构化查询语言SQL(2学时)
SQL——StructuredQueryLanguage
1、表的定义
CREATETABLE…….
2、修改表结构
ALTERTABLE表名ADD|ALTER字段名……
ALTERTABLE表名ALTER字段名……
ALTERTABLE表名DROP|ALTER字段名……
3、表的删除
DROPTABLE表名
4、插入记录
INSERTINTO表名[FIELDS….]VALUES(表达式1…..)
INSERTINTO表名FROMARRAY数组名|FROMMEMVAR
5、删除记录
DELETEFROM表名WHERE….
6、更新记录
UPDATE表名SET字段名1=表达式1……..WHERE…..
7、数据查询
◆基本查询SELECT…FROM…WHERE…
◆条件查询加筛选条件=,>=,<=,==,IN,BETWEEN,AND.OR,LIKE……
◆排序查询SELECT…FROM…WHERE…ORDERBY…
◆计算分组查询
SELECTAVG(..)FROM…(AVG,SUM,COUNT,MIN,MAX,ROUND)AS….
◆多表查询
SELECT名称,AVG(成绩)AS平均成绩FROM课程,成绩;
WHERE课程.课程号=成绩.课程号GROUPBY成绩.课程号
◆联接查询
SELECTCJ.学号,KC.课程名,CJ.成绩FROM成绩,CJINNERJOIN课程KCONCJ.课程号=KC.课程号WHEREKC.课程号<>”101”
WHERE课程.课程号=成绩.课程号GROUPBY成绩.课程号
◆*嵌套查询
SELECTKC.课程名,CJ.成绩AS张三的成绩FROM课程KC,成绩CJ;
WHERECJ.学号=(SELECT学号FROM学生WHERE姓名=”张三”);
ANDKC.课程号=CJ.课程号
8、查询输出
SELECTKC.课程名,CJ.成绩AS张三的成绩FROM课程KC,成绩CJ;
WHERECJ.学号=(SELECT学号FROM学生WHERE姓名=”张三”);
ANDKC.课程号=CJ.课程号INTOTABLE表名
第六章结构化程序设计(6)
基本概念:
程序、结构化程序设计、程序的基本结构
6.1程序的建立和执行
1、建立
(1)项目管理器方式
(2)菜单方式
(3)命令方式MODICOMM….
2、修改
(1)项目管理器方式
(2)菜单方式
(3)命令方式MODICOMM….
3、运行
DO程序文件名*[WITH<参数表>](运行顺序:
EXE-APP-FXP-PRG)
6.2、程序设计常用命令
1、基本命令
(1)注释:
◆NOTE[<注释内容>]
◆*[<注释内容>]
◆&&[<注释内容>]
*
(2)文本显示命令
TEXT
<文本内容>
ENDTEXT
(3)环境设置命令
*SETTALKON|OFF
*SETCONSOLEON|OFF
*SETPRINTERON|OFF
SETSAFETYON|OFF
*SETHEADINGON|OFF
*SETSTATUSON|OFF
SETDEFAULTTO
*SETDEVICETOSCREEN|PRINTER
*SETBELLON|OFF
SETCENTURYON|OFF
*SETCLOCKON|OFF
SETDELETEON|OFF
*SETESCAPEON|OFF
SETEXCLUSIVEON|OFF
*SETECHOON|OFF
*SETEXACTON|OFF
(4)清除命令
◆CLEAR&&清除屏幕信息
◆CLEARALL&&关闭索引文件,释放所有内存变量,设置当前工作区为1
◆CLEARTYPETHEAD&&清除键盘缓冲区
(5)关闭文件命令
◆CLOSE<文件类型>(DATABASE-INDEX-FORMAT-PROCEDURE-ALTERNATE)
◆CLOSEALL&&关闭所有工作区打开的数据库、表及索引文件,设置当前工作区为1
(6)运行中断和结束命令
◆CANCEL
◆RETURN*[TOMASTER]
◆QUIT
2、输入、输出命令
(1)基本输出命令?
|?
?
表达式1,2…
(2)单字符输入命令WAIT……TO…..[WINDOWS][TIMEOUT]
(3)字符串输入命令ACCEPT…TO…
(4)表达式输入命令INPUT…TO….
(5)格式化输入、输出命令
◆@<行号,列号>SAY<表达式>
◆*@<行号,列号>SAY<表达式>GET<变量>
READ
6.3、程序的基本控制结构
1、顺序结构
2、分支结构
◆单分支结构IFENDIF
◆双分支结构IFELSEENDIF
◆IF语句嵌套
◆多分支结构DOCASE….ENDCASE
3、循环结构
DOWHILE..EXIT…LOOP…ENDDO
FOR循环FOR…LOOP…EXIT…ENDFOR|NEXT
SCAN循环SCAN…LOOP…EXIT…ENDSCAN
4、多重循环结构——循环嵌套
*6.4过程与自定义函数
1、过程
(1)建立MODICOMM….
过程文件有返回语句RETURN*[TOMASTER