VF急用命令表和例子.docx
- 文档编号:11453344
- 上传时间:2023-03-01
- 格式:DOCX
- 页数:12
- 大小:23.25KB
VF急用命令表和例子.docx
《VF急用命令表和例子.docx》由会员分享,可在线阅读,更多相关《VF急用命令表和例子.docx(12页珍藏版)》请在冰豆网上搜索。
VF急用命令表和例子
VF急用命令表和例子
Brow浏览
Pack删除
VF如何替换字段
通过表菜单中的“替换字段”命令,将“学生选课表”中所有学号为“200814”的记录的学号均替换为“200821“
字段是XH
如:
use学生选课表
replaceallxhwith"200821"forxh="200814"
VF中两个表中相对应字段的替换问题
VF中表一有两个字段,其中一个是地区代码,另外一个是就是地区代码的名称。
表二中有若干字段,如学生姓名、考号等,其中一项也是地区代码它和表一地区代码是对应的,如何把表二的地区代码下的具体代码换成表一中相对应的地区代码名称。
selea
use表1
indeon地区代码tag地区代码
seleb
use表2
setrelationto地区代码intoa
replb.地区代码名称witha.地区代码名称fora.地区代码=b.地区代码
vf中把一个数据库中的A字段里的内容与另一个表中A字段里的内容合成一个库
sele表1.A字段,表2.A字段from表1,表2
copyto合并表名
vf数据库字段如何替换
我有两个.dbf文件,比如,学生库吧:
一个库里面只有学号,有成绩字段但都是空的,另一个库里面只有学号和一科的成绩,而且人数也比第一个库少的多,不过多那么一两个学生,第一个库里面没有,如何把第二个库里面的成绩替换到第一个库中相应的字段下?
谢谢
一个库名为08g3jd.dbf,下面有fkh(考号)字段,和fcj,不过第二个都是0,需要输;另一个库名为A3生.dbf下面也有考试号,和fkh里面的内容基本匹配,还有一个生物的成绩,有数据!
如何把生物的成绩弄到第一个库中!
如果没理解错的话,应该是用一个程序,代码如下:
USEA3生
DOWHILENOTEOF()
UPDATE08g3jdSETfcj=A3生.生物的成绩WHEREfkh=A3生.fkh
SKIP
ENDDO
vf 中如何使用update 实现两张表之间字段复制
如表1(学号,姓名,备注),表2(学号,籍贯) 两表的'学号'是关键字
要实现将表2的籍贯字段更新到表1的备注字段
问题补充:
是要批量做的,(即批量复制,一条语句就搞定的那种)
update表1set备注=(select籍贯from表2)where学号=123这样只能一条条做的,太慢
最佳答案:
update表1set备注=表2.籍贯where表1.学号=表2.学号这个简单,SQL语句如下:
UPDATE表1SET备注=(SELECT籍贯FROM表2WHERE表1.学号=表2.学号)WHERE表1.学号IN(SELECT学号FROM表2)这两个都可以实现,在VF中用SQL语言嵌入,第一种是直接的方法,第二种是嵌套
update他的意思就是用其他表的数据更新当前选定工作区中打开的表的数据。
即是说他是引用别的表的数据,而不是当前表的数据。
vf中如何使用update实现两张表之间字段复制
表1学生信息中有xjhbjdm等等表2班级信息中有xjhxj想将表2中班级添加到表1备注一列中,使用函数update学生信息setbjdm=(selectbjfrom班级信息)where学生信息.xjh=班级信息.xjh或者UPDATE学生信息SETbjdm=(SELECTbjFROM班级信息WHERE学生信息.xjh=班级信息.xjh)WHERE学生信息.xjhIN(SELECTxjhFROM班级信息)
问题补充:
使用上述方法均提示函数名缺少)。
vfp中不能这样写.要写成(正确)update学生信息from班级信息set学生信息.bjdm=班级信息.bjwhere学生信息.xjh=班级息.xjh
如:
F:
\表1和F:
\表2,表1中有语文、数学等成绩,表2中有HKYW、HKSX等,其中F:
\表1和F:
\表2都有学籍号相同,把表1中的成绩添加到表2中实现过程:
update表2fromF:
\表1set表2.HKYW=表1.语文where表2.hkkh=表1.hkkh
UPDATE表4fromh:
\表3SET表4.Hksx=表3.数学,表4.hkwl=表3.物理,表4.Hkyw=表3.语文,表4.hkwy=表3.英语,表4.Hkhx=表3.化学,表4.hkls=表3.历史,表4.Hkdl=表3.地理,表4.hkzz=表3.政治,表4.Hksw=表3.生物,表4.hkty=表3.体育where表4.Hkkh=表3.会考证号
VF常用命令
VF常用命令及其格式?
请分类叙述(例如对表文件的.对
(2010-01-2113:
16:
59)
1、打开表命令:
USE表文件名 教材P67
2、关闭表命令:
USE、CLOSEALL P68
3、记录指针定位命令:
GO数值表达式(绝对移动)、SKIP(相对移动) P69-70
4、替换(修改)记录命令:
REPLACE字段1WITH表达式1,字段2WITH表达式2…… [范围][FOR<条件>] P79
5、复制表命令:
COPY TO 新文件名[FOR〈条件〉][范围] P84
复制表结构命令:
COPYSTRUTO新表文件名[FIEL〈字段名表〉] P85
6、建立索引命令:
INDEX ON 关键字段TO 单索引文件名
INDEX ON 关键字段TAG索引标识名 P89
7、查询命令:
(1)条件查询:
LOCATE FOR 〈条件〉 P93
继续查找命令:
CONTINUE P93
(2)索引查询:
FIND字符表达式 P94
SEEK 表达式 P95
继续查找命令:
SKIP P95
8、选择工作区命令:
SELE 工作区号|别名 P105
9、建立表之间的关联命令:
SETRELATION TO关联表达式INTO别名 P108
10、表的更新命令:
参考我的课件第三章第五节关于表的更新部分
UPDATEON关键字段FROM别名REPLACE字段1WITH表达式1,字段2WITH表达式2……[RANDOM]
11、交互式输入命令:
(1)INPUT [提示信息] TO 内存变量 P139
(2)ACCEPT[提示信息] TO内存变量 P139
13、输出命令:
?
和?
?
P141
常用命令:
1、设置默认路径命令:
SET DEFATO 盘符:
\路径
2、关闭表命令:
CLOSETABLE,CLEARALL
3、记录显示命令:
LIST/DISP[范围][FOR〈条件〉] P72
4、追加记录命令:
(1)表尾追加:
APPEND[BLANK] P80
(2)表中插入:
INSERT[BEFORE][BLANK] P81
P81 (3)从其他文件中追加多条记录到当前表:
APPENDFROM文件名[FOR〈条件〉][FIEL<字段名表>]
5、删除记录命令:
DELE[范围][FOR<条件>] P82
6、彻底删除带标记记录命令:
PACK
7、取消删除标记命令:
RECALL[范围][FOR<条件>] P83
8、物理删除表中所有记录命令:
ZAP P84
9、复制任何类型文件:
COPYFILE〈文件名1〉TO〈文件名2〉 P84
10、将单个记录发送到数组:
SCATTERTO〈数组名〉[FIEL〈字段名表〉] P85
11、将数组中的值发送到当前记录命令:
GATHERFROM数组名 P96
12、将表中多条记录传送到数组命令:
COPYTO ARRAY数组名 P86
13、将二维数组中的值传送到表中:
APPENDFROMARRAY数组名 P87
14、表的排序命令:
SORTON〈字段1〉/A|/D,字段2/A|/D to新表文件名 P87
15、打开索引文件命令:
SETINDEXTO索引文件名表 P91
16、设置主控索引命令:
SETORDERTO单索引文件名|TAG索引标识 P91
17、更新索引文件命令:
REINDEX P92
18、关闭索引文件:
SETINDEXTO、CLOSEINDEX、CLOSEALL、CLEARALL、USE P92
19、删除索引标识命令:
DELETAG索引标识名 P92
删除单索引文件命令:
DELEFILE单索引文件名 P92
20、表的浏览命令:
BROWSE P73
21、记录的过滤命令:
SETFILTERTO条件 P76
22、字段的过滤命令:
SETFIELDSSTO字段名表 P77
23、表之间的连接命令:
JOINWITH别名TO新表文件名FOR条件 P107
24、设置一对多关系命令:
SETSKIPTO别名 P109
25、数据库相关命令:
打开:
OPENDATA数据库名 P111
新建:
CREATDATA数据库名 P111
修改:
MODIDATE数据库名
关闭:
CLOSEDATA、CLOSEDATAALL、CLOSEALL、CLEARALL
设置当前数据库命令:
SETDATATO数据库名
26、程序相关命令:
建立/修改程序:
MODICOMMAND程序文件名
运行程序:
DO程序文件名
27、内存变量/数组赋值命令:
=、STORE P138或P38
28、交互式输入命令:
@行,列SAY表达式GET变量 P139
29、文本输出命令:
TEXT
〈输出显示内容〉
ENDTEXT P143
30、终止程序执行命令:
CANCEL、QUIT、RETURN P143
31、清除主屏幕命令:
CLEAR P143
32、系统设置命令:
(1)设置精确比较命令:
SET EXACTON/OFF
(2)设置删除标记命令:
SETDELEON/OFF
增补:
说明
如:
LIST[范围][[FIELDS字段名列表][FOR条件][WHILE条件][OFF][TOPRINT]
常用子句
范围:
表示记录的执行范围,可以是下面几项其中之一:
ALL表示全部记录;
NEXTn表示从当前记录开始的以下n条记录;
RECORDn表示第n号记录;
REST表示从当前记录到最后一条记录。
FIELDS字段名表:
用于指定操作的字段,多个字段时用逗号分隔。
FOR条件:
对满足条件的记录进行操作。
WHILE条件:
当遇到第一个不满足条件的记录时,停止命令执行。
以下命令中,大写的英文词为关键词,必须原样照写。
“常用子句”指以下几个可选子句:
[范围][FIELDS字段名表][FOR条件][WHILE条件]
命令中的“列表”,指用“,”分隔的各项。
如“字段名列表”就是将各个字段名用逗号分隔。
部分英文词的意义:
Databasename数据名tablename数据表名filename文件名 Viewname视图名arrayname数组名
提示:
加下划线的为本课程要求掌握的命令。
一、数据库的建立、打开、关闭和删除
建立数据库:
CREATEDATABASE[databasename|?
]
从磁盘中删除数据库:
DELETE DATABASE databasename|?
打开数据库:
OPENDATABASE[EXCLUSIVE|SHARED][NOUPDATE]
打开数据库设计器(允许用户按交互方式编辑当前数据库):
MODIFYDATABASE [databasename|?
]
指定的数据库databasename为当前数据库。
指定当前的数据库:
SETDATABASETO[databasename]Databasename必须为已经打开的数据库。
如果省略数据库名称databasename,则不指定当前数据库(没有当前数据库)。
关闭数据库:
CLOSEDATABASE[ALL]关闭当前数据库,如果带ALL子句,则关闭所有打开的数据库。
二、数据表和视图的建立、打开、关闭和删除
建立数据表(SQL命令):
CREATETABLE|DBFtablename(Col_name1Type1[NOTNULL/NULL][{,Col_name2Type2[NOTNULL/NULL]}...])
table_name是所创建的数据表的名字。
Col_name1,Col_name2,...是表中列的名。
Type1,Type2...是相应列的数据类型(VFP的数据类型见表3-9)。
如果说明为NOTNULL,则列中不允许分配空值(这种情况下,列不能包含空值,如果插入空值,将返回错误信息)。
向当前打开的数据库中添加数据表:
ADDTABLEtablename|?
从当前打开的数据库中删除数据表:
REMOVETABLEtablename|?
[DELETE] 如果包含DELETE子句,将从磁盘中删除这个表文件,否则,只从数据库中删除,但文件仍保存在磁盘中。
在当前打开的数据库中建立视图:
CREATESQLVIEWviewnameASSELECT…… 其中SELECT……为SELECT语句。
执行这个语句时,如果没有打开的数据库,则建立独立的视图,这样的视图不能存储。
从当前打开的数据库中删除视图:
DELETEVIEWviewname
打开一个表:
USEtablename|?
[IN工作区号]
将当前数据表与另一数据表连接后建立一个新表:
JOINWITH工作区号|表别名TOtablenameFOR条件[FIELDS字段名表]
三、数据表和表结构的编辑、修改
打开浏览窗口(可在其中编辑数据表):
BROWSW(详细格式见P.114~116)
打开并修改数据表中的字段:
(1)CHANGE[FIELDS字段名列表]
(2)EDIT[FIELDS字段名列表]
这两个命令的功能相似,可选子句较多(详见手册)。
数据表改名:
RENAMETABLEtablename1TOtablename2 其中数据表tablename1必须存在且未打开。
视图改名:
RENAMEVIEWviewname1TOviewname2 其中数据表tablename1必须存在且未打开。
修改数据表结构(SQL命令):
ALTERTABLEtablename;
ADD字段名Type[NULL|NOTNULL][,字段名Type[NULL|NOTNULL][ALTERCOLUMN字段名Type{NULL|NOTNULL}][{,字段名TypeNULL|NOTNULL}...][DROP字段名[,字段名[,...]]
将当前表与另一表之间建立关联:
SETRELATIONTO[表达式1INTO工作区号1|表别名1][,表达式2INTO工作区号2|表别名2][,...] 建立关联的两个表必须事先已按关联表达式进行索引排序。
在当前表与另一表之间建立一对多关联:
SETSKIPTO表别名1[,表别名2]
消除当前表与另一表之间的关联:
SETRELATIONOFFINTO工作区号|表别名
四、数据表中数据操作(查询、插入、删除和修改等)
数据查询SELECT语句(SQL命令)格式见教材的有关章节。
这是本课程的重点内容,必须很好地掌握。
更改数据表中的记录:
REPLACE字段1 WITH 表达式1[ADDITIVE][,< [,<字段2>WITH<表达式2>[ADDITIVE],…[FOR条件1][WHILE条件2] 其中的ADDITIVE子句适用于备注字段,表示将表达式的值加在字段的末尾。
用内存数组的值更新数据表中的记录:
REPLACEFROMARRAY数组名[FIELDS字段名列表][常用子句]
用新的值更新表中的记录(SQL命令):
UPDATE[databasename!
]tablename;
SETColumn_1=expression_r1[{Column_2=expression_r2}...][WHERECondition]
用一个表中的数据更新当前指定工作区中打开的表:
UPDATEONfieldnameFROMfilename;
REPLACEfieldname1WITHexpr1
[,fieldname2WITHexpr2[,...]]
给记录加删除标记(SQL命令):
DELETE FROM [databasename!
]tablename[WHERE条件]
给记录加删除标记:
DELETE[范围][FOR条件][WHILE条件][IN工作区号|表别名]
永久删除加了删除标记的记录:
PACK
永久删除打开的数据库中加了删除标记的记录:
PACK DATABASE
去掉删除标记(恢复)RECALL[常用子句]
删除一个表中所有记录(保留表的结构):
ZAP [INtablename|alias]
为数据表文件追加记录:
APPEND[BLANK][IN工作区号|别名]
从另一个文件中提取数据添加到当前数据表的尾部:
APPENDFROMfilename|?
[FIELDS字段名列表][FOR条件] 其中filename所指定的文件可以是数据表、EXCEL电子表格、文本文件等,如果不是数据表,需要其它子句指定格式(详见手册)。
用内存数组的值添加到当前数据表的尾部:
APPENDFROMARRAYarrayname[FOR条件][FIELDS字段名列表]数据中的一行对应一个新记录,一列对应一个字段。
从一个文件输入一个OLE对象放入一个通用(general)字段:
APPENDGENERAL通用字段名[FROMfilename]如果省略子句FROMfilename,则将指定的字段清空。
将一个文本文件的内容拷贝到一个备注字段:
APPENDMEMO备注字段名[FROMfilename][OVERWRITE]如果省略子句FROMfilename,则将指定的字段清空。
插入新记录(在当前记录之前或后插入):
INSERT[BLANK][BEFORE]如不省略BLANK,则插入一个空白记录,且不显示输入窗口。
在表中插入新记录并赋值(SQL命令):
INSERTINTOtablename[(字段1[,字段2,...])]valueS(eexpression_r1[,eexpression_r2,...])或INSERTINTOtablenameFROMARRAYArrayName|FROMMEMVAR如带有FROMMEMVAR子句,则用同名的内存变量给字段赋值。
清除当前记录中字段的数据:
BLANK[常用子句]
移动记录指针:
SKIP[n][IN工作区号|表别名]
五、文件管理(文件和文件夹的复制、创建和删除)
从当前表复制出表或其它类型的文件(表须打开)COPY TO filename[FIELDS字段名列表][常用子句][其它子句] 如果没有指定类型,则复制一个与当前的表相同的数据表。
复制表的结构COPYSTRUCTURETOfilename[FIELDS字段名列表]
复制任何文件:
COPYFILE源文件TO目的文件,如果用此命令复制表,表须关闭
从磁盘上删除任意文件:
(1)ERASEfilename|?
(2)DELETEFILE[filename|?
]
任意文件改名(或文件移动到另一文件夹):
RENAMEfilename1TOfilename2 其中filename1和filename2都可以包含路径。
如二者不在同一文件夹,则将filename1移动到filename2所在的文件夹。
显示一个文件夹中的文件信息:
DIR|DIRECTORY [ONdrive]
从磁盘上删除一个文件夹:
RD|REDIR文件夹名
在磁盘上建立一个文件夹:
MD|MKDIR文件夹名
六、数据的复制与传送
单个记录与数组间的数据传送
当前记录→数组或内存变量:
SCATTER[FIELDS字段名列表][MEMO]TO数组名[BLANK]|MEMVAR[BLANK] 其中[BLANK]表示建立一个空元素的数组。
如果用MEMVAR子句,则表示将各字段的值复制到
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VF 急用 命令 例子