VF命令汇总

  • 格式:doc
  • 大小:41.00 KB
  • 文档页数:5

Visual FoxPro程序设计 表的基本操作命令汇总与相关例题

 指定工作环境:SET DEFAULT TO

 SET DEFAULT TO f:\mydatabase

 建立表结构:CREATE |?

 CREATE 学生(定义字段名、字段类型、字段宽度、小数位、索引、是否允许空值NULL)

 修改表结构:MODIFY STRUCTURE(修改表结构:增加字段、删除字段、修改字段等)

 打开表:USE 表名

(1)

 USE 学生

 USE 学生 IN 0

(2)

 USE 教师 IN 2 与下面两条意思一样

 SELECT 2

 USE教师

(3)

 USE教师 ALIAS teacher

(4)

 USE 学生 ORDER xm &&打开表的同时将主控索引定在姓名上

 关闭表: USE

(1)

 USE

(2)

 USE教师 IN 1

 USE 学生 IN 2

 SELECT 2

 USE IN 1 &&当前在2区,关闭1区中的表

 在表尾增加记录:APPEND [BLANK][FROM]

(1)

 USE 学生

 APPEND

 在表指定位置增加记录INSERT [BLANK][BEFORE]

 (1)

 USE 学生

 GO 3

 INSERT &&将记录加到第三条后

(2)

 USE 学生

 GO 3

 INSERT BEFORE &&将记录加到第三条前

 编辑修改记录:BROWSE/EDIT/CHANGE, REPLACE … WITH …

 按条件浏览记录:LIST/DISPLAY [ALL/NEXT N/RECORD N/REST] FOR/WHILE …

(1)  USE 学生

 LIST

 DISPLAY ALL

(2)

 USE 学生

 LIST RECORD 2

 DISPLAY RECORD 2

(3)

 USE 学生

 GO 3

 DISPLAY REST &&显示第3至第10条

(4)

 USE 学生

 Go 8

 LIST NEXT 2 &&显示第8,9条

(5)

 USE 学生

 LIST FOR RECNO()<5 &&将表中所有记录读出,再从头过滤,只显示记录号小于5的记录

(6)

 LIST WHILE RECNO()<5 &&将表中前5条记录读出,再从头过滤,只显示记录号小于5的记录

(7)

 LIST NEXT 1与 DISPLAY作用相同

 显示表结构:LIST/DISPLAY STRUCTURE

 移动记录指针:

 GO TOP/BOTTOM

 GO N

 SKIP [N]

 删除记录:

 DELETE [ALL/NEXT N/RECORD N/REST] FOR …

 RECALL [ALL/NEXT N/RECORD N/REST] FOR …

 PACK

 ZAP

 复制命令:

 COPY TO…

(1)

 USE 学生

 COPY TO STUDENT

 COPY TO STUDENT RECORD 1 &&复制第一条记录

 COPY TO STUDENT REST &&复制从当前记录指针到末尾的记录

 COPY TO STUDENT FOR 性别=”男” &&复制性别为男的记录

(2) 复制记录的同时复制CDX索引文件

 USE 学生

 3

 COPY TO st1 REST WITH cdx (3)只复制结构中的部分字段

 USE 学生

 COPY STRUCTURE TO st2 FIELDS 学号,姓名,性别

 排序

 SORT TO 文件名 ON 字段名 [/A|/D][/C] ....[FOR…]

(1)

 USE 学生

 SORT TO 学生姓名 ON 姓名

 USE 学生姓名

 LIST

(2)先按性别排序,若性别相同按出生日期降序排,

 USE 学生

 SORT TO 学生性别 ON 性别,出生日期 /D

 USE 学生性别

 LIST

(3)把李姓学生降序排到文件“李学生.DBF”中

 USE 学生

 SORT TO 李学生 ON 姓名/D FOR 姓名=”李”

 USE 李学生

 LIST

(4)只复制部分字段

 USE 学生

 SORT TO 部分学生 ON 姓名/D FIELDS 姓名,出生日期

 USE 部分学生

 LIST

(5)复制后取所有以“姓”开头的字段

 USE 学生

 SORT TO 新学生 ON 姓名 FIELDS LIKE 姓*

 USE 新学生

 LIST

 索引

 建立索引

 INDEX ON TAG [UNIQUE][FOR.. ][ASCENDING/DESCENDING][ADDITIVE][CANDIDATE]

 INDEX ON TAG [OF][A/D]

 INDEX ON TO [UNIQUE][COMPACT][ADDITIVE]

(1) 下列操作建立了四个单索引文件

use 学生

index on 学号 to xh

index on 性别 to xb

index on 入校总分 to rxzf

index on -入校总分 to rxzfd

(2)下列操作建立了六五个索引标记,都存放在“学生.CDX”索引文件中

use 学生 index on 学号 tag xh

index on 姓名 tag xm

index on 性别 tag xb

index on 入校总分 tag rxzf

index on 入校总分 tag rxzfd descending

 设置主控索引

 SET ORDER TO |[N]

(3)对单索引文件,打开表后再打开索引文件

use 学生

brow

set index to xb,xh,rxzf &&打开三个单索引文件,且xb为主控索引文件

brow

set order to 3(set order to rxzf) &&将主控索引定位到rxzf

brow

(4)

use 学生 index xb,xh,rxzf &&打开表的同时打开了三个单索引文件

brow

set order to 3(set order to rxzf) &&将主控索引定位到rxzf

brow(5)对于结构复合索引,当表打开时其索引文件自动打开,只需设置主控索引即可

use 学生

index on 学号 tag xh

index on 姓名 tag xm

index on 性别 tag xb

index on 入校总分 tag rxzf

index on 入校总分 tag rxzfd descending

set order to xb

brow

set order to rxzfd

Brow

Set order to 0 &&关闭主控索引

 索引类型

普通索引

use 学生

index on 学号 tag xh

唯一索引

use 学生

index on 学号 tag xh UNIQUE

候选索引

use 学生

index on 学号 tag xh CANDIDATE

主索引

在数据库中表里面用菜单法建立。

 删除索引

 DELETE TAG ALL

 DELE TAG

 DELE FILE

 关闭索引

 CLOSE INDEX

 SET INDEX TO

 SET ORDER TO 0

 查询

 顺序查询

 LOCATE… FOR/CONTINUE

 索引查询

 SEEK/ FIND

 多表操作

 SELECT |别名

 SET RELATION TO INTO < 别名>

 JOIN WITH

 SELECT 1

 USE 学生名册 ALIAS XSMC

 SELECT 2

 USE 选课表 ORDER 学号 ALIAS XKB

 SELECT 1

 SET RELATION TO 学号 INTO B

 SET SKIP TO B

 LIST 学号,姓名,XKB.课号,XKB.成绩

 SET RELATION TO

 CLOSE DATA

 统计

 COUNT /SUM /AVERAGE /CALCULATE

 函数:

 INT(),MOD(),ROUND(),MAX(),MIN(),RECNO(),BOF(),EOF(),FOUND(),

 AT(),SUBSTR(),LEN(),ALLTRIM(),TRIM(),LOWER(),UPPER(),

 DATE(),YEAR(),STR(),VAL(),DTOC(),DTOS(),CTOD()。。。。。