9.条件测试函数
格式:F(<逻辑表达式>,<表达式1>,<表达式2>)
功能:测试<逻辑表达式>的值,若为逻辑真 .T.,函数返回<表达式1>的值;若为逻辑假.F.,函数返回<表达式2>的值。<表达式1>和<表达式2>的类型不要求相同。
10.记录删除测试函数
格式:DELETED(<表的别名><工作区号>))
功能:测试指定的表,或在指定工作区中所打开的表,记录指针所指的当前记录是否有删除标记“*”,若有为真,否则为假。若缺省自变量,则测试当前工作区中所打开的表。
1.1.4 Visual FoxPro数据库及其操作
考核知识点一 Visual FoxPro数据库及其建立 ㈠.建立数据库
建立数据库的常用方法有以下三种:
在项目管理器中建立数据库; 通过“新建”对话框建立数据库; 使用命令交互建立数据库。
㈡.使用数据库
在数据库中建立表或使用数据库中的表时,都必须先打开数据库,与建立数据库类似,常用的打开数据库的方式也有三种;
在项目管理器中打开数据库; 通过“打开”对话框打开数据库; 使用命令打开数据库。
㈢.修改数据库
可以用以下三种方法打开数据库设计器; 从项目管理器中打开数据库设计器; 通过“打开”对话框打开数据库设计器; 使用命令打开数据库设计器。
㈣.删除数据库
Visual FoxPro的数据库文件并不真正含有数据库表或其他数据库对象,只是在数据库文件中登录了相关的条目信息,表、视图或其他数据库对象是独立存放在磁盘上的。所以不管是“移去”
还是“删除”操作,都没有删除数据库中的表等对象,删除数据库时同时删除表等对象,需要使用命令方式删除数据库。删除数据库的命令是DELETE DATABASE,具体命令格式如下:
DELETE DATABASE DatabaseName ┃? [DELETETABLES][RECYCLE] 其中各参数和选项的含义如下:
DatabaseName:给出要从磁盘上删除的数据库文件名,此时要删除的数据库必须处于关闭状态;如果使用问号“?”,则会打开“删除”对话框请用户选择要删除的数据库文件。
DELETETABLES:选择该选项则在删除数据库文件的同时从磁盘上删除该数据库所含的表(.DBF文件)等。
RECYCLE:选择该选项则将删除的数据库文件和表文件等放入Windows的回收站中,如果需要的话,还可以还原它们。
注意:如果SETSAFETY设置值为ON,则Visual FoxPro会提示是否要删除数据库,否则不出现提示,直接进行删除操作。
考核知识点二 建立数据库表 ㈠.在数据库中建立表
1.字段名
字段名即关系的属性名或表的更名。一个表由若干列(字段)构成,每个列都必须有一个惟一的名字——字段名,将来可以通过字段名直接引用表中的数据。在中文Visual FoxPro中字段名可以是汉字或合法的西文标识符。
2.字段类型和宽度
字段的数据类型决定存储在字段中的值的数据类型,数据类型通过宽度限制可以决定存储数据的数量或精度。
3.空值
字段有“NULL”选项,它表示是否允许字段为空值。空值也是关系数据库中的一个重要念,在数据库中可能会遇到尚未存储数据的字段,这时的空倬与空(或空白)字符串、数值0等具有不同的含义,空值就是缺值或还没有确定值,不能把它理解为任何意义的数据。比如表示价格的一个字段值,空值表示没有定价;而数值0可能表示免费。
一个字段是否允许为空值与实呼应用有关,比如作为关键字㈤字段是不允许为空值的,而那些在插入记录肘允许暂缺的字段值往往允许为空值。
4.字段有效性组框
在字段有效性组框中可以定义字段的有效性规则、违反却则时的提示信息和字段的默认值。
5.显示组框
在显示组框下可以定义字段显示的格式、输入的掩码和字段的标题。
6.字段注释
可以为每个字段添加注释,便于日后或其他人对数据库进行维护。
㈡.修改表结构
1.修改已有的字段
用户可以直接修改字段的名称、类型和宽度。
2.增加新字段
如果要在原有的字段后增加新的字段,则直接将光标移动到最后,然后输入新的字段名、定义类型和宽度。
如果要在原有的字段中间插入新字段,则直接将光标移到最后,然后输入新的字段的位置,然后用鼠标单击“插入”命令按钮,这时会插入一个新字段,随后输入新的字段名、定义类型和宽度。
3.删除不用的字段
如果要删除某个字段,首先将光标定位在要删除的字段上,然后用鼠标单击“删除”命令按钮。
考核知识点三 表的基本操作 ㈠.数据记录操作
1.浏览操作
常用的浏览操作如下: 下一记录:下箭头键: 前一记录:上箭头键; 下一页:Page Down键; 前一页:Page Up键; 下一字段:Tab键;
前一字段:Shift+Tab键。
2.修改记录
要在浏览器中修改记录的值,只需要将光标定位在要修改的记录和字段值上,然后直接进行修改就可以了。
3.删除记录
在Visual FoxPro中删除记录有逻辑删除和物理删除两种,所谓逻辑删除只是在记录旁做删除标记,必要时还可以去掉删除标记恢复记录;而物理删除才是真正从表中删除记录;物理删除是在逻辑删除的基础上进行的,即物理删除是将那些有删除标记的记录真正删除。
㈡.增加记录的命令
1.APPEND命令
APPEND命令是在表的尾部增加记录,它有两种格式:APPEND或APPEND BLANK。
2.INSERT命令
INSERT命令可以在表的任意位置插入新的记录,它的命令格式是: INSERT[BEFORE][BLANK]
㈢.删除记录的命令
1.设置删除标记的命令
逻辑删除或置删除标记的命令是DELETE,常用格式如下: DELETE [FOR Expressionl]
如果不用FOR短语指定逻辑条件,则只逻辑删除当前一条记录;如果用FOR短语指定了逻辑表达式Expressionl,则逻辑删除使该逻辑表达式为真的所有记录。
2.恢复记录的命令
被逻辑删除的记录可以恢复,恢复记录的命令是RECALL,常用格式如下: RECALL [FOR lExpressionl]
如果不用FOR短语指定逻辑条件,则只恢复当前一条记录,如果当前记录没有删除标记,则该命令什么都不做。如果用FOR短语指定了逻辑表达式Expressionl,则恢复使该逻辑表达式为真的所有记录。
3.物理删除有删除标记的记录
物理删除有删除标记记录的命令是PACK,执行该命令后所有有删除标记的记录将从表中被物理地删除,并且不可能再恢复。
4.物理删除表中的全部记录
使用ZAP命令可以物理删除表中的全部记录,不管是否有删除标记。该命令只是删除全部记录,并没有删除表,执行完该命令后表结构依然存在。
㈣.修改记录的命令
1.用EDIT或CHANGE命令交互式修改 2.用REPLACE命令直接修改
可以使用REPLACE命令直接用指定表达式或值修改记录,REPLACE命令的常用格式是: REPLACE FieldName1 WTHe Expressionl[,FieldName2 WTH eExpression2]
[FOR Expressionl]
该命令的功能是直接利用表达式eExpression的值替换字段FeldName的值,从而达到修改记录的目的。一次可以修改多个字段(eExpressionl,eExpression2...)的值,如果不使用FOR短语,则默认修改的是当前记录;如果使用了FOR短语,则修改逻辑表达式Expressionl为真的所有记录。
㈤.显示记录的命令
显示记录的命令是LIIST和DSPLAY,它们的区别仅在于不使用条件时,LIST默认显示全部记录,而DSPLAY则默认显示当前记录。它们的常用命令格式是:
LIST/DSPLAY [FELDS] FieldiList] [FOR lExpressionl] [OFF]
TO PRNTER [PROMPT] TO FLEF FieldName]
㈥.查询定位命令
1.用GOTO命令直接定位
GOTO和GO命令是等价的,命令格式为: GO nRecordNumber ┃ TOP ┃BOTTOM
确定了当前记录位置之后,可以用SIKP命令向前或向后移动若干条记录位置。
2.SKIP命令的格式是:
SKIP nRecords]
3.用LOCATE命令定位
LOCATE是按条件定位记录位置的命令,常用命令格式是: LOCATE FOR lExpressionl
考核知识点四 索引 ㈠.基本概念
可以在表设计器中定义索引,Visual FoxPro中的索引分为主索、候选索引、惟一索引和普通索引四种。
①主索引; ②候选索引; ③惟一索引;, ④普通索引。
㈡.在表设计器中建立索引
①单项索引;