您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > VFP的命令格式 VFP中关于数据库的建立`打开`修改`删除等命令的
表的修改与维护复习提问•VFP的命令格式•VFP中关于数据库的建立、打开、修改、删除等命令的使用•VFP中创建表、打开表、将一个自由表加入到数据库中、从数据库中移去表、显示表中信息、关闭表、删除表命令的使用第五讲:表的修改与维护•重点掌握指针定位命令的使用•重点掌握记录的显示命令的使用•重点掌握记录的编辑,成批替换,插入与删除等操作命令的使用一、记录的定位记录结束标志记录开始标志第n条记录文件头Gotopgobottomskip1、记录指针标志记录号(输入顺序)记录的开始标志BOF()记录指针标志(当前记录)RECNO()记录的结束标志EOF()2、记录的定位方式绝对定位go相对定位skip条件定位几个概念•记录指针•当前记录•记录定位•记录号RECNO()例1假设ZGDA表有848条记录,先后执行以下命令bof()eof()recno()usebooksff1skip-1tf1skip-1Errorf1gobottff848skipft849skipError例2RECN()Usebooks1go55skip+27skip-34locatefor…3、记录定位的实现–界面方式(“表”—“转到记录”)•记录号:绝对定位goto•定位:条件定位locatefor•作用范围:all,next,record,rest,for•找到/未找到–命令方式绝对定位:GO(GOTO)GO(GOTO)TOP/BOTTOM相对定位:SKIP(与索引有关)skip=skip1快速移动:SEEK及FINDA绝对记录指针定位•用RECNO()函数,可测试当前记录指针•绝对指针定位–命令格式:•GO[TO]TOP•GO[TO]BOTTOM•GO[TO]RECORDN•GO[TO]〈数值表达式〉•GO[TO]N•命令功能:–使记录指针指向表中的指定记录说明•GOTOP定位第一个逻辑记录•GOBOTTOM定位最后一个逻辑记录•GORECORDN指针定位到表的N号记录•GO〈数值表达式〉定到表达式值取整后的记录•GON指针定位到N号记录•当选用参数N时,GO、TO均可省略不写B.相对指针转移•命令格式:–SKIP[+/-〈数值表达式〉]•命令功能:–相对当前位置按表达式值移动若干个记录–值为正时,指针向后移–为负值时,指针向前移–缺省选择项时指针向后移一个记录•说明:–GO绝对定位,都定位到所指的记录–SKIP是相对定位命令,以当前记录为中心,按给定的表达式值相对地移动若干记录二、记录的显示•两种格式:–LIST[〈范围〉][FIELDS〈字段名表〉][FOR〈条件〉][TOPRINTER][OFF][TOFILE〈文件名〉][NOCONSOLE][NOOPTIMIZE]–DISPLAY[〈范围〉][FIELDS〈字段名表〉][FOR〈条件〉][TOPRINTER][OFF][TOFILE〈文件名〉][NOCONSOLE][NOOPTIMIZE]说明:•LIST=DISPLAYALL显示的全部记录•[OFF]时,不显示记录号•有FOR〈条件〉显示出满足条件表达式的记录•[FIELDS〈字段名表〉],显示指定字段•有[〈范围〉],显示指定范围•[TOPRINTER],显示的结果送到打印机输出•[TOFILE〈文件名〉],结果输出到文件•[NOCONSOLE],不将显示结果送到主窗口和[TOPRINTER][TOFILE〈文件名〉]一起使用•[NOOPTIMIZE]短语时,不使用RUSHMORE优化技术差别有两点:•LIST缺省范围是显示全体记录•DISPLAY缺省当前记录•LIST具有连续显示特点•DISPLAY具有分页显示,满一页就停止,并提示按任一键继续显示下页内容例6.1•将ZGDA表中职称是讲师的、年龄在45岁以下的记录显示出来,并且只列出姓名、年龄、职称三个字段–USEZGDA–LISTFIELDS姓名,年龄,职称FOR职称=“讲师”.AND.年龄45【例6.2】–将ZGDA表的后4个记录显示出来,并且将第1和第5个记录分别显示出来【例6.3】–将ZGDA表中1995年1月1日以后参加工作的记录显示出来【例6.4】–将ZGDA表的后4个记录中性别是女的记录显示出来三、1.EDIT和CHANGE命令格式分别是:–EDIT[〈范围〉][FIELDS〈字段名表〉][FOR〈条件〉]–CHANGE[〈范围〉][FIELDS〈字段名表〉][FOR〈条件〉]•命令功能:进入全屏幕编辑方式,对当前打开的表的记录进行修改说明:•缺省所有的选择项,从当前记录开始进行修改•FIELDS〈字段名表〉,对列出的字段进行修改•范围和FOR〈条件〉,范围内满足条件的记录进行修改•缺省了[〈范围〉]是指全部记录2.BROWSE命令•命令格式:•BROWSE[FIELDS〈字段名表〉]•命令功能:•该命令以窗口方式显示当前表的内容,并可以对窗口内的数据按需要进行修改•使用EDIT命令和CHANGE命令时•一行只显示一个字段•每屏幕只能显示一个记录•VFP系统提供了窗口显示与修改命•BROWSE记录的浏览1、浏览窗口–进入:•BROWSE命令•usebooks/显示/浏览•项目管理器/选定某个表/单击“浏览”按钮2、命令–BROWSE–LIST/DISPLAY–BROWSEFIELDS书号,书名,作者for...如何定制浏览窗口?•重新安排列的位置:–拖动•改变列的宽度:–拖动•显示或隐藏表格线:–显示/网格线•分为两个窗格:–左下角拖动3.REPLACE命令***•命令格式:–REPLACE[〈范围〉]〈字段1〉WITH〈表达式1〉[ADDITIVE][,〈字段2〉WITH〈表达式2〉[ADDITIVE]…][FOR〈条件〉]•命令功能:–成批地、快速地修改满足给定条件的一批记录–修改的方法是用WITH后面表达式的值替换WITH前面的字段内容说明:(1)系统不进入全屏幕编辑方式(2)范围和FOR〈条件〉,修改范围内满足条件的所有记录–缺省范围,当前记录(3)REPLACE命令可以对备注字段的数据进行替换–可用关键字[ADDITIVE],追加到备注的文本内容的尾部–否则表达式的内容覆盖备注字段中的原有内容(4)〈字段名〉和〈表达式〉的数据类型必须相同–数值字段,表达式的值大于字段宽度时,四舍五入运算,或采取科学计数法【例6.5】•在表DA.DBF中,对工资小于800元的职工各增加10元•USEDA•REPLACEALL工资WITH工资+10FOR工资800•USE四、记录的插入与删除1.记录的插入–APPEND命令是从表末尾增加新记录•命令格式:–INSERT[BLANK][BEFORE]•命令功能:–在当前表中的当前记录之前或之后插入记录说明:(1)没有选择项,是在当前记录之后插入一个记录(2)如果有[BEFORE]选择项,是在当前记录之前插入一个记录(3)如果有[BLANK]选择项,是在当前记录之后插入一个空白记录2.记录的删除•分两步进行:–是对欲删除的记录打删除标记“*”,称为逻辑删除•必要时,可恢复,即把“*”去掉–是把带有删除标记的记录真正删除,称为永久性删除记录或称物理删除记录(1)逻辑删除记录命令•命令格式:–DELETE[〈范围〉][FOR〈条件〉]•命令功能:–指定范围内满足条件的那些记录加上删除标记“*”•说明:–若省略两个选择项,则给当前记录打删除标记“*”–当用命令SETDELETEON在显示或有关操作时,作了删除标记的记录就不起作用,如同真正删除这些记录一样【例6.6】•将表DA.DBF的4号记录打上删除标记USEDADELETERECORD4LIST(2)记录恢复删除命令•命令格式:–RECALL[〈范围〉][FOR〈条件〉]•命令功能:–将规定范围内的、符合条件的、已作了删除标记的记录恢复。即把删除标记“*”去掉(3)永久性删除记录命令•命令格式:PACK•命令功能:–将带有删除标记的记录从当前表中删除–并重新调整表的记录号•说明:–执行PACK命令后,删除的记录在表中不再存在,并且不能被恢复,称永久性删除记录(4)删除表的全部记录命令•命令格式:ZAP•命令功能:–将已打开的表中的全部记录一次性删除•说明:–(1)执行此命令,只是删除全部记录,而表的结构仍然保留–(2)该命令等效于执行了DELETEALL命令后再执行PACK命令setdeletedon/off•为setdeletedon时–屏蔽掉有标记的记录,不能访问–影响Count命令–不影响Reccount()•例:8个记录,一个有删除标记–Setdeletedon–Counttox–?X7–?Reccount()8筛选记录•界面“表”—“属性”—“数据过滤器”•命令–SETFILTERTO条件表达式–SETFILTERTO例:USEZGDA•SETFILTTO出版社=‘石油大学’•注意:–是隐藏而非删除–与FOR子句不同•对SELECT-SQL、DELETE-SQL、UPDATE-SQL无效筛选字段•表/属性/字段筛选•SETFIELDSTO字段1[,字段2]–SETfieldsto姓名,性别小结:•重点掌握指针定位命令的使用•重点掌握记录的显示命令的使用•重点掌握记录的编辑,成批替换,插入与删除等操作命令的使用
本文标题:VFP的命令格式 VFP中关于数据库的建立`打开`修改`删除等命令的
链接地址:https://www.777doc.com/doc-3840035 .html