Visual FoxPro 常用命令汇总
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、数据库操作命令
1.新建数据库
CREATE DATABASE KS1 &&KS1数据库名
2.打开数据库(打开四种方式)
OPEN DATABASE KS1 &&KS1数据库名
1)OPEN DATABASE KS1 EXCLUSIVE &&EXCLUSIVE是独占式打开数据库
2)OPEN DATABASE KS1 SHARE &&SHARE是共享式打开数据库
3)OPEN DATABASE KS1 NOUPDATE &&NOUPDATE是只读式打开数据库
4)OPEN DATABASE KS1 VALIDATE &&检查数据库是否合法
3.设置当前数据库
SET DATABASE TO KS1 &&把KS1设为当前数据库
4.打开数据库设计器
1)MODIFY DATABASE &&不需要加数据库名
2)MODIFY DATABASE NOWAIT &&NOWAIT打开数据库设计继续执行
3)MODIFY DATABASE NOEDIT &&NOEDIT禁止对数据库修改
5.关闭当前数据库
CLOSE DATABASE &&不需要加数据库名
6.删除数据库
DELETE DATABASE KS1 RECYCLE DELETETABLES
*删除数据库KS1,RECYCLE指放入WINDOWS回收站,
*DELETETABLES指把数据库中的表一起删除
7.关闭所有文件
CLOSE ALL &&关闭所有文件
二、表的操作命令
1.新建表
CREATE 成绩&&成绩指表名
2.打开表
USE 成绩&&成绩表名
3.打开表设计器
MODIFY STRUCTURE &&不需要表名,打开当前表的设计器
4.表的记录作命令
1)增加记录
APPEND BLANK &&在表的尾部追加一条空白记录
APPEND &&采用交互方式在表的尾部追加多条记录
INSERT BEFORE &&在当前表的当前记录之前追加一条记录
INSERT BLANK &&在当前表的当前记录之后追加一条空记录
COPY TO XS &&XS指新表名,将当前表复制到新表XS中
APPEND FROM XC&&将XC表中的所有记录追加到当前表中,
*注:XC与当前表的结构要完全相同才能使用
2)记录删除
DELETE &&表中删除当前记录(逻辑)
DELETE ALL &&表中所有记录(逻辑)
DELETE FOR 性别="男" &&删除满足条件的记录
*注:第四章如果用到条件都写在FOR 之后
3)记录的恢复
RECALL &&恢复当前录
RECALL &&恢复所有打上删除标记记录
recal for 条件&&恢复满足条件的记录
4)记录修改
EDIT CHANGE BROWS &&方式修改记录
REPLACE 字段名WITH 值&&修改当前记录
REPLACE ALL 字段名WITH 值&&修改表中所有记录
REPLACE 字段名WITH 值FOR 条件&&修满足条件的记录
5)记录显示
LIST &&显示当前表中所有记录
DISPLAY &&显示当前记录
LIST 姓名,性别或LIST FIELDS 姓名,性别等价&&显示指字段LIST FOR 条件&&显示满足条件的记
6)记录定位
A)相对定位
GO TOP
GO BOTTOM
SKIP
B)绝对定位
1
GO 1
GOTO 1
7)记录查找
LOCATE FOR 条件
CONTINUE &&查找下一个满足条件的记录
5.表索引的命令
1)建立单索引(.IDX)
INDEX ON 索引表达式TO 索引名
2)结构复合索引(.CDX)
INDEX ON 学号TAG 学号&&索引类型为普通索引
INDEX ON 学号TAG 学号CANDIDAT DESC &&侯选索引的降序INDEX ON 学号TAG 学号UNIQUE &&唯一索引
3)非构复合索引(.CDX)
INDEX ON 学号TAG 学号OF XM &&普能索引
INDEX ON 学号TAG 学号OF XM UNIQUE &&唯一索引
4)打开索文件
SET INDEX TO 索引文件名
5)设置当前索引
SET ORDER TO 索引名
6)索引定位
SEEK 值
SKIP &&找下一条满足条件的记录
7)删除结构复合索引
DELETE TAG ALL &&所有索引
DELETE TAG XS &&删除指定索引
6.自由表表数据表的转换
ADD TABLE 表名&&将自由表添加到数据库中
REMOVE TABLE 表名&&将数据库表移去变为自由表
7.表之间的临时联系
SET RELATION TO 索引名TO 表名或工作区
8.物理排序
SORT ON 排序字段TO 新表名
SORT TO 新表名ON 排序字段
第二节查询语句
一、查询语句
select 字段名,字段名DISTINCT TOP 1 PERCENT
SUM AVG MAX MIN COUNT 新的字段名
FROM 表名1,表名2 INNER JOIN LEFT JOIN
RIGHT JOIN FULL JOIN ON 联接条件
WHERE 条件AND 联接条件IS NULL IS NOT NULL;
工资BETWEEN 1210 AND 1230
LIKE IN NOT EXISTS ANY ALL SOME
GROUP BY 分组表达式HAVING 限制ORDER BY ;
排序字段INTO TABLE /INTO DBF /INTO CURSOR;
/INTO ARRAY /TO PRINTER /TO FILE
二.几种语句之间转换
1.联接
SELECT STUDENT2.* FROM SC,STUDENT2 WHERE;
STUDENT2.学号=SC.学号AND 成绩<80 ;
ORDER BY 学号INTO DBF T1
2.超联接
SELECT STUDENT2.* FROM SC INNER JOIN ;
STUDENT2 ON STUDENT2.学号=SC.学号;
WHERE 成绩<80 ORDER BY 学号INTO DBF T1
3.嵌套
SELECT STUDENT2.* FROM STUDENT2 WHERE;
学号IN(SELECT 学号FROM SC WHERE 成绩<80);
ORDER BY 学号INTO DBF T1
4.谓词
SELECT STUDENT2.* FROM STUDENT2 WHERE;
EXISTS (SELECT * FROM SC WHERE ;
学号=SC.学号AND 成绩<80) ORDER BY SC.学号;
INTO DBF T1
5.否定等价语句
WHERE 学号NOT IN(SELECT 学号....
WHERE NOT EXISTS (SELECT * FROM SC WHERE;
学号=SC.学号)
6.所有行有都满足等价语句
WHERE 成绩>ALL(SELECT 成绩...)
WHERE 成绩>(SELECT MAX(成绩)
7.其中一行满足等价语句
WHERE 成绩>ANY(SELECT 成绩...)
WHERE 成绩>SOME(SELECT 成绩...)
WHERE 成绩>(SELECT MIN(成绩)
8.注:GROUP BY 与HAVING ,ORDER BY 与TOP 关系
有HAVING 必须GROUP BY ,但是GROUP BY 不;
一定有HAVING
有TOP 必须ORDER BY ,但是ORDER BY 不;
一定有TOP