江苏省vfp教程第2章
- 格式:ppt
- 大小:6.37 MB
- 文档页数:120
第二章表的创建和使用2.1 VFP6.0表1. 表的概念表(数据表):是指存放在磁盘文件中的一张二维表。
(相当FoxPro 2.x 版本中的数据库)自由表:不属于任何数据库的表。
数据库表:包含在一个数据库中的表。
表文件名:表名可以由字母、数字或下划线组成,系统自动给出的扩展名为 .DBF。
备注文件名:当表中有备注型或通用型字段时,系统自动生成与所属数据表的表名相同、扩展名为:.FPT的文件名。
表结构:存储表记录的公共结构。
(就是指一张表的表头结构,即字段的属性)。
记录:表中的一行。
它是多个字段的集合,同一张表的每个记录都有相同的字段。
字段:表中的一列。
它规定了数据的特征。
关系型数据表的特点:(1)每一个字段不可再分解,也不能有名字相同的字段;(2)每一列中的数据都有相同的数据类型;(3)表中没有内容完全相同的行(记录)。
2. 字段的基本属性字段的属性:包括:字段名、数据类型、字段宽度、小数位数、空值支持字段名:即每个字段的名字,必须以字母开头,可由字母、数字、下划线组合而成,字母大、小写无区别,但其中不许有空格或其它字符。
自由表的字段名最多由10个字符组成,数据库表的字段名支持长名,最多可达128个字符。
如果从数据库中移去一个表,那么此表的长字段名将被截短成 10 个字符。
VFP允许长字段名和长表名,但使用长名称对于跨平台的操作可能遇到难以预料的结果。
数据类型:指该字段的数据特征。
字段宽度:指该字段所能容纳数据的的最大字节数。
小数位数:指数值型数据将保留几位小数。
此时的字段宽度 = 整数位数+1+小数位数。
NULL 值(空值):无明确的值。
NULL 值不等同于零或空格。
一个 NULL 值不能认为比某个值(包括另一个 NULL 值)大或小,相等或不同。
表的创建:设计表名和表结构、输入记录、建立索引数据维护:增加记录、修改记录、删除记录创建表的主要步骤:设计表结构→输入记录→建立索引→数据维护(1)必须先打开所需的数据表才可进行以上操作;(2)当带有命令子句时,只对指定的记录进行操作;(3)LIST 命令的默认范围是所有记录,DISPLAY 命令的默认范围是当前记录。
第二章VFP程序设计基础考点1:常量▪数值型(N):由数字、小数点和正负号构成,可用科学计数法表示,无定界符例:3.45 -12 1.8E10▪货币型(Y) :以$ 开头, 作为定界符,没有科学计数法▪逻辑型(L) :定界符. .✓逻辑真:.T. 、.t.、.Y.、.y.✓逻辑假:.F.、.f.、.N.、.n.▪字符型(C)✓字符型常量定界符:…‟、“”、[ ]✓定界符必须成对匹配使用✓定界符不作为字符串的内容✓空串(“”)和空格字符串(“”)是不同的✓字符串中字母的大小写不等价✓如果某个定界符本身是字符串的内容,则需要用另一定界符为该字符串定界例: “abc”…123‟[230002] […学习‟“努力”]▪日期型(D)▪定界符:{ }▪严格日期格式:{^YYYY-mm-dd}例:{^2009-07-12}✓空日期表示方法:{ }▪日期时间型(T) :✓严格日期时间格式:{^yyyy-mm-dd hh:mm:ss a/p}•严格或传统日期格式设置命令✓set strictdate to 0 :不对日期格式做检查✓set strictdate to 1 : 进行严格日期检查✓set strictdate to 2 : 进行严格日期检查,对CTOD()和CTOT()也一样▪年份显示命令(全国掌握):•set century to 世纪值rollover 年份参考值✓若所给日期2位年份大于年份参考值,则所处世纪为世纪值;否则为世纪值+1 考点2:变量▪变量名的命名规则(江苏掌握)✓变量名只能包含中英文字母、下划线和数字✓变量名第一个字符不能是数字✓系统变量名以下划线开头✓表字段名不允许以下划线开头✓自由表字段名、表索引标识名最多10个字符,其余最多128个字符✓避免使用保留字考点3:内存变量▪类型有6种,与常量相同▪不需要定义或声明,可直接使用▪可通过对内存变量重新赋值来改变其内容和类型▪内存变量的赋值:•格式1:<内存变量名>=<表达式>•格式2:STORE <表达式>TO <内存变量名表>▪格式1一次只能为一个变量赋一个值,格式2一次可将表达式的值赋给一个或多个内存变量例:x=3store “VFP”to x, y, z▪表达式值的显示命令:•?表达式:在下一行开始处显示表达式的值•??表达式:在当前行光标处显示表达式的值•? :换行例:store 10 to a,b,c?a??b▪内存变量的保存与恢复命令(江苏掌握)•内存变量在退出VFP时其数据自动丢失•内存变量的保存命令:SAVE TO 内存变量文件名ALL LIKE|EXCEPT通配表达式✓内存变量文件名默认扩展名为.mem✓通配表达式中使用*或?作为通配符✓ALL LIKE|EXCEPT缺省时保存所有内存变量▪例:将以A开头第4个字符为D的所有内存变量保存到A1.MEM中:Save to A1 all like A??D*⏹内存变量恢复的命令Restore from 内存变量文件名additive•若使用additive ,则已存在的内存变量仍保留,否则被清楚考点4:数组▪数组分为一维数组和二维数组▪数组在使用前必须要先定义,定义方法:✓DIMENSION A(5)✓DIMENSION AB(3,4)✓DECLARE X(6)✓DECLARE xy(5,4)▪数组元素的赋值✓数组声明后,每个数组元素初值为逻辑值.F.✓整个数组的数据类型是A✓数组中各元素的数据类型可相同,也可不同▪数组元素赋值方法:✓整体赋值:通过数组名赋值,为所有元素赋同一个值例:Dimension x(10,9)x=100✓元素赋值例1:declare m(8)m(2)=5例2:dimension x(4,5)x(2,3)={^2008-10-01}✓用一维数组的形式访问二维数组例:Dimension x(10,9)x(3,4)=7? x(22)?? x(22)考点5:表达式▪数值表达式%:求余(模)a%b=mod(a,b)例:6%5-6%56%-5-6%-5▪字符运算符•+:将两个串简单连接在一起例:?”visual□”+”foxpro” →visual□foxpro?”计算机□”+[□文化□] →计算机□□文化□•- :连接两个字符串,并将前一个字符串的尾部空格移至后一个字符串之后,总字符个数不变例:?”计算机□”-[文化]→计算机文化□?”□windows□”-“98”→□windows98□•$ :用于左字符串是否包含在右字符串中,若是结果为.T.,否则为.F.例:?”I”$”Beijing”→.F.? ”i”$”Beijing”→.T.▪日期时间表达式•两日期相减,表示相差的天数;•两日期时间相减,表示相差的秒数;•一个日期加/减一个数,表示多少天以后/前;•一个日期时间加/减一个数,表示多少秒以后/前;▪两日期/日期时间不能相加•关系运算符:见辅导教材•字符串比较的规则:✓按Machine方式:空格最小,大写字母小于小写字母set collate to “Machine”✓按PinYin方式:汉字按拼音排序,西文字符空格最小,小写写字母小于大写字母set collate to “PinYin”PinYin为默认比较方式▪字符串精确比较(==)✓不受set exact on|off的影响,只有==前后两字符串完全相同时结果为.T.,否则为.F. 例:?”abcd”==”ab”→.F.?”abcd”==”abcd”→.T.▪“=”与set exact on|off•set exact off:默认方式,只要右字符串与左字符串的前面部分相同,则结果为.T.字符串比较因右字符串结束而终止,若右包含左,返回值为假?”ab”=”abc”.F.?”abc”=”abc”.T.?”abcd”=”abc”.T.•set exact on:先在较短字符串尾部加若干空格,使长度相同,再进行精确比较▪?”ab□”=”abc” .F.▪?”abc□”=”abc” .T.▪?”abcde”=”abcd”.F.▪?”ab”=”ab□□□” .T.▪?”ab”=”abc□□□” .F.考点6:函数▪掌握每个函数的功能、执行原理、返回类型✓宏代换&例:nvar=100nvarb=100var_name=“nvar”store 123.4 to &var_namestore 200 to &var_name.b▪Stuff例:?stuff(”计算机ABC”,3,4,”你好”)计你好ABC?stuff(”数据库”,5,6,”管理系统”)数据管理系统?stuff(”计算机ABC”,5,4,”你好”)计算你好C▪?round(<数值表达式1>,<数值表达式2>)如果“数值表达式2”是正整数,它指定保留的小数位数;如果“数值表达式2”是0,它指定精确到个位;如果“数值表达式2”是负整数,它指定精确的整数位数。
第二章 Visual FoxPro 应用基础2.1 数据库和表的建立一、几个常用符号的约定:1、< > 必选参数表示符2、[ ] 任选参数表示符3、/ 二选一表示符二、改变默认盘和当前路径命令:命令格式:SET DEFAULT TO [<字符表达式>]三、命令注释:命令格式:&&<注释内容>四、数据库操作命令1、创建数据库命令:命令格式:CREATE DA TABASE [<库文件名>/?]命令功能:在VFP所指定的当前路径下创建一个数据库并打开它2、打开数据库命令:命令格式:OPEN DA TABASE [<库文件名>/?]3、关闭数据库命令:命令格式:CLOSE DATABASE命令功能:关闭当前打开的数据库,同时也关闭了这个数据库中已经打开的各种文件。
4、删除数据库命令:命令格式:CLOSE DATABASE <库文件名>命令功能:从磁盘中删除指定的数据库以及这个数据库所包含的所有文件。
五、创建数据库表:命令格式:CREATE [<表文件名>/?]命令功能:在当前打开的数据库中定义一个表文件结构,并把该文件存入磁盘。
六、打开表文件命令:命令格式:USE <表文件名>命令功能:打开指定的表文件,同时关闭原来已打开的表文件。
如果该表文件有备注型字段,则同时打开其相应的备注文件。
七、记录指针及其操作命令:1、指针绝对移动命令:命令格式:GO[TO] [RECORD] <数值表达式>/TOP/BOTTOM2、指针相对移动命令:命令格式:SKIP [±<数值表达式>]八、追加记录操作命令:命令格式:APPEND [BLANK]命令功能:在表文件的末尾追加新的记录九、插入记录操作命令:命令格式:INSERT [BLANK] [BEFORE]十、从其它表中追加记录命令:命令格式:APPEND FORM <表文件名>/? [FIELDS<字段名清单>] [FOR<条件>]命令功能:自动从一指定源文件中读出一些记录,并追加到当前文件(即目的文件)中去。