常用VFP操作命令.
- 格式:doc
- 大小:14.00 KB
- 文档页数:4
程序中常用的命令一、赋值命令命令一:STORE <表达式> TO <内存变量>命令二:<内存变量> = <表达式>功能:对内存变量赋值说明:命令一可以对多个内存变量赋值;命令二只能对一个变量赋值。
例:store 5*2 to a,bc=3*1?a,b,c,5,7*7z=c*a??z??a*b*c,5二、交互式输入命令1、字符串输入命令ACCEPT [提示信息] TO <内存变量>2、表达式输入语句INPUT [提示信息] TO <内存变量>3、单字符输入语句WAIT [提示信息] [TO <内存变量>]说明:系统在执行上述三种命令时会自动停下,等待用户从键盘输入数据到内存变量中,系统接受到后再继续执行。
Input适用于全部类型内存变量,数据输入时需要加定界符,若输入的是表达式,则先计算表达式的值,再将结果赋值给内存变量。
Accept只适用于输入C型数据,并且输入时不用加定界符Wait只能输入一个字符(C型)。
WAIT命令若没有选项,则其功能为:暂停程序执行,显示提示信息“press any key to continue…(按任意键继续…)”,然后等待用户按键。
提示信息是C型,它会在屏幕上原样输出例:input “请输入一个值:” to a1*数值:123;日期:{^1986-12-12}或ctod(“12/12/86”);逻辑型:.T.;字符串:”张三’accept “请输入一字符串:” to a2*字符串:张三wait “你想彻底删除这条记录吗?(y/n)” to askwaitdisplay memo like a*4、定位输入命令命令:@<行,列> say <提示信息> get <变量>READ功能:该命令在屏幕指定的坐标位置上显示提示信息,然后通过READ命令激活GET子句的变量值,然后等待用户对变量的值进行修改。
VF常用命令2007-09-16 19:42!命令功能:执行外部操作命令程序语法:RUN[/N [K> MS-DOSCommand|ProgramName 或者 ![/N [K>MS-DOSCommand|ProgramName$操作符功能:如果一个字符型表达式包含在另一个字符型表达式中返回真值(.T.),否则返回假值(.F.)语法:cSearchFor$cScarchIn(如果在cSearchIn中找到了cSearchFor则返回真)%操作符功能:返回一个数值型表达式除以另一个数值型表达式所得的余数。
语法:被除数%除数&操作符功能:执行宏替换语法:& VarName(内存变量名或数组元素名)?|??命令功能:计算机表达式的值,并输出计算结果。
???命令功能:把结果直接输出到打印机AADD TABLE 命令功能:在当前数据库中添加一个自由表语法:ADD TABLE TableNameALTER TABLE——SQL 命令功能:以编程方式修改表的结构语法:ALTER TABLE TableName1 (表名)ADD|ALTER [COLUMN]FieleName1 (ADD为添加字段名,后为修改字段名。
ADD改为DROP表示删除字段)FieldType[(nFieldSidth[,nPrecision])] (字段的类型、宽度和字段精度)[NULL | NOT NULL] (是否允许字段为空值)[CHECK 1Expression1 [ERROR cMessageText1> (指定了字段的有效性规则)[DEFAULT eExpression1] (指定了字段默认值)[PRIMARY KEY | UNIQUE] (指定了创建主索引标识,索引标识与字段同名)[REFERENCES TableName2 [TAG TagName1> (指定了与之建立永久关系的父表)APPEND 命令功能:在表的末尾添加一个或多个新记录语法:APPEND [BLANK] (添加一个空记录)[IN nWorkArea | cTableAlias] (指定要添加新记录的表所在的工作区|要添加新记录的表的别名)[NOMENU]APPEND FROM 命令功能:从一个文件中读入记录,添加到当前表的尾部。
VFP中常用命令一、数据库的建立、打开、关闭和删除建立数据库:CREATE DATABASE [database name|?]从磁盘中删除数据库:CREATE DATABASE [database name|?]ELETE DATABASE database nameDELETE DATABASE database name |?打开数据库:OPEN DATABASE [EXCLUSIVE|SHARED][NOUPDATE]打开数据库设计器(允许用户按交互方式编辑当前数据库):MODIFY DATABASE [database name|?]指定的数据库database name为当前数据库。
指定当前的数据库:SET DATABASE TO [database name]Database name必须为已经打开的数据库。
如果省略数据库名称database name则不指定当前数据库(没有当前数据库)。
关闭数据库:CLOSE DATABASE [ALL]关闭当前数据库,如果带ALL子句,则关闭所有打开的数据库。
二、数据表和视图的建立、打开、关闭和删除建立数据表(SQL命令):CREATE TABLE | DBF table name (Col_ name1 Type1 [NOT NULL/NULL][{,Col _n ame2 Type2 [NOT NULL/NULL]}...] ) table_ name是所创建的数据表的名字。
Col_name1,Col_name2,...是表中列的名。
Type1, Type2...是相应列的数据类型(VFP的数据类型见表3-9)。
如果说明为NOT NULL,则列中不允许分配空值(这种情况下,列不能包含空值,如果插入空值,将返回错误信息)。
向当前打开的数据库中添加数据表:ADD TABLE table name|?从当前打开的数据库中删除数据表:REMOVE TABLE table name|? [DELETE]如果包含DELETE子句,将从磁盘中删除这个表文件,否则,只从数据库中删除,但文件仍保存在磁盘中。
VFP命令、函数及程序语句大全二、常用函数1、数学函数函数用途ABS(<数值表达式>)绝对值,|x|CEILING(<数值表达式>)>=自变量的最小整数EXP(<数值表达式>)对基E的幂,e=2.71828FLOOR(<数值表达式>)<=自变量的最大整数INT(<数值表达式>)取整(舍尾)自变量LOG(<数值表达式>)自变量的自然对数,ln xLOG10(<数值表达式>)自变量的普通对数,lg xMAX(<表达式1>,<表达式2>)两个值的最大值MIN(<表达式1>,<表达式2>)两个值的最小值MOD(<数值表达式1>,<数值表达式2>)求余数RAND([<数值表达式1>])返回伪随机数ROUND(<数值表达式1>,<数值表达式2>)四舍五入第一个自变量SIGN(<数值表达式>)自变量的符号SQRT(<数值表达式>)平方根(正根)2、字符串操作函数函数用途&<内存变量> 用于代替内存变量内容LEN(<字符串表达式>)返回字符串表达式的字符个数SPACE(<数值表达式>)生成空格SUBSTR(<字符串表达式>,<数值表达式n>[,<数值表达式L>])求子字符串,从指定的字符串表达式第n个开始,总长为L的字符串LOWER(<字符串表达式>)将字符串字母转换成小写字母UPPER(<字符串表达式>)将字符串字母转换成大写字母TRIM(<字符串表达式>)删除字符串尾空格ASC(<字符串表达式>)返回字符串表达式最左边的第一个字符的ASCII码CHR(<数值表达式>)将数值表达式转换成字符AT(<字符串表达式1>,<字符串表达式2>[,<数值表达式n>])确定字符串表达式1在字符串表达式2中的位置,n为字符串表达式第几次出现STR(<数值表达式>[,<数值表达式L>][,<数值表达式n>)将数值转换为字符串,L为数值表达式总长,n为小数位数VAL(<字符串表达式>)将数字字符串转换为数字TYPE(<表达式>)检测表达式值的数据类型LTRIM(<字符串表达式>)删除字符串左部空格RTRIM(<字符串表达式>)删除字符串右部空格LEFT(<字符串表达式>,<数值表达式n>)取字符串左边部分字符,n为返回的字符个数RIGHT(<字符串表达式>,<数值表达式n>)取字符串右边部分字符,n从右边截取字符个数3、表(.dbf)操作函数函数用途BOF([<工作区号或别名>])查表文件开始函数EOF([<工作区号或别名>])表文件结尾测试函数RECNO([<工作区号或别名>])测试当前或指定工作区表的当前记录号DELETED([<工作区号或别名>])记录删除测试函数FILE(<"字符串">)测试文件是否存在函数DBF([<工作区号或别名>])检测表的文件名函数4、日期、时间函数函数用途DATE()查系统当前日期函数TIME([<数值表达式>])查系统当前时间函数YEAR(<日期型表达式>|<日期时间型表达式>)由日期查年函数MONTH(<日期型表达式>|<日期时间型表达式>)从日期查月份函数CMONTH(<日期型表达式>|<日期时间型表达式>)由日期查月份名函数DAY(<日期型表达式>|<日期时间型表达式>)从日期查当月的日函数DOW(<日期型表达式>|<日期时间型表达式>[,<数值表达式>])由日期查星期函数CDOW(<日期型表达式>|<日期时间型表达式>)从日期查星期名函数DTOC(<日期型表达式>|<日期时间型表达式>)日期转换为字符函数CTOD(<字符串表达式>)字符串转换为日期函数CTOT(<字符串表达式>)返回日期时间值函数TTOC(<日期时间型表达式>)返回字符值5、显示、打印位置函数函数用途ROW()判断光标行位置函数COL()判断光标列位置函数INKEY([<数值表达式>])检测用户所击键对应的ASCII码函数,数值表达式以秒为单位等待击键的时间6、其他函数函数用途DISKSPACE()返回默认磁盘驱动器中可用字节数函数OS()检测操作系统名称的函数VERSION()返回VFP版本号的函数VFP命令、函数及程序语句大全(3)三、主要程序语句1、条件判断语句格式:(1)IF <条件><命令语句组>ENDIF说明:如果条件为真,则执行命令语句组中的各语句,否则跳过这些命令语句不执行,而执行ENDIF后的语句。
VFP常用的操作命令总结VFP常用的操作命令总结<范围>子句4种情况:ALL 操作对象为表中全部数据。
NEXT 操作包括当前记录在内的以下n条记录。
RECORD 只操作第n个数据。
REST 操作从当前到结尾的记录。
①显示表中记录LIST、DISPLAYUSE F:\VFP\st.dbf (路径根据不同情况有不同值)LIST [<范围>] [FIELDS] <字段名列表> [FOR<条件>] [OFF]LIST 学号,姓名, 入学成绩FOR 性别.and. 入学成绩>=480DISPLAY FOR 出生时间<="" p="">(LIST为全部显示命令,DISPLAY仅显示当前记录内容。
若DISPLAY中包含ALL或FOR语句,则等同于LIST)。
②修改记录REPLACEREPLACE [<范围>] <字段名1> WITH <表达式1>[ ,<字段名2> WITH <表达式2>] [ FOR <条件>]REPLACE 入学成绩WITH 入学成绩+10 FOR 所在系="计算机"REPLACE ALL 总分WITH 语文+数学+英语REPLACE 补助WITH 补助*1.5 ,分数WITH 分数+10 FOR 性别='男' .AND. 专业='物探'(如果没有ALL或FOR,只更替当前记录)。
③删除记录DELETEDELETE [<范围>] [FOR <条件>]GO 2DELETE (逻辑删除第2条记录)DELETE ALL (逻辑删除全部记录)DELETE FOR 所在系=”中文”.and. .not. 性别DELETE FOR 入学成绩<=470恢复记录:RECALL RECALL [<范围>] [FOR <条件>] RECALL (只恢复当前一条记录)。
Visual FoxPro常用命令分类表数据库文件及记录命令ADD TABLE 在当前数据库中添加一个自由表APPEND 在表的末尾添加一个或多个新记录APPEND FROM ARRAY 由数组添加记录到表中APPEND FROM 从一个文件中读入记录,追加到当前表的尾部APPEND GENERAL 从文件中导入OLE对象并将其放入通用字段中APPEND MEMO 将文本文件的内容复制到备注字段中APPEND PROCEDURES 将文本文件中的存储过程追加到当前数据库中AVERAGE 计算数值表达式或字段的算术平均值BLANK 清除当前记录中所有字段的数据BROWSE 打开浏览窗口,显示当前或选定表的记录CALCULATE 对表中的字段或包含字段的表达式进行财务和统计操作CHANGE 显示要编辑的字段CLOSE 关闭各种类型的文件CLOSE MEMO 关闭一个或多个备注编辑窗口COMPILE DATABASE 编译数据库中的存储过程CONTINUE 继续执行先前的LOCATE命令COPY MEMO 复制当前记录中的指定备注字段的内容到文本文件COPY PROCEDURES 将当前数据库中’的存储过程复制到文本文件COPY STRUCTURE 用当前选择的表结构创建一个新的空自由表COPY STRUCTURE EXTENDED 创建新表,它的字段包含当前选定表的结构信息COPY TO ARRAY 将当前选定表中的数据复制到数组COPY TO 用当前选定表的内容创建新文件COUNT 统计表中记录数目CREATE 生成一个新的VisualFoxPro表CREATE CONNECTION 创建一个命名连接并把它存储在当前数据库中CREATE DATABASE 创建并打开一个数据库CREATE TRIGGER 创建表的删除、插入或更新触发器CREATE VIEW 从VisualFoxPro环境创建视图文件DELETE 给要删除的记录做标记DELETE CONNECTION 从当前数据库中删除一个命名连接DELETE DATABASE 从磁盘上删除数据库DELETE TRIGGER 从当前数据库的表中删除“删除”、“插入”或“更新”触发器│DELETE VIEW 从当前数据库中删除一个SQL视图DISPLAY 在VisualFoxPro主窗口或用户自定义窗口中显示与当前表有关的信息DISPLAY CONNECTIONS 显示当前数据库中与命名连接有关的信息DISPLAY DATABASE 显示有关当前数据库的信息,或当前数据库中的字段、命名连接、表或视图的信息DISPLAY MEMORY 显示内存变量和数组的当前内容DISPLAY PROCEDURES 显示当前数据库中存储过程的名称DISPLAY STRUCTURE 显示一个表文件的结构DISPLAY TABLES 显示包含在当前数据库中所有的表和表的信息DISPLAY VIEWS 显示当前数据库中关于SQL视图的信息以及SQL视图是否基于本地或远程表的信息DROP TABLE 把一个表从数据库中移出,并从磁盘中删除它DROP VIEW 从当前数据库中删除指定的SQL视图EDIT 显示要编辑的字段+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++EXPORT 把VisualFoxPro表中的数据复制到其他格式的文件中FIND 查找记录FLUSH 将对表和索引所作的修改存入磁盘FREE TABLE 删除表中的数据库引用GATHER 将当前选定表中当前记录的数据替换为某个数组、内存变量组或对象中的数据GO|GOTO 将记录指针移动到指定记录上IMPORT 从外部文件导入数据,创建一个VisualFoxPro新表INSERT 插入记录JOIN 将两个数据库文件合并LIST 连续显示表或环境信息LIST CONNECTIONS 连续显示有关当前数据库中命名连接的信息LIST DATABASE 连续显示有关当前数据库的信息LIST PROCEDURES 连续显示当前数据库存储过程的名称LIST TABLES 连续显示包含在当前数据库中的所有表和表的信息LIST VIEWS 连续显示当前数据库中有关SQL视图的信息LOCATE 按顺序搜索表从而找到满足指定逻辑表达式的第一个记录MODIFY CONNECTION 显示连接设计器,让你能够交互地修改当前数据库中已有的命名连接MODIFY DATABASE 打开数据库设计器,让你能够交互地修改当前数据库 MODIFY GENERAL 在编辑窗口中打开当前记录中的通用字段MODIFY MEMO 打开当前记录备注字段的编辑窗口MODIFY PROCEDURE 打开VisualFoxPro文本编辑器,可在其中为当前数据库创建新的存储过程MODIFY STRUCTURE 显示表设计器MODIFY VIEW 显示视图设计器OPEN DATABASE 打开一个数据库PACK 从当前表中永久删除标有删除标记的记录PACK DATABASE 从当前数据库中删除标有删除标记的记录RECALL 恢复所选表中带有删除标记的记录 •REMOVE TABLE 从当前数据库中移去一个表RENAME CONNECTION 重命名当前数据库中的一个命名连接RENAME TABLE 重命名当前数据库中的表RENAME VIEW 重命名当前数据库中的3QL视图REPLACE 更新表的记录内容REPLACE FROM ARRAY 使用内存变量数组中的值更新字段内容SCAN...ENDSCAN 运行扫描数据表文件SCATTER 从当前记录中把数据复制到一组内存变量或数组中SEEK 查找记录命令SELECT 激活指定工作区SET AUTOINCERROR 在自动增加值产生错误时是否更新或插入一个值到记录中SET COLLATE 指定在后续索引和拌序操作中,字符型字段的排序顺序 SET DATABASE 指定当前数据库SET DATASESSION 激活指定的表单数据工作期SET DELETED 指定VisualFoxPro是否处理标有删除标记的记录,以及其他命令是否可以操作它们SET EXCLUSIVE 指定VisualFoxPro在网络上以独占方式还是共享方式打开表文件SET FIELDS 指定可以访问表中的哪些字段SET FILTER 指定访问当前表中记录时必须满足的条件SET INDEX 打开一个或多个索引文件,供当前表使用;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++SET KEY 根据索引关键字,指定访问记录的范围SET LOCK 激活或废止在某些命令中的自动文件锁定SET MULTILOCKS 决定能否使用LOOK()或RLOCK()锁定多个记录SET NEAR FIND或SEEK查找记录不成功时,确定记录指针停留的位置 SET NOCPTRANS 防止把已打开表中的选定字段转换到另一个代码页SET NULL 确定ATLTERTABLE、CREATETABLE和INSERT-SQL命令如何处理null值SET NULLDISPLAY 指定null值显示时对应的字符中SET RELATION 在两个打开的表之间建立关系SET RELATIONOFF 解除当前选定工作区中父表与相关子表之间已建立的关系SET REPROCESS 指定一次锁定尝试不成功后,VisualFoxPro对文件或记录再次尝试加锁的次数或时间SET SKIP 创建表与表之间的一对多关系SET TABLEVALIDATE 指定一个表的执行级别SET WINDOW OF MEMO 设置备注字段使用的窗口SKIP 使记录指针在表中向前移动或向后移动SUM 对当前选定表的指定数值字段或全部数值字段进行求和TOTAL 计算当前选定表中数值字段的总和UPDATE 更新数据库文件的记录USE 打开一个表及其相关索引文件,或打开一个SQL视图VALIDATE DATABASE 保证当前数据库中表和索引位置的正确性ZAP 从表中删除所有记桌,只留下表的结构索引及排序命令COPY INDEXES 从单项索引.IDX文件创建复合索引标识COPY TAG 根据复合索引文件的标识创建单项索引(.IDX)文件DELETE TAG 从复合索引(.CDX)文件中删除标识INDEX 创建一个索引文件,利用该文件可以按某种逻辑顺序显示和访问表记录REINDEX 重整索引SET ORDER 指定表的主控索引文件或标识SET UNIQUE 指定具有重复索引关键字的记录是否保留在索引文件中SORT 对当前选定表进行捧序,井将捧过序的记录输出到新表中Visual FoxPro环境设定命令CREATE COLOR SET 从当前颜色设置中创建一个颜色集合DISPLAY STATUS 显示VisualFoxPro环境的状态SET ANSI 确定VisualFoxProSQL命令中如何用操作符":"对不同长度字符串进行比较SET ASSERTS 指定ASSERT命令是否被忽略SET AUTO SAVE 当退出READ命令或返回到命令窗口时,决定V FP是否把数据缓冲区中的数据保存到磁盘上去SET BELL 关掉或打开计算机铃声,并设置铃声属性SET BLOCKSIZE 指定VisualFoxPro如何为保存备注字段分配磁盘空间SET BORDER 指定当在"浏览"窗口中定位到一个文本框时,是否显示输入法生成器SET BRSTATUS 设定浏览窗口的状态行SET CARRY 决定使用INSERT、APPEND和BROWSE命令创建新记录时,是否将当前记录数据复制到新记录中SET CLEAR 设置清除方法SET CLOCK 决定VisualFoxPro是否显示系统时钟,也可以指定系统时钟在VisualFoxPro主窗中的位置SET COLOR OF 设定颜色对的组合SET COLOR OF SCHEME 设定调色板的颜色组合SET COLOR SET 设定颜色集的组合SET COLOR TO 改变屏幕颜色+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++SET 设定命令SET COMPATIBLE 设置与其他Xbase语言的兼容性SET CONFIRM 指定是否可以用在文本框中键入最后一个字符的方法退出文本框SET CONSOLE 激活或废止从程序中向VisualFoxPro主窗口或活动的用户自定义窗口的输出SET COVERAGE 开启或关闭编辑日志,或指定一个文本文件,编辑日志的所有信息将输出到其中SET CPCOMPILE 指定编译程序的代码页SET CPDIALOG 指定打开表时是否显示"代码页"对话框SET CURRENCY 定义货币符号,并且指定货币符号在数值、货币、浮点数和双精度数表达式中的显示位置SET CURSOR 确定在VisualFoxPro等待输入时,是否显示插入点SET DEBUG 设置调试模式SET DEBUGOUT 将调试结果输出到一个文件SET DECIMALS 指定数值表达式中的小数点位数SET DEFAULT 指定默认的驱动器、目录或文件夹SET DELLMITERS 设定分割字符SET DEVELOPMENT 使Visual FoxPro在运行程序时,对目标文件的编译日期时间与程序的创建日期时间进行比较SET DEVICE 将@…SAY的输出结果定向到屏幕、打印机或文件SET DISPLAY 设置显示模式SET DOHISTORY 设定取得运行中程序的状态SET ENGINEBEHAVIOR 允许SQL数据引擎兼容VisualFoxPr07.0或VisualFoxpr08.0SET ESCAPE 决定是否可以通过按Ese键中断程序和命令的运行SET EXACT 指定比较不同长度两个字符串时,VisualFoxPro使用的规则SET FIXED 指定在显示数值时小数位数是否固定SET FULLPATH 指定CDX()、DBP()、MDX()和NDX()等函数是否返回文件名的路径SET FUNCTION 给功能键或组合键分配表达式(键盘宏)SET HEADINGS 指定用TYPE显示文件内容时,是否显示字段的列标头,并指定是否包含文件信息SET HELP 激活或废止VisualFoxPro联机帮助或指定的帮助文件.SET INTENSITY 设置屏幕反白模式SET KEYCOMP 控制VisualFoxPro的键击定位SET LOGERRORS 决定VisualFoxPro是否将编译错误信息送入文本文件SET MACKEY 指定显示"宏键定义"对话框的单个键或组合键SET MEMOWIDTH 指定备注字段和字符表达式的显示宽度SET MESSAGE 定义在Visual FoxPro主窗口或图形状态栏中显示的信息,或者指定有关用户自定义菜单栏和菜单命令的信息位置SET NOTIFY 确定是否显示某种系统信息SET ODOMETER 对处理记录的各命令指定记录计数器的报告间隔SET OLEOBJECT VisualFoxPro找不到对象时,指定是否在WindowsRegistry中查找SET OPTIMIZE 启用或废止Rushmore优化SET PALETI~ 指定是否使用默认的调色板SET PATH 指定查找文件的路径SET POINT 显示数值表达式或货币表达式时,确定所用小数点字符SET RESOURCE 更新资源文件或指定资源文件SET SAFETY 设定确认模式SET SEPARATOR 设置千位分隔符号SET SPACE 使用?或??命令时,确定字段或表达式之间是否显示空格SET STATUS BAR 显示或删除图形状态栏SET STATUS 显示或移去基于字符的状态栏+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++SET SYSFORMATS 指定是否用当前W'mdows系统设置值更新VisualFoxPro系统设置SET SYSMENU 在程序运行期间,启用或废止VisualFoxPro系统菜单栏,并对其重新配置SET TALK 决定VisualFoxPro是否显示命令结果SET TEXTMERGE 指定是否对文本合并分隔符括起的字段、内存变量、数组元素、函数或表达式进行计算SET TEXTMERGE DELIMITERS 指定文本合并分隔符SET TOPIC 指定激活VisualFoxPro帮助系统时,要打开的帮助主题SET TOPIC ID 指定激活Visual FoxPro帮助系统时要显示的帮助主题。
VF6.0常用命令一、基本命令APPEND 在表的末尾添加一个或多个新记录APPEND FROM 从一个文件中读入记录,追加到当前表的尾部AVERAGE 计算数值表达式或字段的算术平均值BROWSE 打开浏览窗口,显示当前或选定表的记录CHANGE 显示要编辑的字段CLOSE 关闭各种类型的文件COPY STRUCTURE 用当前选择的表结构创建一个新的空自由表COPY TO ARRAY 将当前选定表中的数据复制到数组COPY TO 用当前选定表的内容创建新文件COUNT 统计表中记录数目CREATE 生成一个新的VisualFoxPro表CREATE DATABASE 创建并打开一个数据库DELETE 给要删除的记录做标记DELETE DATABASE 从磁盘上删除数据库DELETE VIEW 从当前数据库中删除一个SQL视图DISPLAY 在VisualFoxPro主窗口或用户自定义窗口中显示与当前表有关的信息DISPLAY DATABASE 显示有关当前数据库的信息,或当前数据库中的字段、命名连接、表或视图的信息DISPLAY MEMORY 显示内存变量和数组的当前内容DISPLAY STRUCTURE 显示一个表文件的结构DISPLAY VIEWS 显示当前数据库中关于SQL视图的信息以及SQL视图是否基于本地或远程表的信息DROP TABLE 把一个表从数据库中移出,并从磁盘中删除它DROP VIEW 从当前数据库中删除指定的SQL视图FIND 查找记录GO|GOTO 将记录指针移动到指定记录上INSERT 插入记录JOIN 将两个数据库文件合并LIST 连续显示表或环境信息LIST DATABASE 连续显示有关当前数据库的信息LOCATE 按顺序搜索表从而找到满足指定逻辑表达式的第一个记录MODIFY DATABASE 打开数据库设计器,让你能够交互地修改当前数据库MODIFY STRUCTURE 显示表设计器MODIFY VIEW 显示视图设计器OPEN DATABASE 打开一个数据库PACK 从当前表中永久删除标有删除标记的记录RECALL 恢复所选表中带有删除标记的记录SCAN...ENDSCAN 运行扫描数据表文件SCATTER 从当前记录中把数据复制到一组内存变量或数组中SEEK 查找记录命令SELECT 激活指定工作区SET DELETED 指定VisualFoxPro是否处理标有删除标记的记录,以及其他命令是否可以操作它们SET INDEX 打开一个或多个索引文件,供当前表使用;SET RELATION 在两个打开的表之间建立关系SKIP 使记录指针在表中向前移动或向后移动SUM 对当前选定表的指定数值字段或全部数值字段进行求和TOTAL 计算当前选定表中数值字段的总和UPDATE 更新数据库文件的记录USE 打开一个表及其相关索引文件,或打开一个SQL 视图ZAP 从表中删除所有记桌,只留下表的结构二、索引及排序命令COPY INDEXES 从单项索引.IDX文件创建复合索引标识DELETE TAG 从复合索引(.CDX)文件中删除标识INDEX 创建一个索引文件,利用该文件可以按某种逻辑顺序显示和访问表记录SET ORDER 指定表的主控索引文件或标识SORT 对当前选定表进行捧序,井将捧过序的记录输出到新表中三、Visual FoxPro环境设定命令DISPLAY STATUS 显示VisualFoxPro环境的状态四、SET 设定命令SET CONSOLE 激活或废止从程序中向VisualFoxPro 主窗口或活动的用户自定义窗口的输出SET DEFAULT 指定默认的驱动器、目录或文件夹SET DEVICE 将@…SAY的输出结果定向到屏幕、打印机或文件SET EXACT 指定比较不同长度两个字符串时,VisualFoxPro使用的规则SET PATH 指定查找文件的路径SET SAFETY 设定确认模式SET TALK 决定VisualFoxPro是否显示命令结果五、Visual FoxPro文件管理命令COPY FILE 复制任何类型的文件DELETE FILE 从磁盘上删除文件RENAME 把文件名称更改为一个新名称TYPE 显示文件的内容六、Visual FoxPro输入输出命令?|?? 计算表达式的值,并输出计算结果\|\\ 文字直接输出命令CLEAR 从内存中释放指定项CREATE FORM 打开表单设计器DIR或DIRECTORY 显示目录或文件夹中文件的信息DO FORM 运行用表单设计器创建的、编译过的表单或表单集INPUT 由用户输入数据MODIFY FORM 打开表单设计器,从中可以修改或创建一个表单MODIFY QUERY 打开查询设计器,从中可以修改或创建一个查询MODIFY SCREEN 打开表单设计器READ 读取已建立的对象七、Visual FoxPro菜单命令DEFINE MENU 创建菜单栏DEFINE PAD 在用户自定义菜单栏或Ⅵsu81FoxPro系统菜单栏上创建一个菜单标题MENU 建立菜单MENU TO 启动菜单MODIFY MENU 打开菜单设计器,从中可以修改或创建菜单系统八、Visual FoxPro打印命令MODIFY REPORT 打开报表设计器,从中可以修改或创建一个报表SET PRINTER 打开或者关闭向打印机的输出,或将结果输出到一个文件、端口九、Visual FoxPro程序管理命令&& 标明程序文件中非执行的内部注释的开始* 标明程序文件中非执行的注释行的开始CANCEL 结束当前VisualFoxPro程序的执行DECLARE 创建一维或二维数组DIMENSION 创建一维或二维内存变量数组 ' DOCASE...ENDCASE 分支判断命令DO 执行一个VisualFoxPro程序或过程DOWHILE...ENDDO 循环语句EXIT 从DOWHILE、FOR或SCAN循环中退出FOR...ENDFOR 循环语句IF…ENDIF 判断语句MODIFY COMMAND 打开一个编辑窗口,从中可以修改或创建程序文件PARAMETERS 将调用程序传来的数据赋值给私有内存变量或数组PRIVATE 在当前程序中隐藏指定的、在调用程序中定义的内存变量或数组PROCEDURE 用在程序文件中标识一个过程的开始PUBLIC 定义全局内存变量或数组QUIT 结束当前VisualFoxPro工作期,并将控制权返回给操作系统RELEASE 从内存中删除内存变量和数组RESTORE FROM 恢复保存在内存变量文件或备注字段中的内存变量和内存变量数组,并把它们放回到内存中RETURN 将程序控制返回给调用程序SAVE TO 把当前内存变量和数组保存到内存变量文件或备注字段中SET PROCEDURE 打开过程文件WAIT 显示信息并暂停VisualFoxPro的执行,按某个键或单击鼠标后继续执行十、Visual FoxPro日期及时间命令SET DATE 指定日期表达式和日期时间表达式的显示格式十一、Visual FoxProSQL命令ALTER TABLE-SQL 以编程方式修改表的结构DELETE-SQL 给要删除的记录做标记INSERT-SQL 在表尾追加一个包含指定字段值的记录SELECT-SQL 从一个或多个表中检索数据UPDATE-SQL 以新值更新表中的记录十二、Visual FoxPro类及程序库命令DEFINE CLASS 创建一个用户自定义类或子类,并为创建的类或子类指定属性、事件和方法DISPLAY OBJECTS 显示有关一个对象或一组对象的信息MODIFY CLASS 打开类设计器,让用户修改已有的类定义或创建新的类定义十三、Visual FoxPro项目文件及其他命令MODIFY PROJECT 打开项目管理器,从中可以修改或创建一个项目文件。
vf常用命令vf常用命令注意:以下给大家列出的命令只是简单写了常用格式,其他使用方法请参考教材对应的描述或我课件中的例题。
重点命令:1、打开表命令:USE 表文件名教材2、关闭表命令:USE 、CLOSE ALL3、记录指针定位命令:GO 数值表达式(绝对移动)、SKIP(相对移动)4、替换(修改)记录命令:REPLACE 字段1 WITH 表达式1,字段2 WITH 表达式2……[范围][FOR<条件>]5、复制表命令:COPY TO 新文件名[FOR〈条件〉][范围]复制表结构命令:COPY STRU TO 新表文件名[FIEL 〈字段名表〉]6、建立索引命令:INDEX ON 关键字段TO 单索引文件名INDEX ON 关键字段TAG 索引标识名7、查询命令:(1)条件查询:LOCA TE FOR 〈条件〉继续查找命令:CONTINUE(2)索引查询:FIND 字符表达式SEEK 表达式继续查找命令:SKIP8、选择工作区命令:SELE 工作区号|别名9、建立表之间的关联命令:SET RELATION TO 关联表达式INTO 别名10、表的更新命令:参考我的课件第三章第五节关于表的更新部分UPDATE ON 关键字段FROM 别名REPLACE 字段1 WITH 表达式1,字段2 WITH 表达式2 ……[RANDOM] 11、交互式输入命令:(1)INPUT [提示信息] TO 内存变量(2)ACCEPT [提示信息] TO 内存变量13、输出命令:?和??常用命令:1、设置默认路径命令:SET DEFA TO 盘符:\路径2、关闭表命令:CLOSE TABLE,CLEAR ALL3、记录显示命令:LIST/DISP [范围][FOR 〈条件〉]4、追加记录命令:(1)表尾追加:APPEND [BLANK](2)表中插入:INSERT [BEFORE] [BLANK]P81 (3)从其他文件中追加多条记录到当前表:APPEND FROM 文件名[FOR〈条件〉][FIEL <字段名表>]5、删除记录命令:DELE [范围][FOR<条件>]6、彻底删除带标记记录命令:PACK7、取消删除标记命令:RECALL [范围][FOR<条件>]8、物理删除表中所有记录命令:ZAP9、复制任何类型文件:COPY FILE 〈文件名1〉TO 〈文件名2〉10、将单个记录发送到数组:SCA TTER TO 〈数组名〉[FIEL〈字段名表〉]11、将数组中的值发送到当前记录命令:GATHER FROM 数组名12、将表中多条记录传送到数组命令:COPY TO ARRAY 数组名13、将二维数组中的值传送到表中:APPEND FROM ARRAY 数组名14、表的排序命令:SORT ON 〈字段1〉/A|/D,字段2/A|/D to 新表文件名15、打开索引文件命令:SET INDEX TO 索引文件名表16、设置主控索引命令:SET ORDER TO 单索引文件名|TAG 索引标识17、更新索引文件命令:REINDEX18、关闭索引文件:SET INDEX TO 、CLOSE INDEX、CLOSE ALL、CLEAR ALL、USE P9219、删除索引标识命令:DELE TAG 索引标识名删除单索引文件命令:DELE FILE 单索引文件名20、表的浏览命令:BROWSE21、记录的过滤命令:SET FILTER TO 条件22、字段的过滤命令:SET FIELDSS TO 字段名表23、表之间的连接命令:JOIN WITH 别名TO 新表文件名FOR 条件24、设置一对多关系命令:SET SKIP TO 别名25、数据库相关命令:打开:OPEN DATA 数据库名新建:CREAT DATA 数据库名修改:MODI DA TE 数据库名关闭:CLOSE DATA、CLOSE DA TA ALL、CLOSE ALL、CLEAR ALL设置当前数据库命令:SET DA TA TO 数据库名26、程序相关命令:建立/修改程序:MODI COMMAND 程序文件名运行程序:DO 程序文件名27、内存变量/数组赋值命令:=、STORE28、交互式输入命令:@行,列SAY 表达式GET 变量29、文本输出命令:TEXT〈输出显示内容〉ENDTEXT30、终止程序执行命令:CANCEL、QUIT、RETURN31、清除主屏幕命令:CLEAR32、系统设置命令:(1)设置精确比较命令:SET EXACT ON/OFF(2)设置删除标记命令:SET DELE ON/OFFVF常用命令,大家有兴趣的来看看VF常用命令和程序命令一、主要命令:1、CREATE作用:建立一个新的表。
vfp find命令用法及参数Visual FoxPro(VFP)是一种数据库管理系统和编程语言。
FIND 命令用于在Visual FoxPro 中执行查找操作,查找表中符合指定条件的记录。
以下是FIND 命令的基本用法和参数说明:基本用法:FIND FOR <condition>参数说明:•<condition>: 指定查找的条件,通常是一个逻辑表达式。
示例:USE Customer && 打开名为Customer 的表FIND FOR Country = "USA" && 查找Country 列中值为"USA" 的记录IF FOUND()? "记录找到!"ELSE? "记录未找到!"ENDIF常见用法和参数:1.基本查找:FIND FOR LastName = "Smith"2.复合条件查找:FIND FOR City = "New York" AND State = "NY"3.使用通配符进行模糊查找:FIND FOR LIKE(LastName, "Sm*")4.区分大小写的查找:FIND CASESENSITIVE FOR UPPER(LastName) = "SMITH"5.查找第一个匹配项:FIND FIRST LastName = "Smith"6.查找最后一个匹配项:FIND LAST LastName = "Smith"7.查找下一个匹配项:SKIP 1 IN Customer && 移动到下一条记录FIND NEXT LastName = "Smith"8.查找前一个匹配项:SKIP -1 IN Customer && 移动到前一条记录FIND PREVIOUS LastName = "Smith"9.查找全部匹配项:SCAN FOR City = "Seattle"? CompanyNameENDSCAN注意事项:•FIND 命令通常与USE 命令一起使用,确保已打开目标表。
VF常用命令和函数大全一、主要命令:一、主要命令:1、CREATE作用:建立一个新的表。
格式:CREATE [<文件>|?](注意,命令字符可取前面四个字符,后面可省略不写,下同;中括号表示其中的参数是可选的;|管道符号表示两个参数只能选择一个,不能同时选择,下同。
)说明:文件指建立以.dbf为扩展名的VFP数据库文件,在命令后面加上一个问号表示系统会弹出对话框,要求用户输入想要建立的表名。
在命令中不加文件名或问号系统也会弹出对话框,要求用户输入想要建立的表名。
2、MODIFY STRUCTURE作用:显示表文件结构,并允许修改此表的结构。
格式:MODIFY STRUCTURE说明:只有在用USE命令打开表文件以后,才能显示或修改表文件的结构。
3、APPEND作用:在当前表的尾部(无论表中有无记录)追加记录(当前表指当前正使用的表)。
格式:APPEND [BLANK]说明:在APPEND命令后面加上BLANK参数表示在当前表的尾部添加一条空白记录。
无BLANK参数时,表示在当前表的尾部添加一条记录并要求用户输入相应的字段内容。
4、INSERT作用:在表文件中间插入一个新记录。
格式:INSERT [BEFORE] [BLANK]说明:INSERT 在当前记录后插入一记录;INSERT BEFORE 在当前记录前插入一记录;INSERT BEFORE BLANK 在当前记录前插入一空记录。
5、BROWSE作用:主要用于打开浏览窗口,查阅表文件并同时进行修改。
格式:BROWSE说明:6、USE作用:打开和关闭表文件。
格式:USE [<文件名>]USE说明:前一个命令用来打开<文件名>指定的表文件,该表如有备注型字段,则同时打开相应的备注文件(.fpt文件);后一个命令关闭当前打开的表文件。
7、LIST和DISPLAY作用:显示表(.dbf)的内容、结构或状态。
格式:LIST|DISP [OFF] [<范围>] [FIELDS] <表达式表> [WHILE <条件>] [FOR <条件>] [TO PRINT|TO FILE <文件>]LIST|DISPLAY STRUCTURE TO PRINT|TO FILE <文件>]LIST|DISPLAY STATUS [TO PRINT|TO FILE <文件>]说明:命令带OFF参数表示不显示记录号,范围指定对哪些记录进行操作,范围包括: RECORD n第几号记录、NEXT n 当前记录开始的几个记录、REST 自当前记录开始至文件末尾的所有记录、ALL所有的记录。
VF常用命令2007-09-16 19:42!命令功能:执行外部操作命令程序语法:RUN[/N [K> MS-DOSCommand|ProgramName 或者 ![/N [K>MS-DOSCommand|ProgramName$操作符功能:如果一个字符型表达式包含在另一个字符型表达式中返回真值(.T.),否则返回假值(.F.)语法:cSearchFor$cScarchIn(如果在cSearchIn中找到了cSearchFor则返回真)%操作符功能:返回一个数值型表达式除以另一个数值型表达式所得的余数。
语法:被除数%除数&操作符功能:执行宏替换语法:& VarName(内存变量名或数组元素名)?|??命令功能:计算机表达式的值,并输出计算结果。
???命令功能:把结果直接输出到打印机AADD TABLE 命令功能:在当前数据库中添加一个自由表语法:ADD TABLE TableNameALTER TABLE——SQL 命令功能:以编程方式修改表的结构语法:ALTER TABLE TableName1 (表名)ADD|ALTER [COLUMN]FieleName1 (ADD为添加字段名,后为修改字段名。
ADD改为DROP表示删除字段)FieldType[(nFieldSidth[,nPrecision])] (字段的类型、宽度和字段精度)[NULL | NOT NULL] (是否允许字段为空值)[CHECK 1Expression1 [ERROR cMessageText1> (指定了字段的有效性规则)[DEFAULT eExpression1] (指定了字段默认值)[PRIMARY KEY | UNIQUE] (指定了创建主索引标识,索引标识与字段同名)[REFERENCES TableName2 [TAG TagName1> (指定了与之建立永久关系的父表)APPEND 命令功能:在表的末尾添加一个或多个新记录语法:APPEND [BLANK] (添加一个空记录)[IN nWorkArea | cTableAlias] (指定要添加新记录的表所在的工作区|要添加新记录的表的别名)[NOMENU]APPEND FROM 命令功能:从一个文件中读入记录,添加到当前表的尾部。
VFP编程常用命令第1章数据库基础与VFP编程环境基础1.专门的关系运算选择(筛选、过滤):SET FILTER TO <条件>或<命令> for <条件>命令实现。
例:SET FILTER TO 性别="男“SET FILTER TO &&取消选择投影:SET FIELDS TO <字段名表>实现。
SET FIELDS TO 姓名,性别SET FIELDS TO ALL &&取消投影连接(联接,Join) :用命令JOIN或SET RELATION实现。
2.Ctrl+F2可弹出命令窗口3. 默认路径的设置:SET DEFAULT TO D:\WH1234?CURDIR() &&查看当前默认路径4.恢复数据环境CLEAR ALL从内存中移去所有对象,按顺序关闭所有私有数据工作期以及其中的临时表。
CLOSE ALL正确执行后,关闭所有打开的数据库、表以及临时表。
CLEAR PROGRAM清除最近执行程序的程序缓冲区。
第2章Visual FoxPro基础1.日期型数据规定格式:{^yyyy-mm-dd}2.日期时间型数据规定格式:{^yyyy-mm-dd hh:mm:ss}3.(1)内存变量的赋值和输出,可以使用STORE、“=”或“?”命令进行操作完成。
三个命令的格式如下:STORE <表达式> TO <内存变量表><内存变量>=<表达式>? <表达式>(2)如果内存变量与数据表中的字段变量同名时,用户在引用内存变量时,要在其名字前加一个m.,用以强调这一变量是内存变量。
(3)通过LOCAL、PRIVATE、PUBLIC命令规定作用域。
4.系统变量:系统变量名都以下划线开头_screen.fontsize=125.变量的释放:RELEASE 〈内存变量表〉注:〈内存变量表〉中的各个变量用逗号分隔。
建立数据库: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语句。
VFP中常用命令VFP中常用命令一、数据库的建立、打开、关闭和删除建立数据库:CREATE DATABASE [databasename|?]从磁盘中删除数据库:CREATE DATABASE [databasename|?]ELETE DATABASE databasenameDELETE DATABASE databasename|?打开数据库:OPEN DATABASE [EXCLUSIVE|SHARED][NOUPDATE]打开数据库设计器(允许用户按交互方式编辑当前数据库):MODIFY DATABASE [databasename|?]指定的数据库databasename为当前数据库。
指定当前的数据库:S ET 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子句,将从磁盘中删除这个表文件,否则,只从数据库中删除,但文件仍保存在磁盘中。
VFP数据库操作常用命令1,FoxPro文件的主要类型库文件和备注文件 .dbf .fpt程序文件.prg .fxp索引文件.idx .cdx查询文件.qpr屏幕格式文件.scx .sct .spr .spx选单格式文件.mnx .mnt .mpr .mpx报表格式文件.frx .frt标签格式文件.lbx .lbt内存变量文件 .mem视图文件.vue文本文件.txt2,命令中,规定使用的单词叫保留字,保留字大小写随意,并且可以只写前面的四个字母。
命令窗口中,保留字以蓝色显示。
3,表中的字段类型字符型 C 字符串格式:'abc',"abc",[abc]数值型N货币型Y 货币常量格式:$12,$12.68日期型 D 日期型常量:{^2013-1-16},{^2013.1.16},{^2013/1/16},{^2013 1 16} 日期时间型T 日期时间型常量:{^日期,时间},时间格式:8:10:30,20:10:30,8:10:30A,8:10:30AM,8:10:30P,8:10:30PM 逻辑型L 格式:真(.T./.t./.Y./.y.),假(.F./.f./.N./.n.)浮点型 F整型I双精度型 B备注型M通用型G4,各类型数据大小的规定数值型和货币型:同数学中大小日期型和日期时间型:靠后的大逻辑型:真大于假字符型:当set collate to "Machine"(机器顺序)时:字符:空格<数字<大写字母<小写字母汉字:按拼音当set collate to "PinYin"(拼音顺序)时:字符:空格<数字<'a'<'A'<'b'<'B'......汉字:按拼音当set collate to "Stroke"(笔画顺序)时:字符:空格<数字<'a'<'A'<'b'<'B'......汉字:笔画多的大5,字符串大小的规定set exact on 设置为精确比较,比较进行到最长字符串为止set exact off 设置为非精确比较,从左到右,比较到能分辨出大小的某个字符"=":按当前的比较方式比较"= =":精确比较6,数值运算符**或^:乘方运算*:乘法运算/:除运算%:求余运算+:加运算-:减运算7,字符运算符+:将前后两个字符串合并,如"abc "+"def",结果为"abc def"-:将前后两个字符串合并,前字符串尾部的空格会移到结果的后面,如"abc "+"def",结果为"abcdef "8,逻辑运算符.not.或not或!:非.and.或and:与.or.或or:或优先级:非>与>或9,日期表达式日期和日期,日期和数值,日期时间和数值可以加减不能:数值-日期,数值-日期时间,日期时间-日期时间10,查看当前日期date()11,查看当前日期格式set('date')12,设置日期格式set date to 日期格式常用日期格式:american,ansi,mdy,dmy,ymd13,设置年份显示set century on|off显示两位(on),显示四位(off)14,设置年月日之间的分隔符set mark to 分隔符常用:'-',"-",[-]15,显示当前默认目录sys(5)+sys(2003)16,设置默认目录set default to 目录如:set default to d:\driverg一次性,再次进入VFP时无效,在"选项"对话框中可以设置长期有效的默认目录17,改变主窗口的属性主窗口对象:_screen_screen.fontname="黑体"_screen.fontsize=2518,变量的赋值变量=表达式store 表达式to 变量1,变量2,......19,变量的定义普通变量在赋值时被自动定义,数组变量必须先定义后使用dimensionkleclare 数组名(下标上限) 一维数组dimensionkleclare 数组名(下标上限1,下标上限2) 二维数组20,显示变量信息(变量名/类型/值)list memory [like 通配名][to printer][to file 文件名]display memory [like 通配名][to printer][to file 文件名]display和list的区别,当对全表操作时display只显示当前第一条记录,list显示所有记录,相当于display all;当显示的信息超过一页时,display会分页显示,list会将前面的信息滚出屏幕21,清除所有变量(系统变量无法清除)clear memoryrelease all22,清除指定变量release 变量1,变量2,...release all like 通配名release all except 通配名23,建立数据库creat database [数据库(不写时会出现对话框)]在没有指定保存路径的情况下,数据库默认保存位置:c:\program files\microsoft visual studio\vfp9824,打开已经存在的数据库open database [数据库]25,指定当前数据库set database to 数据库名26,向数据库中添加表add table [表]27,从数据库中移走表remove table 表28,关闭数据库close databases 关闭当前数据库close databases all 关闭所有打开的数据库29,删除数据库delete data 住院信息30,建立"患者信息"表create 患者信息31,打开已存在的表use d:\driverg\spk1230.dbfuse spk1230.dbf 在没有指定路径的情况下,默认打开c:\program files\microsoft visual studio\vfp98这个位置的spk1230.dbf表32,定义表的别名use 患者信息alias 病人信息未定义别名时,以表的基本名为别名33,打开表设计器modify structure34,打开数据库设计器modi database 住院信息35,关闭"数据库设计器"close data36,打开表窗口browse [last/edit/change/append]37,表的复制copy to 新表[范围][for 条件][字段s]copy structure to 新表[字段s] 复制当前表的结构产生新表38,根据字段过滤表信息brow for id=10139,选择工作区2select 2/b 工作区可以用区号表示(1,2,..),也可以用别名表示(A,B,..),还可以用工作区中打开的表的别名表示.40,在不同工作区打开不同的表select 1use 患者信息alias hzxxselect 2use 床位分配select 1/select hzxx/select a &&这三条命令是等效的还可以:use 患者信息in 1use 床位分配in 2当use 表in 0 时,指的是未使用的最小工作区41,记录指针recno() 获知当前记录go top或goto top 将指针指向最前面的记录go bottom或goto bottom 将指针指向最后面的记录go 记录号或goto 记录号或记录号skip 将指针后移一个记录skip n 将指针后移n个记录skip -n 将指针前移n个记录42,查看记录go 2 &&记录指针指向2号记录disp 住院号,姓名,b.医生姓名,b.床位号&&显示2号记录的字段值skip 2 &&记录指针下移2位recno() &&显示当前记录的记录号disp 住院号,姓名,b.医生姓名,b.床位号&&显示当前记录的字段值go bottom &&记录指针指向最后一条记录recno()skip &&记录指针下移一位recno()go top &&记录指针指向第一条记录recno()skip -1 &&记录指针上移一位recno()set relation to &&取消关联43,在主窗口中显示记录list 显示所有记录display 显示当前记录list/display [范围(all/next n/rest/record n)] [for<条件>] [字段名表] [off]显示指定范围(全部/当前开始的n条/当前到最后/第n条)并符合条件的字段记录,加off则不显示记录号list all for bs>=80 and js<=80 xm,nl,bs,jsgo 5list next 6 lb,bm,mc 显示第5-10条记录44,在工作区1显示当前工作区部分字段的值select 1list 住院号,姓名,性别,出生日期45,在工作区1显示非当前工作区部分字段的值select 1display 住院号,姓名,性别,出生日期,b.床位号或select 1display 住院号,姓名,性别,出生日期,b->床位号46,插入记录insert 在当前记录之后插入空记录,同时打开表窗口insert blank 在当前记录之后插入空记录,但不打开表窗口insert before 在当前记录之前插入空记录,同时打开表窗口insert before blank 在当前记录之前插入空记录,但不打开表窗口append 打开表窗口添加新纪录append blank 在表的最后添加空记录,但不打开表窗口append from 表1 [for 条件][fields 字段1,字段2,...] 将表1中满足条件的记录添加到当前表,表1无须打开47,删除记录逻辑删除(在记录上做一个删除标记,不是真正的删除)delete [范围][for 条件] 如果没有范围和条件,仅删除当前记录,其delete()为真recall [范围][for 条件] 恢复物理删除pack 物理删除已经逻辑删除的记录zap 物理删除表的全部记录48,替换字段内容replace 字段1 with 表达式1,字段2 with 表达式2,......[范围][for 条件] 对表中指定范围内满足条件的记录进行替换,如果没有范围和条件,只替换当前记录49,字段和变量之间值的传递scatter 字段s to 数组名/memvar 将当前记录的各字段放到指定数组/同名变量中,数组不用预先定义scatter 字段s like 通配名to 数组名/memvarscatter 字段s except 通配名to 数组名/memvar当存在同名变量时,直接写出名称表示字段,'m.名称'或者'm->名称'表示变量gather from 数组名/memvar 字段s 将数组/同名变量中的元素依次放到当前记录的字段中gather from 数组名/memvar 字段s like通配名gather from 数组名/memvar 字段s except 通配名50,过滤器set filter to 条件表中只看到符合条件的记录set filter to 取消过滤,可以看到所有记录set fields to 字段1,字段2,... 表中只看到指定字段set fields off 可以看到所有字段51,排序(对当前表根据要求进行排序,产生一新表)sort to 新表on 字段1[/A(升序,默认)或/D(降序)][/C(忽略大小写)],字段2[/A或/D][/C],...[ascending或descending(对未指定排序的字段而言)][范围][for 条件][字段s]52,索引索引得到的记录顺序放在索引文件中,只有一个索引的文件叫单索引文件(.IDX),有多个索引的文件叫复合索引文件(.CDX),当复合索引文件与表同名时,它被称为结构化复合索引文件.如果某个索引文件被指定为当前索引,对表进行处理时,会以索引中的顺序进行.53,索引得到的文件和排序得到的新表的区别新表独立于旧表,不随旧表改变;索引文件依附于表,当索引打开时,会随表内容自动更新;索引文件占用的空间比排序的表小54,索引的建立在单索引文件中(只能以索引项升序建立)index on 索引项to 文件名[unique/candidate]在结构化复合索引文件中index on 索引项tag 索引名[ascending(默认)/descending][unique(唯一索引)/candidate(候选索引)] 在非结构化复合索引文件中index on 索引项tag 索引名of 文件名[ascending(默认)/descending][unique(唯一索引)/candidate(候选索引)] 55,索引的打开和表一起打开use 表index 索引文件1,索引文件2,...表打开后再打开set index to 索引文件1,索引文件2,...[additive(不关闭之前打开的索引,默认关闭)]56,设置当前索引set order to 索引号[ascending/descending]索引号从1开始,顺序:打开的单索引文件->结构化复合索引文件->打开的非结构化复合索引文件set order to [tag] 索引名[ascending/descending]set order to 或set order to 0 表示不指定当前索引order()函数可以得到当前索引的索引名57,重新索引reindex 对所有打开的索引进行重新索引58,关闭索引close indexes 或set index to59,索引的删除结构化复合索引文件delete tag 索引名1,索引名2,...delete tag all非结构化复合索引文件(索引要打开)delete tag 索引名1 of 文件名,索引名2 of 文件名,......delete tag all of 文件名单索引文件(索引要关闭)直接在文件夹窗口删除60,记录查找一般查找locate for 条件[范围] 从整个表中找出符合条件的第一个记录,但不会自动显示该记录.查找下一个continue.索引查找seek 索引项值根据当前索引,找出指定索引项值的第一个记录,比一般查找快.查找下一个skip61,关联父表记录指针改变时,会引起子表记录指针的改变.两表关联必须要有关联依据(共有字段),且子表以关联依据为索引项建立了索引,并设为当前索引.62,建立关联(当前工作区为父表工作区)set relation to 关联依据 1 into 子表1所在工作区,关联依据 2 into 子表2所在工作区,...[additive(不取消父表和其他子表的关联,默认取消)]63,取消关联set relation to 取消所有关联set relation off into 工作区取消父表与指定工作区中的子表的关联64,设置一对多关联建立关联后加上:set skip to 子表1所在工作区,子表2所在工作区,...65,取消一对多关联set skip to66,建立临时性关联(一对一)select 2use 床位分配index on 住院号to syselect 1use 患者信息set relation on 住院号into blist 住院号,姓名,性别,出生日期,b->床位号67,建立临时性关联(一对多)select 2use 住院费用index on 住院号to syselect 1use 患者信息set relation on 住院号into bset skip to blist 住院号,姓名,性别,出生日期,b->费用类别68,将两表以关键字段相等为条件连接成独立的新表select 2use 床位分配select 1use 患者信息join with b to 患者床位for 住院号=b.住院号fields 住院号,姓名,住院科室,诊断,b.床位号,b.医生姓名select 0use 患者床位browse69,使用"住院费用"表的"费用小结"字段更新"患者费用合计"表中的"费用合计"字段select 2use 住院费用index on 住院号to syselect 1use 患者费用合计set order to tag syupdate on 住院号from 住院费用replace 费用合计with 费用合计+b.费用小结random &&按住院号更新费用合计字段值browse70,数据统计记录数统计count [to 内存变量][范围][for 条件]求和sum [字段1,字段2,...][to 变量1,变量2,...][范围][for 条件]求平均值average [字段1,字段2,...][to 变量1,变量2,...][范围][for 条件]分类汇总total on 分类依据to 新表[字段s][范围][for 条件]综合统计calculate 统计项目1,统计项目2,...[to 变量1,变量2,...][范围][for 条件]统计项目:cnt()--统计记录个数;sum()--求和统计;avg()--求平均值统计;max()--求指定字段中的最大值;min()--求指定字段中的最小值71,SQL语句当一个命令太长需要换行输入时,应在行后面加上分号再回车例:查看学生表中的学号select 学号from 学生表查看学生表中的内容select * from 学生表查看学生表中年龄在18岁以上的学生信息select * from 学生表where 年龄>18显示借过书的学生学号(去重)select distinct 学号from 借阅表显示三年后学生的年龄(别名)select 学号,姓名,年龄+3 as 三年后年龄from 学生表显示年龄在18和22之间的学生信息select * from 学生表where 年龄>=18 and 年龄<=22select * from 学生表where 年龄between 18 and 22显示年龄不在18和22之间的学生信息select * from 学生表where not(年龄>=18 and 年龄<=22)select * from 学生表where not 年龄between 18 and 22显示学号为"2004003"和"2004006"两位学生的信息select * from 学生表where 学号="2004003" or 学号="2004006"select * from 学生表where 学号in("2004003","2004006")以年龄降序显示学生表的内容select * from 学生表order by 年龄desc显示年龄最大的三位同学信息(top要和order一起使用)select top 3 * from 学生表order by 年龄desc显示前40%的学生信息select top 40 percent * from 学生表order by 年龄学生人数select count(*) from 学生表借过书的学生人数select count(distinct 学号) from 借阅求年龄和select sum(年龄) from 学生表求平均年龄select avg(年龄) from 学生表求最大,最小年龄select max(年龄) min(年龄) from 学生统计每个人的借书本数select 学号,count(*) from 借阅group by 学号显示借书在一本以上的学生学号及借书本数select 学号,count(*) from 借阅group by 学号having count(*)>1显示借书者的学号,姓名,所借书的书号以及借书日期select 学生.学号(两表都有的字段要在前面加上表名),姓名,书号,借阅日期from 学生,借阅where 学生.学号=借阅.学号显示借过书的学生信息select * from 学生where 学号in (select 学号from 借阅)72,将查询结果放到数组中select 命令into array 数组名(不用预先定义)73,将查询结果放到临时表中select 命令into cursor 文件名74,将查询结果放到永久表中select 命令into tabledbf 文件名75,将查询结果放到指定的文本文件中select 命令to file 文件名[additive(查询结果追加到文件后,默认覆盖)]76,将查询结果送到打印机select 命令to printer [prompt(显示打印对话框)]77,将查询结果显示到主窗口select 命令to screen78,视图的创建create view 视图名as SQL语句79,视图的修改modify view 视图80,将视图移除drop view 视图名。
一、主要命令:1、createcreate database 库文件名.dbc―――建立数据库:create table/dbf 表名(各个字段属性)—————建立表create view <视图名> as <select 查询语句>——建立视图执行这个语句时,如果没有打开的数据库,则建立独立的视图,这样的视图不能存储。
2.dropdrop view <视图>————删除视图3、modify structure 作用:显示表文件结构,并允许修改此表的结构。
格式:modify structure说明:只有在用use命令打开表文件以后,才能显示或修改表文件的结构。
4、append作用:在当前表的尾部(无论表中有无记录)追加记录(在当前表指当前正使用的表)。
格式:append [blank]说明:在append命令后面加上blank参数表示在当前表的尾部添加一条空白记录。
无blank参数时,表示在当前表的尾部添加一条记录并要求用户输入相应的字段内容。
5、insertinsert blank before 在当前表的当前记录之前插入一条空白记录insert into 表名[(字段] values(表达式1[,表达式2…])——插入记录insert into 表名from array arrayname | from memvar如带有from memvar子句,则用同名的内存变量给字段赋值。
例:insert into 学生(xh,xm,xb)values(“950106”,“高山”,“男”)6. alter table 表名add 字段名字段类型(字段参数)―――添加字段alter table 表名alter 字段名set check <条件>——为字段添加有效性规则例:alter table 评分alter分数set check 分数>=0 and 分数<=10alter table 表名drop 字段名[alter column字段名type {null | not null}][{,字段名type null | not null}...] [drop 字段名[,字段名[, ...]]例:alter table 歌手add最后得分f(6,2)7、updateupdate <表名> set <字段1=表达式1>,<字段2=表达式2...> where <条件>例: update 产品set 单价=单价*1.088、browse作用:打开一个“浏览”窗口,供用户浏览或修改记录。
创建项目
CREATE PROJECT [ 项目名| ? ]
打开/修改项目
MODIFY PROJECT [ 项目名| ? ]
创建数据库
CREATE DATABASE [ 数据库名| ? ]
打开数据库
OPEN DATABASE [ 数据库文件名| ? ] [ EXCLUSIVE | SHARED ]
[ NOUPDATE ] [ VALIDATE ]
选择当前数据库(仅用于同时打开多个数据库的情况下
SET DATABASE TO [ 数据库名]
修改当前数据库
MODIFY DATABASE [ 数据库名| ? ] [ NOWAIT ] [ NOEDIT ]
数据库的删除
DELETE DATABASE 数据库名| ? [ DELETETABLES ] [ RECYCLE ]
建立数据库表
CREATE 数据库表名
打开数据库表
USE 数据库表名
关闭数据库表
USE 或CLOSE TABLE
修改数据库表的结构
MODIFY STRUCTURE &&需先使用USE命令打开需修改的表
浏览及编辑数据库表中的数据
BROWSE &&使用前用USE命令打开表
添加表记录
APPEND [ BLANK ] &&在表末尾立即输入新记录值
INSERT [ BEFORE ] [ BLANK ] &&在当前记录前/后插入行
逻辑删除表记录
DELETE [ 作用范围] [ For 表达式| While 表达式]
恢复逻辑删除记录
RECALL [ 作用范围] [ For 表达式| While 表达式]
物理删除表记录
PACK
物理删除所有记录
ZAP
修改当前记录
EDIT / CHANGE
修改多个符合条件记录
REPLACE [ 作用范围] 字段名WITH 表达式[ For 表达式]
输出指定条件记录
LIST / DISPLAY [ 字段集合] [ For 表达式] [ To Printer | To File 文件名]
指针跳转至指定行
GOTO / GO 记录号| TOP | BOTTOM
指针向前/向后移动指定步长
SKIP [ 步长]
指针定位至指定条件记录
LOCATE FOR 表达式
CONTINUE
对当前表按特定字段物理排序并输出至新表
SORT TO 新数据表名ON 字段名1[ /A | /D ] [ ,<字段名2> [ /A | /D ]... ] FOR 匹
配条件表达式FIELDS 输出字段名表
对当前表特定字段建立索引并储存于单索引文件中
INDEX ON 字段名TO 文件名.idx [ COMPACT ] [ UNIQUE | CANDIDATE ]
对当前表特定字段建立索引并储存于非结构复合索引文件中
INDEX ON 字段名TAG 索引名OF 文件名.cdx [ DESCENDING ] [ UNIQUE |
CANDIDATE ]
对当前表特定字段建立索引并储存于结构复合索引文件中
INDEX ON 字段名TAG 索引名[ DESCENDING ] [ UNIQUE | CANDIDATE ]
指定/关闭当前表所使用的索引文件
SET INDEX TO [ 索引文件名]
指定当前表按照复合索引文件中的某一索引排序显示
SET ORDER TO 索引号| 索引名[ ASCENDING | DESCENDING ]
利用索引快速定位记录
SEEK 检索表达式[ ORDER 索引号| 索引名] [ ASCENDING | DESCENDING ]
指定当前工作区
SELECT 工作区号| 工作区别名
使用USE命令直接在指定工作区打开表
USE 表名[ IN 工作区号| 工作区别名] [ ALIAS 自定义别名]