版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章表的基本操作2.1表的建立与修改2.1.1表结构的建立一、设计表的结构设备表编号名称启用日期价格部门主要设备备注商标016-1车床03/05/9062044.6121.T.Memogen016-2车床01/15/9227132.7321.T.memogen037-2磨床07/21/90241292.1222.T.memogen038-1钻床10/12/895275.0023.F.Memogen100-1微机08/12/978810.0012.T.memoGen101-1复印机06/01/9210305.0112.F.memogen210-1轿车05/08/95151000.0011.F.memoGen标题表字段表数据‘行’为记录该表有8个字段,7条记录表的建立有关命令创建设备表createsb
打开设备表Usesb
浏览、修改记录browse
修改结构Modifystructure
关闭当前表use字段名类型宽度小数位数索引Null字段名字段名用来标识字段,它是一个以字母或汉字开头,长度不超过10的字母、汉字、数字、下划线序列。必须是字母、汉字或者下划线开头,不能包含任何特殊字符,包括标点符号等等字段类型字段宽度和小数位数字段宽度:字段允许存储的最大字节数。例:字段名类型宽度编号字符型5小数位数:只有数值型、浮动型和双精度型才有小数位数。小数点和正负号都必须占一位。例:字段名类型宽度小数位数价格数值型92说明字段价格宽度为9其中整数部分为6位,小数部分为2位,小数点占1位。即:整数6+小数点1+小数位数2=宽度9根据上述约定可以设计出下图所示表结构简明表示方法:SB(编号C(5),名称C(6),启用日期D,价格N(9,2),部门C(C),主要设备L,备注M,商标G)二、建立表结构在建立表结构的时候,应该先设立默认路径:VFP主菜单工具选项文件位置默认目录修改利用表设计器设计表结构表数据的输入备注型数据和通用型数据的输入需要双击打开编辑窗口进行输入,或者使用快捷键Ctrl+PgDn,保存使用关闭按扭或者按Ctrl+W键,放弃保存按Esc或Ctrl+Q通用型数据的输入和修改方法表的打开与关闭命令方式:
格式:USE<表文件名>菜单操作方式、数据工作期表的打开:使用任何一个表以前,都必须首先打开表。功能:打开指定的表文件。参数描述:<表文件名>:指定要打开的表的名称。1、打开表时若表含有备注型字段,则FPT文件也同时被打开。2、若不选择任何参数,表示关闭当前工作区中已打开的表。3、记录指针指向第一个记录,当前记录现在记录指针所指向记录4、应当及时关闭表,保证内存中数据及时保存到表中,缺省<表文件>则表示关闭当前工作区中的表,use表的关闭:应当及时关闭表,保证内存中数据及时保存到表中命令方式格式1:CLEARALL格式2:CLOSEALL格式3:CLOSEDATABASE[ALL]格式4:CLOSETABLES[ALL]通过数据工作期关闭表退出VFP也可以达到关闭表的目的:QUIT表结构的修改1.向导2.表设计器表数据的修改两种记录显示方式:编辑和浏览在浏览窗口追加查看追加方式Append(连续追加)表追加新记录AppendBlank(追加一条)在浏览窗口删除纪录逻辑删除(打删除标记)物理删除(从磁盘删除)利用命令追加记录格式:APPEND[BLANK]
参数描述:[BLANK]:在当前表的末尾添加一条空记录。功能:在表的末尾添加一个或多个新记录。说明:■可以在只有表结构而没有记录的空表中添加记录,也可以在已经录入数据的表中的尾部追加记录;■它可以向当前表的尾部追加一条或多条新记录。省略可选项,则在当前表的尾部追加任意新记录,追加记录的方法及操作与用CREATE命令建立表时输入数据的方法相同■当发出APPEND或APPENDBLANK命令,并且在选定工作区中没有打开的表时,将显示一个“打开”对话框,我们可以在对话框中选择一个要添加记录的表。APPEND命令打开一个编辑窗口,我们可以在其中输入一个或多个新记录。增加新记录后,VFP将自动修改打开的所有索引。通用型字段通用型数据的输入需要双击打开编辑窗口进行输入,或者使用快捷键Ctrl+PgDn,保存使用关闭按扭或者按Ctrl+W键,放弃保存按Esc或Ctrl+Q通用型数据的输入和修改方法系统菜单
查看
插入对象链接嵌入清除方法系统菜单
查看
清除表达式作用:计算、判断和数据类型转换,主要应用于命
令、函数、对话框、控件及其属性中,按需
设计出巧妙的表达式能产生良好的效果。组成:可以是常量、变量、函数和运算符的组合。例如:2*PI()*R用于计算圆面积其中2为常量,PI()为函数,R
为变量表达式的成分常量(固定不变的量)它具有数值型、字符型、日期型等多种数值型常量例:10,-10,2.818,0.2818E1字符型常量日期型和日期时间型常量逻辑型货币型常量(四舍五入到4位)例:‘PC机’,[计算机],”3.14159”严格日期格式:
^YYYY-MM-DD[,][HH:[MM][:SS]][A|P]
SETSTRICTDATETO0{06/30/1999}
{6/30/99}真.T.,.t.和假,Y.,.y.变量(允许变化的量,VFP必须先定义在使用)内存变量用户可以根据需要定义内存变量类型,它的类型取决于首次接受的数据的类型。也就是说,内存变量的定义是通过赋值语句来完成的。它的类型有数值型、字符型、逻辑型、日期型、时间日期型、货币型六种。内存变量名的长度在VisualFoxPro系统中可以达到128个字符,是由字母、数字和下划线组成。内存变量的赋值和输出赋值STORE<表达式>TO<内存变量表><内存变量>=<表达式>输出?|??<表达式>数组字段变量系统变量数组定义:DIMENSION|DECLEAR
数组赋值:数组数组的定义命令格式:DIMENSION|DECLARE<数组名>(<下标1>[,<下标2>])下界为1
最多可以定义65000个数组,最多每个数组可以有65000个数组元素,受实际内存多少限制数组的赋值初值为逻辑值:.F.单个数组元素赋值整个数组赋值二维数组可以用一维数组的方式来访问数组元素数组元素有4个的数组A(2,2)A(4)如果访问A(1,2)等同于访问A(2)字段变量打开的表的每一个字段都是一个字段变量与内存变量类似,字段名就是变量名USEsb
?名称&&SB.DBF打开后记录指针指向第1个记录,显示车床GO5&&将记录指针指向第5个记录(GO命令参阅2.3.1节)?名称系统变量VFP提供的内存变量以下划线开头Eg:_DIARYDATE当前日期_CLIPTEXT剪贴板中的内容例如_CLIPTEXT=’VFP’内存变量的显示命令格式:LIST|DISPLAYMEMORY[LIKE<通配符>][TOPRINTER[PROMPT]|TOFILE<文件名>]例:LISTMEMORYLIKE??内存变量的清除命令格式:RELEASE[<内存变量表>][ALL[LIKE|EXCEPT<通配符>]]CLEAR例:RELEASEA,BRELEASEALLRELEASEALLLIKEA*RELEASEALLEXCEPTA?字符运算:+运算符:连接两个字符串原值连接
-运算符:连接两个字符串,前串空格后移连接日期与日期时间运算日期型+日期+整数当前日期后移整数天,两日期相加没有意义-两日期相减表示相隔天数,日期-整数表示迁移整数天例:setstrictdateto0?{06/30/98}–61&&显示日期为{04/30/98}?{12/31/99}+1&&显示日期为{01/01/00}setcenturyon&&显示世纪
?{12/31/99}+1&&显示日期为{01/01/2000}日期时间型+-表示加减秒数?{09/01/199812:00am}+60函数提供了200余种函数函数的要素函数名起标识作用参数是自变量返回值函数的类型
函数返回值的类型常用函数
数值型函数
字符型函数
日期处理函数
逻辑型函数
其他函数常用字符型函数函数功能例子(注解表示结果)SUBSTR(<字符表达式>,<数值表达式1>[,<数值表达式2>])返回<字符表达式>中第<数值表达式1>位起的长度为<数值表达式2>的子串?SUBSTR("ABCD",2,2)&&"BC"LEFT(<字符表达式>,<数值表达式>)返回<字符表达式>左起<数值表达式>个字符的子串?LEFT("ABCD",2)&&"AB"RIGHT(<字符表达式>,<数值表达式>)返回<字符表达式>右起<数值表达式>个字符的子串?RIGHT("ABCD",2)&&"CD"LEN(<字符表达式>)返回字符串的长度?LEN("ABCD")&&4AT(<字符表达式1>,<字符表达式2>[,<数值表达式>])返回字符串<字符表达式1>在<字符表达式2>中第<数值表达式>次出现的位置?AT("BC","ABCD",1)&&2ALLTRIM(<字符表达式>)删除字符串前导和末尾的空格?ALLTRIM("ABCD")&&"ABCD"SPACE(<数值表达式>)返回<数值表达式>个空格?SPACE(4)&&""UPPER(<字符表达式>)将小写字母转换为大写?UPPER("aBc")&&"ABC"LOWER(<字符表达式>)将大写字母转换为小写?LOWER("aBc")&&"abc"VAL(<字符表达式>)将字符串转换为数值?VAL("3.14")&&3.14STR(<数值表达式1>[,<数值表达式2>[,<数值表达式3>]])将数值<数值表达式1>转换为长度为<数值表达式2>位,具有<数值表达式3>位小数的字符串?STR(3.14,5,1)&&"3.1"CHR(<数值表达式>)从<数值表达式>表示的ASCII码返回字符?CHR(65)&&"A"ASC(<字符表达式>)返回字符的ASCII码值?ASC("A")&&65VFP命令常用子句四中常用命令子句LIST|DISPLAY[[FIELDS]<表达式>][<范围>][FOR<条件>][WHILE<条件>][OFF][TOPRINT[PROMPT]|TOFILE<文件名>]<范围>按行筛选FOR<条件>按行筛选WHILE<条件>按行筛选FIELDS<字段名表>按列筛选Off不显示记录号命令和子句的书写规则命令动词与子句、子句与子句、子句内容的各部分之间必须用空格隔开,但各子句的次序允许任意排列。命令动词与各子句中的保留字可以简写为前4个字符Eg:MODIFYSTRUCTUREMODISTRU一条命令的长度可达8192(8k)个字符命令或函数格式中以“|”分隔的两项表示两者之中只能选择其一;“[]”括起来的部分表示可选项;“<>”括起来的部分表示由用户定义的内容这些符号非命令或函数内容表的维护命令表与表结构的复制复制任何文件COPYFILE<文件名1>TO<文件名2>注:表文件和备注文件要分别复制对已经打开的文件不能复制从表复制出表或其它类型的文件,相当于导出
COPYTO文件名[范围][FOR<条件>][WHILE<条件>]
[FIELDS<字段名表>|FIELDSLIKE<通配符>|FIELDSEXCEPT<通配符>]
[[TYPE][SDF|XLS|DELIMITED[WITH<定界符>|WITHBLANK|WITHTAB]自动完成表文件和备注文件的复制子句TYPE等的使用复制表的结构
COPYSTRUCTURETO<文件名>[FIELDS<字段名表>]生成新表其它文件操作命令文件改名RENAME删除ERASE显示DIRTYPE2.3.2记录指针的移动记录定位命令绝对定位GO[TO]TOP|BOTTOM[GO[TO]]<数值表达式>记录移位命令相对当前记录的定位SKIP[<数值表达式>]默认值为12.3.3记录的插入与追加插入新纪录INSERT[BLANK][BEFORE]追加新纪录INSERT-SQLINSERTINTO表名[字段列表]VALUES(表达式列表)APPEND命令APPEND[BLANK]APPENDFROM命令APPEDNFROM文件名[范围][FOR<条件>][FIELDS<字段名表>][[TYPE][SDF|XLS|DELIMITED[WITH<定界符>|WITHBLANK|WITHTAB]2.3.4表记录的删除和恢复在VFP中删除表中的数据由两步完成:逻辑删除就是给暂时不使用的记录加一个删除标记。物理删除就是把无效的记录彻底从磁盘中删除掉。记录的逻辑删除命令DELETE[<范围>][FOR<条件>][WHILE<条件>]记录物理删除命令PACK记录恢复命令RECALL[<范围>][FOR<条件>][WHILE<条件>]记录清除命令ZAP===deleteallpack不显示|显示逻辑删除记录SETDELETEON|OFF2.3.5表数据的替换成批修改数据REPLACE<字段名>WITH<表达式>[Additive][<,字段名>WITH<表达式>[Additive]]…[<范围>][FOR<条件>][WHILE<条件>]单个记录与数组间的数据传送将记录传送到数组或内存变量SCATTER[FIELDS<字段名表>|FIELDSLIKE<通配字段名>|FIELDSEXCEPT<通配字段名>][MEMO]TO<数组名>[BLANK]|MEMVAR[BLANK]将数组或内存变量的数据传送到记录GATHERFROM<数组名>……应用举例(replace)usesbreplace价格with价格-1000,部门with'11'for主要设备appendblankreplace编号with'301-1',名称with'扫描仪'useusesbreplace备注with','+编号+名称+str(year(启用日期))additiveuse应用举例(scattergather)usesb
go5scattermemvar?m.编号,m.名称,m.价格useusesbgo4scattertoamemo?a(1),a(2),a(4),a(7)?a(4)=600gatherfromadisplayuse成批记录与数组间的数据传送将表的一批记录复制到数组COPYTOARRAY<数组名>[FIELDS<字段名表>][<范围>][FOR<条件>][WHILE<条件>]数组不存在,系统自动建立可以是一维数组拷贝一个记录,也是可以二维数组拷贝多个记录从数组向表追加记录APPENDFROMARRAY<数组名>[FOR<条件>][FIELDS<字段名表>]可以是一维数组追加一个记录,也是可以二维数组追加多个记录应用举例UsesbDimensionjz(2,3)Copytoc1fields编号,价格,启用日期,名称Copytoarrayjzfor价格>10000field编号,价格,启用日期ListmemolikejzUseUsec1appendfromarrayjzlist2.3.6逻辑表的设置过滤器SETFILTERTO[<条件>]行选择字段表SETFIELDSTO[字段名表]列选择SETFIELDSON|O
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工作计划大全
- 客服部工作计划
- 中国全自动票据分切机项目投资可行性研究报告
- 交通台实习报告10篇
- 应届生会计求职信集锦十篇
- 三年级教师述职报告6篇
- 小学教师竞岗演讲稿5篇
- 2022万圣节作文(十五篇大全)
- 参观实习工作报告汇编9篇
- 小额贷款公司各项管理制度
- 公司领导班子设置方案
- 专业展览展示设计搭建公司
- 为铜制剂正名-冠菌铜® 产品课件-9-7
- 具有磁场保鲜装置的制冷设备的制作方法
- 2020牛津译林版新教材高中英语必修一单词表(带音标)
- 年出栏500头优质肉牛建设项目实施方案
- 2022职业学校学生实习管理规定
- 2023年湖南省农村信用社(农村商业银行)招聘员工笔试参考题库附答案解析
- 七年级上英语知识梳理(牛津上海版)U1-U4
- 人力资源典型案例汇编
- 11管理英语1试卷-043开放大学考试题库 答案
评论
0/150
提交评论