Visual FOXPRO中的常用命令
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Visual FOXPRO中的常用命令
目录
说明
一、数据库的建立、打开、关闭和删除
二、数据表和视图的建立、打开、关闭和删除
三、数据表和表结构的编辑、修改
四、数据表中数据操作(查询、插入、删除和修改等)
五、文件管理(文件和文件夹的复制、创建和删除)
六、数据的复制与传送
七、排序与索引
八、查找和定位
九、统计计算
十、程序控制
十一、其它
说明
命令结构
FoxPro的命令结构一般由命令动词、语句体和注释几部分构成。
如:LIST [范围] [[FIELDS 字段名列表] [FOR 条件][WHILE 条件] [OFF] [TO PRINT]
常用子句
范围:表示记录的执行范围,可以是下面几项其中之一:
ALL 表示全部记录;
NEXT n 表示从当前记录开始的以下n条记录;
RECORD n 表示第n号记录;
REST 表示从当前记录到最后一条记录。
FIELDS 字段名表:用于指定操作的字段,多个字段时用逗号分隔。
FOR条件:对满足条件的记录进行操作。
WHILE 条件:当遇到第一个不满足条件的记录时,停止命令执行。
以下命令中,大写的英文词为关键词,必须原样照写。
“常用子句”指以下几个可选子句:
[范围] [FIELDS 字段名表] [FOR 条件] [WHILE 条件]
命令中的“列表”,指用“,”分隔的各项。如“字段名列表”就是将各个字段名用逗号分隔。
部分英文词的意义:Databasename 数据名tablename 数据表名filename 文件名Viewname 视图名arrayname 数组名
提示:加下划线的为本课程要求掌握的命令。
一、数据库的建立、打开、关闭和删除
建立数据库:
CREATE DATABASE [databasename|?]
从磁盘中删除数据库:
DELETE DATABASE databasename|?
打开数据库:
OPEN DATABASE [EXCLUSIVE|SHARED][NOUPDATE]
打开数据库设计器(允许用户按交互方式编辑当前数据库):
MODIFY DATABASE [databasename|?]
指定的数据库databasename为当前数据库。
指定当前的数据库:
SET DATABASE TO [databasename]
Databasename必须为已经打开的数据库。如果省略数据库名称databasename,则不指定当前数据库(没有当前数据库)。
关闭数据库:
CLOSE DATABASE [ALL]
关闭当前数据库,如果带ALL子句,则关闭所有打开的数据库。
二、数据表和视图的建立、打开、关闭和删除
建立数据表(SQL命令):
CREATE TABLE | DBF tablename (Col_name1 Type1 [NOT NULL/NULL]
[{,Col_name2 Type2 [NOT NULL/NULL]}...])
table_name是所创建的数据表的名字。
Col_name1,Col_name2,...是表中列的名。
Type1, Type2...是相应列的数据类型(VFP的数据类型见表3-9)。
如果说明为NOT NULL,则列中不允许分配空值(这种情况下,列不能包含空值,如果插入空值,将返回错误信息)。
向当前打开的数据库中添加数据表:
ADD TABLE tablename|?
从当前打开的数据库中删除数据表:
REMOVE TABLE tablename|? [DELETE]
如果包含DELETE子句,将从磁盘中删除这个表文件,否则,只从数据库中删除,但文件仍保存在磁盘中。
在当前打开的数据库中建立视图:
CREATE SQL VIEW viewname AS SELECT ……
其中SELECT ……为SELECT语句。
执行这个语句时,如果没有打开的数据库,则建立独立的视图,这样的视图不能存储。
从当前打开的数据库中删除视图:
DELETE VIEW viewname
打开一个表:
USE tablename|? [IN 工作区号]
将当前数据表与另一数据表连接后建立一个新表:
JOIN WITH 工作区号|表别名TO tablename FOR 条件[FIELDS 字段名表]
三、数据表和表结构的编辑、修改
打开浏览窗口(可在其中编辑数据表):
BROWSW(详细格式见P. 114~116)
打开并修改数据表中的字段:
(1) CHANGE [FIELDS 字段名列表]
(2) EDIT [FIELDS 字段名列表]
这两个命令的功能相似,可选子句较多(详见手册)。
数据表改名:
RENAME TABLE tablename1 TO tablename2
其中数据表tablename1必须存在且未打开。
视图改名:
RENAME VIEW viewname1 TO viewname2
其中数据表tablename1必须存在且未打开。
修改数据表结构(SQL命令):
ALTER TABLE tablename ;
ADD 字段名Type [NULL | NOT NULL]
[,字段名Type [NULL | NOT NULL] ;
[ALTER COLUMN字段名Type {NULL | NOT NULL}];
[{,字段名Type NULL | NOT NULL}...] ;
[DROP字段名[,字段名[, ...]]
将当前表与另一表之间建立关联:
SET RELATION TO [表达式1 INTO 工作区号1 | 表别名1];
[, 表达式2 INTO 工作区号2 | 表别名2] [, ...]
建立关联的两个表必须事先已按关联表达式进行索引排序。
在当前表与另一表之间建立一对多关联:
SET SKIP TO表别名1[, 表别名2]
消除当前表与另一表之间的关联:
SET RELATION OFF INTO 工作区号| 表别名
四、数据表中数据操作(查询、插入、删除和修改等)
数据查询SELECT语句(SQL命令)
格式见教材的有关章节。这是本课程的重点内容,必须很好地掌握。
更改数据表中的记录:
REPLACE 字段1 WITH 表达式1[ADDITIVE];
[,< [,<字段2> WITH <表达式2>[ADDITIVE],…];
[FOR 条件1][WHILE条件2]
其中的ADDITIVE子句适用于备注字段,表示将表达式的值加在字段的末尾。用内存数组的值更新数据表中的记录:
REPLACE FROM ARRAY数组名[FIELDS 字段名列表][常用子句]
用新的值更新表中的记录(SQL命令):
UPDATE [databasename!]tablename;
SET Column_1=Expression1 [{Column_2=expression2}...] ;
[WHERE Condition]
用一个表中的数据更新当前指定工作区中打开的表:
UPDATE ON fieldname FROM filename;
REPLACE fieldname1 WITH expr1