vf命令汇总
建立索引命令
只有to是单索引;只有tag是结构化复合索引;有tag和of是非结构化复合索引;默认为普通索引,unique为唯一索引,candidate为候选索引,只有主索引建不了
4
set index to索引列表
打开索引文件
非结构化索引必须在使用前打开索引文件
4
set order to [索引号| [tag]索引名] [ascending | descending]
7
cancel
终止程序运行,清除所有的私有变量,返回命令窗口
7
return [表达式]
结束当前程序的执行,返回到调用它的上级程序,若无上级程序则返回到命令窗口.
exists|not exists:检查在子查询中是否有结果返回,即存在元组或不存在元组
union:集合并运算.
top只能和order by一起使用
5
insert into表名[(字段名,…)] value(表达式列表)
insert into表名from array数组名|from memvar
插入记录
on是4位,off是2位
3
set strictdate to [0|1|2]
设置是否对日期格式进行检查
0不进行严格日期格式检查;1进行严格日期格式检查
3
store <表达式> to <变量名表>
变量赋值命令
将一个值同时赋给多个变量
3
<内存变量>=<表达式>
变量赋值命令
将一个值赋给一个变量
3
dimension|declare <数组名>(<下标上限1>[,<下标上限2>])
vf命令汇总
章节
命令
功能
备注
3
set mark to [日期分隔符]
指定日期分隔符
日期分隔符是字符型,必须加定界符.如:set mark to ‘-’
3
set date to american|dmy|mdy|ymd
设置日期显示格式只列Fra bibliotek了常用选项3
set century on/off
设置年份的位数
格式二:
alter table表名alter[column]字段名[null|not null][set check规则条件error信息] [set default默认值][drop default][drop check]
格式三:
alter table表名[drop[column]字段名] [set check规则条件error信息] [drop check][add primary|unique|foreign key索引表达式tag索引名[for条件]][drop primary|unique|foreign key][rename column字段名to新字段名]
4
delete [for条件]
置删除标记命令
如果不用for短语,则只逻辑删除当前一条记录
4
recall [for条件]
恢复记录
如果不用for短语,则只恢复当前一条记录
4
pack
物理删除有删除标记的记录
将所有有删除标记的记录都彻底删除
4
zap
物理删除表中全部记录
只留表结构,即产生一个空表
4
edit|change
6
create view
新建视图
用设计器建视图
6
create connection
新建连接
在远程视图上用
7
modify command程序文件名
新建或修改程序
7
do程序文件名
运行程序
省略扩展名时寻找文件顺序:.exe(可执行文件)→.app(vf应用程序文件)→.fxp(编译文件)→.prg(源程序文件)
内部联接|左联接|右联接|全联接
on联接条件:公共字段相等
into table:存永久表;
into cursor :存临时表;
into array:存数组中,系统会自动产生指定的数组,若查询结果为一个数据,则一般都存入数组.
嵌套查询:select…from…where公共字段in(select公共字段from…where…)
gather from <数组名>[fields like <通配符>|fields except <通配符>][memo]
数组→表中数据
3
set collate to“<排序次序名>”
设置字符比较次序的命令
“machine”-机器“pinyin”-拼音“stroke”-笔画
3
set exact on|off
between…and…在…之间…
like:字符串匹配运算,’%’表示0个或多个字符,’_’表示一个字符.
不等于用’!=’表示,用否定运算符not写出等价命令
count-计数;sum-求和;avg-平均值;max-最大值;min-最小值:此五个函数只能在select和having后使用,尤其不能在where、order by和group by后使用.
表的定义命令
primary key :主索引
unique:候选索引
foreign key :普通索引
references :建立联系
5
格式一:
alter table表名add|alter[column]字段名类型[宽度[,小数位]][null|not null][check规则条件error信息] [default默认值][primary key|unique]
移去表
将一个数据库表变成一个自由表
4
select工作区号|表别名
指定工作区命令
select 0:选当前没有使用的最小工作区;同一时刻最多允许打开32767个表
4
set relation to索引表达式into工作区号|表别名
建立关联命令(关联即临时联系)
先在一个工作区打开父表,在另一个工作区打开子表,然后在父表所在的工作区用此命令建立关联.
4
create database [数据库名]
新建数据库
不打开数据库设计器,但是数据库处于打开状态
4
open database [数据库名] [exclusive|shared]
打开数据库
只打开数据库,但是数据库设计器不打开exclusive:以独占方式打开数据库
shared:以共享方式打开数据库
4
display分屏显示
3
clear memory
清除所有内存变量
3
release <内存变量名表>
清除指定的内存变量
3
release all [extended]
清除所有的内存变量
3
release all [like <通配符>|except <通配符>]
选用like短语清除与通配符相匹配的内存变量,选用except短语清除与通配符不相匹配的内存变量
3
scatter [fields <字段名表>][memo] to <数组名>[blank]
scatter [fields like <通配符>|fields except <通配符>][memo] to <数组名>[blank]
表中数据→数组
3
gather from <数组名> [fields <字段名表>][memo]
set database to [数据库名]
指定当前数据库
4
modify database [数据库名] [nowait] [noedit]
修改数据库
打开数据库设计器
4
delete database数据库名[deletetables] [recycle]
删除数据库
deletetables:删除数据库中的所含表
定义数组
两个命令功能完全一致
3
?[<表达式表>]
表达式值的显示
换行显示
3
??[<表达式表>]
表达式值的显示
同行显示
3
list|display memory [like <通配符>][to printer|to file <文件名>]
显示内存变量的当前信息,包括变量名\作用域\类型\取值
list连续显示
修改记录
旧版本命令
4
replace字段with表达式[for条件]
成批替换命令
用右侧替换左侧;默认范围next 1 (当前记录);表必须处于打开状态
4
list|display [[fields]字段列表] [for条件] [off]
显示记录
list :连续显示,默认范围all
display :分屏显示,默认范围next 1
where和having的区别:
where:分组之前能定下来的条件
having:分组之后才能定下来的条件
where:不可以使用五个指定函数
having:可以使用五个指定函数
is null:空值.is not null:非空值
any与some是同意,表示子查询中有一条记录使得结果为真,则结果就为真;
all:要求子查询中的所有行都使结果为真时,结果才为真.
可以在有主索引时插入记录
5
update表名set字段名=表达式…where条件
更新命令
update与locate for的区别:
update: locate for: