资源预览内容
第1页 / 共99页
第2页 / 共99页
第3页 / 共99页
第4页 / 共99页
第5页 / 共99页
第6页 / 共99页
第7页 / 共99页
第8页 / 共99页
第9页 / 共99页
第10页 / 共99页
亲,该文档总共99页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
张泳数据库技术原理与应用第02章2.1 2.1 表的建立与修改表的建立与修改编编号号号号名称名称名称名称启用日期启用日期启用日期启用日期价格价格价格价格部部部部门门主要主要主要主要设备设备备备注注注注商商商商标标016-1016-1016-1016-1车车床床床床03/05/9003/05/9003/05/9003/05/9062044.6162044.6162044.6162044.6121212121.T.T.T.T.MemoMemoMemoMemogengengengen016-2016-2016-2016-2车车床床床床01/15/9201/15/9201/15/9201/15/9227132.7327132.7327132.7327132.7321212121.T.T.T.T.memomemomemomemogengengengen037-2037-2037-2037-2磨床磨床磨床磨床07/21/9007/21/9007/21/9007/21/90241292.12241292.12241292.12241292.1222222222.T.T.T.T.memomemomemomemogengengengen038-1038-1038-1038-1钻钻床床床床10/12/8910/12/8910/12/8910/12/895275.005275.005275.005275.0023232323.F.F.F.F.MemoMemoMemoMemogengengengen100-1100-1100-1100-1微机微机微机微机08/12/9708/12/9708/12/9708/12/978810.008810.008810.008810.0012121212.T.T.T.T.memomemomemomemoGenGenGenGen101-1101-1101-1101-1复印机复印机复印机复印机06/01/9206/01/9206/01/9206/01/9210305.0110305.0110305.0110305.0112121212.F.F.F.F.memomemomemomemogengengengen210-1210-1210-1210-1轿车轿车05/08/9505/08/9505/08/9505/08/95151000.00151000.00151000.00151000.0011111111.F.F.F.F.memomemomemomemoGenGenGenGen2 3 3 3 3、表文件的说明、表文件的说明、表文件的说明、表文件的说明 表中的数据保存在扩展名为表中的数据保存在扩展名为表中的数据保存在扩展名为表中的数据保存在扩展名为.dbf.dbf.dbf.dbf的文件中,如的文件中,如的文件中,如的文件中,如果表中有备注类型的字段,系统会自动生成一个与果表中有备注类型的字段,系统会自动生成一个与果表中有备注类型的字段,系统会自动生成一个与果表中有备注类型的字段,系统会自动生成一个与表文件同名,扩展名为表文件同名,扩展名为表文件同名,扩展名为表文件同名,扩展名为.fpt.fpt.fpt.fpt的文件,用来保存备注的文件,用来保存备注的文件,用来保存备注的文件,用来保存备注字段中的内容。字段中的内容。字段中的内容。字段中的内容。 特别注意,如果有备注文件,两个文件必须在特别注意,如果有备注文件,两个文件必须在特别注意,如果有备注文件,两个文件必须在特别注意,如果有备注文件,两个文件必须在一起才能打开表文件。一起才能打开表文件。一起才能打开表文件。一起才能打开表文件。9二、数据的输入二、数据的输入二、数据的输入二、数据的输入 1 1 1 1、数据输入要点、数据输入要点、数据输入要点、数据输入要点 (1 1 1 1)表的数据可通过记录编辑窗口按记录逐个)表的数据可通过记录编辑窗口按记录逐个)表的数据可通过记录编辑窗口按记录逐个)表的数据可通过记录编辑窗口按记录逐个字段输入。一旦在最后一个记录的任何位置上输入字段输入。一旦在最后一个记录的任何位置上输入字段输入。一旦在最后一个记录的任何位置上输入字段输入。一旦在最后一个记录的任何位置上输入数据,数据,数据,数据,VFPVFPVFPVFP即自动提供下一记录的输入位置。即自动提供下一记录的输入位置。即自动提供下一记录的输入位置。即自动提供下一记录的输入位置。 (2 2 2 2)逻辑型字段只能接受)逻辑型字段只能接受)逻辑型字段只能接受)逻辑型字段只能接受T T T T、Y Y Y Y、F F F F、N N N N这这这这4 4 4 4个字个字个字个字母之一(不论大小写)。母之一(不论大小写)。母之一(不论大小写)。母之一(不论大小写)。T T T T与与与与Y Y Y Y同义若输入同义若输入同义若输入同义若输入Y Y Y Y也显示也显示也显示也显示T T T T;同样,;同样,;同样,;同样,F F F F与与与与N N N N同义,若键入同义,若键入同义,若键入同义,若键入N N N N也显示也显示也显示也显示F F F F。 10(3 3 3 3)日期型数据必须与日期格式相符。)日期型数据必须与日期格式相符。)日期型数据必须与日期格式相符。)日期型数据必须与日期格式相符。n n默认按美国日期格式默认按美国日期格式默认按美国日期格式默认按美国日期格式mmmmmmmmddddddddyyyyyyyy输入;输入;输入;输入;n n若要设置中国日期格式若要设置中国日期格式若要设置中国日期格式若要设置中国日期格式yy.mm.ddyy.mm.ddyy.mm.ddyy.mm.dd,只要在命令,只要在命令,只要在命令,只要在命令窗口中键入命令窗口中键入命令窗口中键入命令窗口中键入命令SET DATE ANSISET DATE ANSISET DATE ANSISET DATE ANSI便可;便可;便可;便可;n n若还要显示世纪若还要显示世纪若还要显示世纪若还要显示世纪19191919,可键入命令,可键入命令,可键入命令,可键入命令SET DATE SET DATE SET DATE SET DATE CENTURYCENTURYCENTURYCENTURY;n n回到美国日期格式的命令为回到美国日期格式的命令为回到美国日期格式的命令为回到美国日期格式的命令为SET DATE SET DATE SET DATE SET DATE AMERICANAMERICANAMERICANAMERICAN。 112 2 2 2、备注型字段数据的输入、备注型字段数据的输入、备注型字段数据的输入、备注型字段数据的输入 打开当前记录的备注型字段编辑窗口就可以输打开当前记录的备注型字段编辑窗口就可以输打开当前记录的备注型字段编辑窗口就可以输打开当前记录的备注型字段编辑窗口就可以输入或修改备注信息。入或修改备注信息。入或修改备注信息。入或修改备注信息。 当光标停在备注型当光标停在备注型当光标停在备注型当光标停在备注型memomemomemomemo时,若不想输入数据可时,若不想输入数据可时,若不想输入数据可时,若不想输入数据可按回车键跳过;若要输入数据,按按回车键跳过;若要输入数据,按按回车键跳过;若要输入数据,按按回车键跳过;若要输入数据,按CTRL+PgDnCTRL+PgDnCTRL+PgDnCTRL+PgDn或用鼠或用鼠或用鼠或用鼠标双击都能打开相应的字段编辑窗口。标双击都能打开相应的字段编辑窗口。标双击都能打开相应的字段编辑窗口。标双击都能打开相应的字段编辑窗口。 某记录的备注型,其字段标志首字母格以大写某记录的备注型,其字段标志首字母格以大写某记录的备注型,其字段标志首字母格以大写某记录的备注型,其字段标志首字母格以大写显示,即显示为显示,即显示为显示,即显示为显示,即显示为MemoMemoMemoMemo。 123 3 3 3、编辑窗口的打开和关闭、编辑窗口的打开和关闭、编辑窗口的打开和关闭、编辑窗口的打开和关闭 前已涉及表的记录编辑窗口、宇段编辑窗口的前已涉及表的记录编辑窗口、宇段编辑窗口的前已涉及表的记录编辑窗口、宇段编辑窗口的前已涉及表的记录编辑窗口、宇段编辑窗口的打开。不同的编辑窗口其打开的方法可能不同,而打开。不同的编辑窗口其打开的方法可能不同,而打开。不同的编辑窗口其打开的方法可能不同,而打开。不同的编辑窗口其打开的方法可能不同,而关闭的方法却是一致的,表关闭的方法却是一致的,表关闭的方法却是一致的,表关闭的方法却是一致的,表2.42.42.42.4列出了这些窗口的开列出了这些窗口的开列出了这些窗口的开列出了这些窗口的开关方法。关方法。关方法。关方法。134 4 4 4、表的打开和关闭、表的打开和关闭、表的打开和关闭、表的打开和关闭 只有在表打开后才能打开编辑窗口对它修改或只有在表打开后才能打开编辑窗口对它修改或只有在表打开后才能打开编辑窗口对它修改或只有在表打开后才能打开编辑窗口对它修改或检索;但编辑窗口的关闭并不意味着表也会关闭;检索;但编辑窗口的关闭并不意味着表也会关闭;检索;但编辑窗口的关闭并不意味着表也会关闭;检索;但编辑窗口的关闭并不意味着表也会关闭;表关闭时数据会自动存盘。表关闭时数据会自动存盘。表关闭时数据会自动存盘。表关闭时数据会自动存盘。 (1 1 1 1)用)用)用)用USEUSEUSEUSE命令来打开或关闭表命令来打开或关闭表命令来打开或关闭表命令来打开或关闭表 命令格式:命令格式:命令格式:命令格式:USE USE USE USE 功能:在当前工作区中打开或关闭表。若该表功能:在当前工作区中打开或关闭表。若该表功能:在当前工作区中打开或关闭表。若该表功能:在当前工作区中打开或关闭表。若该表有备注文件,则自动打开同名的有备注文件,则自动打开同名的有备注文件,则自动打开同名的有备注文件,则自动打开同名的.FPT.FPT.FPT.FPT文件。文件。文件。文件。 14说明:说明:说明:说明:n n 表示被打开的表的名字,表示被打开的表的名字,表示被打开的表的名字,表示被打开的表的名字,缺省缺省缺省缺省 表示关闭当前工作区(工作区的概念)。表示关闭当前工作区(工作区的概念)。表示关闭当前工作区(工作区的概念)。表示关闭当前工作区(工作区的概念)。例如在命令窗口键入命令例如在命令窗口键入命令例如在命令窗口键入命令例如在命令窗口键入命令USE SBUSE SBUSE SBUSE SB即打开表即打开表即打开表即打开表SB.DBFSB.DBFSB.DBFSB.DBF,若要关闭该表可键入命令,若要关闭该表可键入命令,若要关闭该表可键入命令,若要关闭该表可键入命令USEUSEUSEUSE。n n打开一个表时,该工作区中原来打开的表自动打开一个表时,该工作区中原来打开的表自动打开一个表时,该工作区中原来打开的表自动打开一个表时,该工作区中原来打开的表自动关闭。关闭。关闭。关闭。n n已打开的表总有一个记录指针,指针所指的记已打开的表总有一个记录指针,指针所指的记已打开的表总有一个记录指针,指针所指的记已打开的表总有一个记录指针,指针所指的记录称为当前记录录指针指向第一个记录。录称为当前记录录指针指向第一个记录。录称为当前记录录指针指向第一个记录。录称为当前记录录指针指向第一个记录。n n表操作结束后应及时关闭以便将内存的数据表操作结束后应及时关闭以便将内存的数据表操作结束后应及时关闭以便将内存的数据表操作结束后应及时关闭以便将内存的数据保存到表中。保存到表中。保存到表中。保存到表中。15 (2 2 2 2)打开表的其它常用方法)打开表的其它常用方法)打开表的其它常用方法)打开表的其它常用方法n n通过文件菜单的打开命令来打开表。注意,若要通过文件菜单的打开命令来打开表。注意,若要通过文件菜单的打开命令来打开表。注意,若要通过文件菜单的打开命令来打开表。注意,若要修改结构或记录还应选定打开对话柜中的修改结构或记录还应选定打开对话柜中的修改结构或记录还应选定打开对话柜中的修改结构或记录还应选定打开对话柜中的“独占独占独占独占”复选框否则打开的表是只读的,不能修改。复选框否则打开的表是只读的,不能修改。复选框否则打开的表是只读的,不能修改。复选框否则打开的表是只读的,不能修改。n n通过窗口菜单的数据工作期命令来打开表。通过窗口菜单的数据工作期命令来打开表。通过窗口菜单的数据工作期命令来打开表。通过窗口菜单的数据工作期命令来打开表。 16(3 3 3 3)关闭表的其它方法)关闭表的其它方法)关闭表的其它方法)关闭表的其它方法 A A A A、可用以下命令之一来关闭表、可用以下命令之一来关闭表、可用以下命令之一来关闭表、可用以下命令之一来关闭表n nCLEAR ALLCLEAR ALLCLEAR ALLCLEAR ALL:关闭所有的表,并选择工作区:关闭所有的表,并选择工作区:关闭所有的表,并选择工作区:关闭所有的表,并选择工作区1 1 1 1;从内存释放所有内存变量及用户定义的菜单和从内存释放所有内存变量及用户定义的菜单和从内存释放所有内存变量及用户定义的菜单和从内存释放所有内存变量及用户定义的菜单和窗口。但不释放系统变量。窗口。但不释放系统变量。窗口。但不释放系统变量。窗口。但不释放系统变量。n nCLOSE ALLCLOSE ALLCLOSE ALLCLOSE ALL:关闭所有打开的数据库与表,并选:关闭所有打开的数据库与表,并选:关闭所有打开的数据库与表,并选:关闭所有打开的数据库与表,并选择工作区择工作区择工作区择工作区1 1 1 1;关闭表单设计器,查询设计器,报;关闭表单设计器,查询设计器,报;关闭表单设计器,查询设计器,报;关闭表单设计器,查询设计器,报表设计器,项目管理器。表设计器,项目管理器。表设计器,项目管理器。表设计器,项目管理器。17n nCLOSE DATABASE ALLCLOSE DATABASE ALLCLOSE DATABASE ALLCLOSE DATABASE ALL:关闭当前数据库及其:关闭当前数据库及其:关闭当前数据库及其:关闭当前数据库及其中表,若无打开的数据库,则关闭所有自由表,中表,若无打开的数据库,则关闭所有自由表,中表,若无打开的数据库,则关闭所有自由表,中表,若无打开的数据库,则关闭所有自由表,并选择工作区并选择工作区并选择工作区并选择工作区1 1 1 1。带有。带有。带有。带有ALLALLALLALL则关闭所有打开的数则关闭所有打开的数则关闭所有打开的数则关闭所有打开的数据库及其中的表和所有打开的自由表。据库及其中的表和所有打开的自由表。据库及其中的表和所有打开的自由表。据库及其中的表和所有打开的自由表。n nCLOSE TABLES CLOSE TABLES CLOSE TABLES CLOSE TABLES ALLlALLlALLlALLl:关闭当前数据库中所有:关闭当前数据库中所有:关闭当前数据库中所有:关闭当前数据库中所有的表,但不关闭数据库。若无打开的数据库,的表,但不关闭数据库。若无打开的数据库,的表,但不关闭数据库。若无打开的数据库,的表,但不关闭数据库。若无打开的数据库,则关闭所有自由表,带有则关闭所有自由表,带有则关闭所有自由表,带有则关闭所有自由表,带有ALLALLALLALL则关闭所有效据库则关闭所有效据库则关闭所有效据库则关闭所有效据库中所有的表和所有自由表,但不关闭数据库。中所有的表和所有自由表,但不关闭数据库。中所有的表和所有自由表,但不关闭数据库。中所有的表和所有自由表,但不关闭数据库。18B B B B、通过窗口菜单的数据工作期命令来关闭表。、通过窗口菜单的数据工作期命令来关闭表。、通过窗口菜单的数据工作期命令来关闭表。、通过窗口菜单的数据工作期命令来关闭表。C C C C、通过退出、通过退出、通过退出、通过退出VFPVFPVFPVFP来关闭。选定来关闭。选定来关闭。选定来关闭。选定“文件文件文件文件”菜单的菜单的菜单的菜单的“退出退出退出退出”命令,或在命令窗口中键入命令命令,或在命令窗口中键入命令命令,或在命令窗口中键入命令命令,或在命令窗口中键入命令QUITQUITQUITQUIT。19三、表结构的修改三、表结构的修改三、表结构的修改三、表结构的修改 表建立后若要修改结构,例如改变字段属性、表建立后若要修改结构,例如改变字段属性、表建立后若要修改结构,例如改变字段属性、表建立后若要修改结构,例如改变字段属性、增加或删除字段等,可以打开表设计器或利用表向增加或删除字段等,可以打开表设计器或利用表向增加或删除字段等,可以打开表设计器或利用表向增加或删除字段等,可以打开表设计器或利用表向导来操作。导来操作。导来操作。导来操作。 1 1 1 1、打开表设计器来修改表结构、打开表设计器来修改表结构、打开表设计器来修改表结构、打开表设计器来修改表结构 打开表以后,使用以下方法打开表设计器进行:打开表以后,使用以下方法打开表设计器进行:打开表以后,使用以下方法打开表设计器进行:打开表以后,使用以下方法打开表设计器进行:n n使用使用使用使用“显示显示显示显示”菜单中的菜单中的菜单中的菜单中的“表设计器表设计器表设计器表设计器”命令;命令;命令;命令;n n使用命令使用命令使用命令使用命令MODIFY STRUCTUREMODIFY STRUCTUREMODIFY STRUCTUREMODIFY STRUCTURE 2 2 2 2、利用表向导来修改表结构、利用表向导来修改表结构、利用表向导来修改表结构、利用表向导来修改表结构20四、表数据的修改四、表数据的修改四、表数据的修改四、表数据的修改 1 1 1 1、两种记录显示方式、两种记录显示方式、两种记录显示方式、两种记录显示方式 编辑编辑编辑编辑方式方式方式方式浏览浏览浏览浏览方式方式方式方式212 2 2 2、浏览窗口的操作、浏览窗口的操作、浏览窗口的操作、浏览窗口的操作 (1 1 1 1)打开浏览)打开浏览)打开浏览)打开浏览界面操作方式界面操作方式界面操作方式界面操作方式 命令方式:键入相应命令,如命令方式:键入相应命令,如命令方式:键入相应命令,如命令方式:键入相应命令,如BROWSEBROWSEBROWSEBROWSE等。等。等。等。 (2 2 2 2)滚动查看:内容较多时,采用多种方法查看。)滚动查看:内容较多时,采用多种方法查看。)滚动查看:内容较多时,采用多种方法查看。)滚动查看:内容较多时,采用多种方法查看。 (3 3 3 3)一窗两区)一窗两区)一窗两区)一窗两区 223 3 3 3、在浏览窗口追加与删除记录、在浏览窗口追加与删除记录、在浏览窗口追加与删除记录、在浏览窗口追加与删除记录 (1 1 1 1)记录的追加)记录的追加)记录的追加)记录的追加 分别可以使用分别可以使用分别可以使用分别可以使用“显示显示显示显示”菜单中的菜单中的菜单中的菜单中的“追加方式追加方式追加方式追加方式”命令命令命令命令或表菜单中的或表菜单中的或表菜单中的或表菜单中的“追加记录追加记录追加记录追加记录”命令来追加记录,其差别命令来追加记录,其差别命令来追加记录,其差别命令来追加记录,其差别主要是前者可以连续追加,后者为只追加一个记录。也主要是前者可以连续追加,后者为只追加一个记录。也主要是前者可以连续追加,后者为只追加一个记录。也主要是前者可以连续追加,后者为只追加一个记录。也可以使用可以使用可以使用可以使用APPENDAPPENDAPPENDAPPEND命令进行。命令进行。命令进行。命令进行。23(2 2 2 2)记录的删除)记录的删除)记录的删除)记录的删除 注意:记录删除分注意:记录删除分注意:记录删除分注意:记录删除分逻辑删除和物理删除逻辑删除和物理删除逻辑删除和物理删除逻辑删除和物理删除两种,逻辑删除并未将记录真两种,逻辑删除并未将记录真两种,逻辑删除并未将记录真两种,逻辑删除并未将记录真正的删除,只是作了一个删除标志,而物理删除才是将记录真正删除。正的删除,只是作了一个删除标志,而物理删除才是将记录真正删除。正的删除,只是作了一个删除标志,而物理删除才是将记录真正删除。正的删除,只是作了一个删除标志,而物理删除才是将记录真正删除。 首先应进行逻辑删除,用鼠标单击记录左边的删除标志;若该记录已首先应进行逻辑删除,用鼠标单击记录左边的删除标志;若该记录已首先应进行逻辑删除,用鼠标单击记录左边的删除标志;若该记录已首先应进行逻辑删除,用鼠标单击记录左边的删除标志;若该记录已经被逻辑删除,再次单击后删除标志为白色,表示已经被恢复。经被逻辑删除,再次单击后删除标志为白色,表示已经被恢复。经被逻辑删除,再次单击后删除标志为白色,表示已经被恢复。经被逻辑删除,再次单击后删除标志为白色,表示已经被恢复。 然后进行物理删除,命令格式为:然后进行物理删除,命令格式为:然后进行物理删除,命令格式为:然后进行物理删除,命令格式为:PACKPACKPACKPACK242.2 2.2 表达式表达式一、常量一、常量一、常量一、常量 常量是固定不变的数据。常量是固定不变的数据。常量是固定不变的数据。常量是固定不变的数据。 1 1 1 1、数数数数值值值值型型型型常常常常量量量量:整整整整数数数数、小小小小数数数数或或或或用用用用科科科科学学学学计计计计数数数数法法法法表表表表达达达达的数都是数值型常量。的数都是数值型常量。的数都是数值型常量。的数都是数值型常量。 2 2 2 2、字字字字符符符符型型型型常常常常量量量量:字字字字符符符符型型型型常常常常量量量量是是是是用用用用双双双双引引引引号号号号、单单单单引引引引导导导导或或或或方方方方括括括括(“ )号号号号等等等等定定定定界界界界符符符符括括括括起起起起来来来来的的的的字字字字符符符符串串串串,VFPVFPVFPVFP字字字字符串的最大长度为符串的最大长度为符串的最大长度为符串的最大长度为254254254254个字符。个字符。个字符。个字符。 若若若若字字字字符符符符串串串串中中中中含含含含有有有有定定定定界界界界符符符符,则则则则须须须须用用用用另另另另一一一一种种种种定定定定界界界界符符符符括括括括起来。起来。起来。起来。 253 3 3 3、日期型和日期时间型常量、日期型和日期时间型常量、日期型和日期时间型常量、日期型和日期时间型常量 日日日日期期期期型型型型常常常常量量量量必必必必须须须须用用用用花花花花括括括括号号号号括括括括起起起起来来来来,空空空空白白白白的的的的日日日日期期期期时间可表示为时间可表示为时间可表示为时间可表示为或或或或 。 还有一种还有一种还有一种还有一种“严格的日期格式严格的日期格式严格的日期格式严格的日期格式”为:为:为:为:yyyy-mm-dd,hh:mm:ssa|pyyyy-mm-dd,hh:mm:ssa|pyyyy-mm-dd,hh:mm:ssa|pyyyy-mm-dd,hh:mm:ssa|p 必必必必须须须须注注注注意意意意,执执执执行行行行命命命命令令令令时时时时VFP6.0VFP6.0VFP6.0VFP6.0默默默默认认认认使使使使用用用用严严严严格格格格的的的的日日日日期期期期格格格格式式式式,如如如如果果果果要要要要使使使使用用用用通通通通常常常常的的的的日日日日期期期期格格格格式式式式必必必必须须须须先先先先执执执执行行行行SET SET SET SET STRICTDATE STRICTDATE STRICTDATE STRICTDATE TO TO TO TO 0 0 0 0命命命命令令令令,否否否否则则则则会会会会引引引引起起起起出出出出错错错错。若若若若要要要要 设设设设 置置置置 严严严严 格格格格 的的的的 日日日日 期期期期 格格格格 式式式式 可可可可 以以以以 使使使使 用用用用 命命命命 令令令令 SET SET SET SET STRICTDATE TO 1STRICTDATE TO 1STRICTDATE TO 1STRICTDATE TO 1。 26 4 4 4 4、逻辑型常量:、逻辑型常量:、逻辑型常量:、逻辑型常量: 逻逻逻逻辑辑辑辑型型型型常常常常量量量量只只只只有有有有真真真真和和和和假假假假两两两两种种种种值值值值。用用用用T T T T、Y Y Y Y、N N N N、F F F F表示均可,但是其前后用表示均可,但是其前后用表示均可,但是其前后用表示均可,但是其前后用“.”.”.”.”与其他隔开。与其他隔开。与其他隔开。与其他隔开。 5 5 5 5、货币型常量:、货币型常量:、货币型常量:、货币型常量: 货货货货币币币币型型型型常常常常量量量量以以以以$ $ $ $符符符符号号号号开开开开头头头头,并并并并四四四四舍舍舍舍五五五五入入入入到到到到小小小小数数数数4 4 4 4位。位。位。位。27二、变量二、变量二、变量二、变量 在命令操作和程序运行过程中其值允许变化的在命令操作和程序运行过程中其值允许变化的在命令操作和程序运行过程中其值允许变化的在命令操作和程序运行过程中其值允许变化的量称变量。量称变量。量称变量。量称变量。1 1 1 1、内存变量、内存变量、内存变量、内存变量 内存变量可用来存储数据,定义内存变量时需内存变量可用来存储数据,定义内存变量时需内存变量可用来存储数据,定义内存变量时需内存变量可用来存储数据,定义内存变量时需为它取名并赋初值,内存变量建立后存储于内存中。为它取名并赋初值,内存变量建立后存储于内存中。为它取名并赋初值,内存变量建立后存储于内存中。为它取名并赋初值,内存变量建立后存储于内存中。 (1 1 1 1)VFPVFPVFPVFP的命名规则的命名规则的命名规则的命名规则 在在在在VFPVFPVFPVFP中除字段和文件外,所有的用户命名,例中除字段和文件外,所有的用户命名,例中除字段和文件外,所有的用户命名,例中除字段和文件外,所有的用户命名,例如内存变量、函数的取名,均遵守以下规则:如内存变量、函数的取名,均遵守以下规则:如内存变量、函数的取名,均遵守以下规则:如内存变量、函数的取名,均遵守以下规则: 28 以字母(也可汉字)或下划线开头,由字母、以字母(也可汉字)或下划线开头,由字母、以字母(也可汉字)或下划线开头,由字母、以字母(也可汉字)或下划线开头,由字母、数字、下划线组成;至多数字、下划线组成;至多数字、下划线组成;至多数字、下划线组成;至多128128128128个字符;不可与系统保个字符;不可与系统保个字符;不可与系统保个字符;不可与系统保留字同名。留字同名。留字同名。留字同名。 所谓系统保留字是指所谓系统保留字是指所谓系统保留字是指所谓系统保留字是指VFPVFPVFPVFP语言使用的字,例如语言使用的字,例如语言使用的字,例如语言使用的字,例如USEUSEUSEUSE命令中的命令中的命令中的命令中的USEUSEUSEUSE就是一个系统保留字。就是一个系统保留字。就是一个系统保留字。就是一个系统保留字。29(2 2 2 2)内存变量赋值命令)内存变量赋值命令)内存变量赋值命令)内存变量赋值命令 命令格式命令格式命令格式命令格式1 1 1 1: (内存变量)(内存变量)(内存变量)(内存变量) 命令格式命令格式命令格式命令格式2 2 2 2: STORE STORE STORE STORE TO TO TO TO(n n n n存变量表)存变量表)存变量表)存变量表) 功能:计算(表达式),然后将计算结果赋给功能:计算(表达式),然后将计算结果赋给功能:计算(表达式),然后将计算结果赋给功能:计算(表达式),然后将计算结果赋给内存变量。内存变量。内存变量。内存变量。 30说明:说明:说明:说明:n n内存变量在赋值时定义了它的值及类型,其类内存变量在赋值时定义了它的值及类型,其类内存变量在赋值时定义了它的值及类型,其类内存变量在赋值时定义了它的值及类型,其类型与所属的值的类型相同,可以不事先定义。型与所属的值的类型相同,可以不事先定义。型与所属的值的类型相同,可以不事先定义。型与所属的值的类型相同,可以不事先定义。n nSTORESTORESTORESTORE命令的(内存变量表)可包括多个内存命令的(内存变量表)可包括多个内存命令的(内存变量表)可包括多个内存命令的(内存变量表)可包括多个内存变量,但须用逗号来分隔。变量,但须用逗号来分隔。变量,但须用逗号来分隔。变量,但须用逗号来分隔。该命令可将同一值该命令可将同一值该命令可将同一值该命令可将同一值赋给多个内存变量,而赋给多个内存变量,而赋给多个内存变量,而赋给多个内存变量,而“”命令仅可为一个命令仅可为一个命令仅可为一个命令仅可为一个内存变量赋值。内存变量赋值。内存变量赋值。内存变量赋值。31 (3 (3 (3 (3)表达式值显示命令)表达式值显示命令)表达式值显示命令)表达式值显示命令命令格式:命令格式:命令格式:命令格式:?| | | |? 功能:计算表达式的值,并将其显示在屏幕上。功能:计算表达式的值,并将其显示在屏幕上。功能:计算表达式的值,并将其显示在屏幕上。功能:计算表达式的值,并将其显示在屏幕上。 说明:说明:说明:说明:n n? ? ? ?表示从屏幕下一行的第一列起显示结果。表示从屏幕下一行的第一列起显示结果。表示从屏幕下一行的第一列起显示结果。表示从屏幕下一行的第一列起显示结果。n n?表示从当前行的当前列起显示结果。?表示从当前行的当前列起显示结果。?表示从当前行的当前列起显示结果。?表示从当前行的当前列起显示结果。n n表达式表表示可用逗号来隔开多个表达式,表达式表表示可用逗号来隔开多个表达式,表达式表表示可用逗号来隔开多个表达式,表达式表表示可用逗号来隔开多个表达式,命令执行时遇逗号就空一格。命令执行时遇逗号就空一格。命令执行时遇逗号就空一格。命令执行时遇逗号就空一格。 32例:例:例:例: a=“Im stu”a=“Im stu”a=“Im stu”a=“Im stu” ?a ?a ?a ?a ?a ?a ?a ?a store 2*3 to n1,n2,n3 store 2*3 to n1,n2,n3 store 2*3 to n1,n2,n3 store 2*3 to n1,n2,n3 ?n1,n2,n3 ?n1,n2,n3 ?n1,n2,n3 ?n1,n2,n3 store 2*3,3*4,4*5 to n1,n2,n3 * store 2*3,3*4,4*5 to n1,n2,n3 * store 2*3,3*4,4*5 to n1,n2,n3 * store 2*3,3*4,4*5 to n1,n2,n3 *332 2 2 2、数组、数组、数组、数组 数组是按一定顺序排列的一组内存变量,数组中数组是按一定顺序排列的一组内存变量,数组中数组是按一定顺序排列的一组内存变量,数组中数组是按一定顺序排列的一组内存变量,数组中的各个变量称为数组元素。的各个变量称为数组元素。的各个变量称为数组元素。的各个变量称为数组元素。数组必须先定义后使用数组必须先定义后使用数组必须先定义后使用数组必须先定义后使用。 (1 1 1 1)数组的定义)数组的定义)数组的定义)数组的定义 命令格式:命令格式:命令格式:命令格式: DIMENSION | DECLAREDIMENSION | DECLAREDIMENSION | DECLAREDIMENSION | DECLARE 功能;定义一维或二维效组、及其下标的上界功能;定义一维或二维效组、及其下标的上界功能;定义一维或二维效组、及其下标的上界功能;定义一维或二维效组、及其下标的上界. . . . 34说明:说明:说明:说明: - - - -系统规定各下标的下界为系统规定各下标的下界为系统规定各下标的下界为系统规定各下标的下界为1 1 1 1。 - - - -理论上理论上理论上理论上VFPVFPVFPVFP中最多可定义中最多可定义中最多可定义中最多可定义65000650006500065000个数组,且每个个数组,且每个个数组,且每个个数组,且每个数组最多可包含数组最多可包含数组最多可包含数组最多可包含65000650006500065000个元素,实际上最大数将受可个元素,实际上最大数将受可个元素,实际上最大数将受可个元素,实际上最大数将受可用内存的制约。用内存的制约。用内存的制约。用内存的制约。 35(2 2 2 2)数组的赋值)数组的赋值)数组的赋值)数组的赋值n nVFPVFPVFPVFP不仅允许同一数组的元素取不同类型而不仅允许同一数组的元素取不同类型而不仅允许同一数组的元素取不同类型而不仅允许同一数组的元素取不同类型而且同一个元素的前、后类型也允许改变。在定且同一个元素的前、后类型也允许改变。在定且同一个元素的前、后类型也允许改变。在定且同一个元素的前、后类型也允许改变。在定义数组时,系统将各数组元素的初值设置为义数组时,系统将各数组元素的初值设置为义数组时,系统将各数组元素的初值设置为义数组时,系统将各数组元素的初值设置为.F.F.F.F.。n n用赋值命令可为数组元素单个地赋值,也可为用赋值命令可为数组元素单个地赋值,也可为用赋值命令可为数组元素单个地赋值,也可为用赋值命令可为数组元素单个地赋值,也可为整个数组的各个元素赋以相同值。整个数组的各个元素赋以相同值。整个数组的各个元素赋以相同值。整个数组的各个元素赋以相同值。n n二维数组各元素在内存中按行的顺序存储,而二维数组各元素在内存中按行的顺序存储,而二维数组各元素在内存中按行的顺序存储,而二维数组各元素在内存中按行的顺序存储,而且也可按一维数组来表示其数组元素。且也可按一维数组来表示其数组元素。且也可按一维数组来表示其数组元素。且也可按一维数组来表示其数组元素。36例:例:例:例:dimension x(3),a(2,3)dimension x(3),a(2,3)dimension x(3),a(2,3)dimension x(3),a(2,3) ?x ?x ?x ?x ?a ?a ?a ?a x(1)=2 x(1)=2 x(1)=2 x(1)=2 x(2)=hqu x(2)=hqu x(2)=hqu x(2)=hqu x(3)=03/04/99 & x(3)=03/04/99 & x(3)=03/04/99 & x(3)=03/04/99 &显示同一数组可以赋不同类型值显示同一数组可以赋不同类型值显示同一数组可以赋不同类型值显示同一数组可以赋不同类型值 ?x(1)?x(1)?x(1)?x(1) ?x(2) ?x(2) ?x(2) ?x(2) ?x(3) ?x(3) ?x(3) ?x(3) a(2,2)=a22 a(2,2)=a22 a(2,2)=a22 a(2,2)=a22 ?a(2,2) ?a(2,2) ?a(2,2) ?a(2,2) ?a(5) ?a(5) ?a(5) ?a(5)37 3 3 3 3、字段变量、字段变量、字段变量、字段变量 表的每一个字段就是一个字段变量。说字段是变表的每一个字段就是一个字段变量。说字段是变表的每一个字段就是一个字段变量。说字段是变表的每一个字段就是一个字段变量。说字段是变量,是由于对于某一字段它的值允许因记录而异。量,是由于对于某一字段它的值允许因记录而异。量,是由于对于某一字段它的值允许因记录而异。量,是由于对于某一字段它的值允许因记录而异。 字段变量在建立表结构时定义,修改表结构时可字段变量在建立表结构时定义,修改表结构时可字段变量在建立表结构时定义,修改表结构时可字段变量在建立表结构时定义,修改表结构时可重新定义、或增删字段变量。重新定义、或增删字段变量。重新定义、或增删字段变量。重新定义、或增删字段变量。 为简便计,为简便计,为简便计,为简便计,内存变量常简称为变量,而字段变量内存变量常简称为变量,而字段变量内存变量常简称为变量,而字段变量内存变量常简称为变量,而字段变量则直接以字段来称呼则直接以字段来称呼则直接以字段来称呼则直接以字段来称呼。 编编号号号号名称名称名称名称启用日期启用日期启用日期启用日期价格价格价格价格部部部部门门主要主要主要主要设备设备备备注注注注商商商商标标016-1016-1016-1016-1车车床床床床03/05/9003/05/9003/05/9003/05/9062044.6162044.6162044.6162044.6121212121.T.T.T.T.MemoMemoMemoMemogengengengen016-2016-2016-2016-2车车床床床床01/15/9201/15/9201/15/9201/15/9227132.7327132.7327132.7327132.7321212121.T.T.T.T.memomemomemomemogengengengen037-2037-2037-2037-2磨床磨床磨床磨床07/21/9007/21/9007/21/9007/21/90241292.12241292.12241292.12241292.1222222222.T.T.T.T.memomemomemomemogengengengen384 4 4 4、系统变量、系统变量、系统变量、系统变量 Visual FoxPro Visual FoxPro Visual FoxPro Visual FoxPro 自动创建和命名的变量称为系自动创建和命名的变量称为系自动创建和命名的变量称为系自动创建和命名的变量称为系统变量,其以下划线作为开始字符。统变量,其以下划线作为开始字符。统变量,其以下划线作为开始字符。统变量,其以下划线作为开始字符。 系统变量用于处理各种系统信息。其具体内容系统变量用于处理各种系统信息。其具体内容系统变量用于处理各种系统信息。其具体内容系统变量用于处理各种系统信息。其具体内容可以查看系统的帮助文件可以查看系统的帮助文件可以查看系统的帮助文件可以查看系统的帮助文件MSDNMSDNMSDNMSDN。395 5 5 5、内存变量的显示、内存变量的显示、内存变量的显示、内存变量的显示 命令格式:命令格式:命令格式:命令格式: LIST|DISPLAY MEMORY LIKE LIST|DISPLAY MEMORY LIKE LIST|DISPLAY MEMORY LIKE LIST|DISPLAY MEMORY LIKE TO TO TO TO PRINTER PROMPT | PRINTER PROMPT | PRINTER PROMPT | PRINTER PROMPT | TO FILE FileNameTO FILE FileNameTO FILE FileNameTO FILE FileName 功能:显示当前已定义的内存变量名、作用范围、功能:显示当前已定义的内存变量名、作用范围、功能:显示当前已定义的内存变量名、作用范围、功能:显示当前已定义的内存变量名、作用范围、类型和值。类型和值。类型和值。类型和值。 40说明:说明:说明:说明:n nLIKELIKELIKELIKE子句表示将选出与通配符相匹配的内存变子句表示将选出与通配符相匹配的内存变子句表示将选出与通配符相匹配的内存变子句表示将选出与通配符相匹配的内存变量,通配符有量,通配符有量,通配符有量,通配符有? ? ? ?和和和和* * * *两种,前者代表单个字两种,前者代表单个字两种,前者代表单个字两种,前者代表单个字符,后者代表一个或多个字符。缺省该选项则符,后者代表一个或多个字符。缺省该选项则符,后者代表一个或多个字符。缺省该选项则符,后者代表一个或多个字符。缺省该选项则选出全部内存变量(此时包括系统内存变量)选出全部内存变量(此时包括系统内存变量)选出全部内存变量(此时包括系统内存变量)选出全部内存变量(此时包括系统内存变量)井同时显示当前内存变量总的个数、字节数井同时显示当前内存变量总的个数、字节数井同时显示当前内存变量总的个数、字节数井同时显示当前内存变量总的个数、字节数等。等。等。等。n n选项选项选项选项TO PRINTERTO PRINTERTO PRINTERTO PRINTER能将屏幕显示内容输出到打印能将屏幕显示内容输出到打印能将屏幕显示内容输出到打印能将屏幕显示内容输出到打印机,使用机,使用机,使用机,使用PROMPTPROMPTPROMPTPROMPT则能提供要否打印的提示窗则能提供要否打印的提示窗则能提供要否打印的提示窗则能提供要否打印的提示窗口。选项口。选项口。选项口。选项TO FILETO FILETO FILETO FILE(文件名)能将显示内容存入(文件名)能将显示内容存入(文件名)能将显示内容存入(文件名)能将显示内容存入文件。文件。文件。文件。41 例:例:例:例:list memorylist memorylist memorylist memory list memory like ? list memory like ? list memory like ? list memory like ?6 6 6 6、内存变量的清除、内存变量的清除、内存变量的清除、内存变量的清除 命令格式:命令格式:命令格式:命令格式:RELEASE RELEASE RELEASE RELEASE 内存变量名表内存变量名表内存变量名表内存变量名表RELEASE ALL LIKE RELEASE ALL LIKE RELEASE ALL LIKE RELEASE ALL LIKE | EXCEPT | EXCEPT | EXCEPT | EXCEPT 功能:从内存清除指定的内存变量。功能:从内存清除指定的内存变量。功能:从内存清除指定的内存变量。功能:从内存清除指定的内存变量。42三、运算符三、运算符三、运算符三、运算符 VFPVFPVFPVFP运算符共有运算符共有运算符共有运算符共有5 5 5 5种:算术、关系、逻辑、字符、种:算术、关系、逻辑、字符、种:算术、关系、逻辑、字符、种:算术、关系、逻辑、字符、日期与日期时间。日期与日期时间。日期与日期时间。日期与日期时间。 1 1 1 1、算术、关系、逻辑运算、算术、关系、逻辑运算、算术、关系、逻辑运算、算术、关系、逻辑运算 (1 1 1 1)算术运算的操作数必须是数值。运算的结)算术运算的操作数必须是数值。运算的结)算术运算的操作数必须是数值。运算的结)算术运算的操作数必须是数值。运算的结果也是数值。运算顺序是果也是数值。运算顺序是果也是数值。运算顺序是果也是数值。运算顺序是: : : : 先乘方、再乘除与取模、后加减,同一级别要从先乘方、再乘除与取模、后加减,同一级别要从先乘方、再乘除与取模、后加减,同一级别要从先乘方、再乘除与取模、后加减,同一级别要从左向右。有圆括号时圆括号内先算,若有圆括号嵌套左向右。有圆括号时圆括号内先算,若有圆括号嵌套左向右。有圆括号时圆括号内先算,若有圆括号嵌套左向右。有圆括号时圆括号内先算,若有圆括号嵌套则按先内后外次序处理。则按先内后外次序处理。则按先内后外次序处理。则按先内后外次序处理。 43(2 2 2 2)关系运算两操作数类型须一致。比较的结果是)关系运算两操作数类型须一致。比较的结果是)关系运算两操作数类型须一致。比较的结果是)关系运算两操作数类型须一致。比较的结果是逻辑值。逻辑值。逻辑值。逻辑值。n n数值型数据按数值大小进行比较;数值型数据按数值大小进行比较;数值型数据按数值大小进行比较;数值型数据按数值大小进行比较;n n日期型数据按年、月、日的先后进行比较;日期型数据按年、月、日的先后进行比较;日期型数据按年、月、日的先后进行比较;日期型数据按年、月、日的先后进行比较;n n字符型数据按相应位置上两个字符字符型数据按相应位置上两个字符字符型数据按相应位置上两个字符字符型数据按相应位置上两个字符ASCIIASCIIASCIIASCII码值的码值的码值的码值的大小进行比较。大小进行比较。大小进行比较。大小进行比较。 44 (3 3 3 3)逻辑运算的操作数须是能得出逻辑值的表)逻辑运算的操作数须是能得出逻辑值的表)逻辑运算的操作数须是能得出逻辑值的表)逻辑运算的操作数须是能得出逻辑值的表达式,运算结果也是逻辑值。若操作数类型不符要求,达式,运算结果也是逻辑值。若操作数类型不符要求,达式,运算结果也是逻辑值。若操作数类型不符要求,达式,运算结果也是逻辑值。若操作数类型不符要求,特会出现特会出现特会出现特会出现“操作符操作数类型不一致操作符操作数类型不一致操作符操作数类型不一致操作符操作数类型不一致”的出错提示。的出错提示。的出错提示。的出错提示。 关系运算常用来描述某种条件,而逻辑运算可用关系运算常用来描述某种条件,而逻辑运算可用关系运算常用来描述某种条件,而逻辑运算可用关系运算常用来描述某种条件,而逻辑运算可用于描述复合的条件。若两个条件中有一个成立便算成于描述复合的条件。若两个条件中有一个成立便算成于描述复合的条件。若两个条件中有一个成立便算成于描述复合的条件。若两个条件中有一个成立便算成立,应使用立,应使用立,应使用立,应使用OROROROR运算,而两个条件同时成立才算成立,运算,而两个条件同时成立才算成立,运算,而两个条件同时成立才算成立,运算,而两个条件同时成立才算成立,应使用应使用应使用应使用ANDANDANDAND运算,至于运算,至于运算,至于运算,至于NOTNOTNOTNOT则用于否定一个条件。则用于否定一个条件。则用于否定一个条件。则用于否定一个条件。 45 (4 4 4 4)表达式计算按优先级从高到低执行。)表达式计算按优先级从高到低执行。)表达式计算按优先级从高到低执行。)表达式计算按优先级从高到低执行。 (5 5 5 5)表达式值的类型决定了表达式的类型,运)表达式值的类型决定了表达式的类型,运)表达式值的类型决定了表达式的类型,运)表达式值的类型决定了表达式的类型,运算结果为数值的表达式称数值表达式,运算结果为算结果为数值的表达式称数值表达式,运算结果为算结果为数值的表达式称数值表达式,运算结果为算结果为数值的表达式称数值表达式,运算结果为逻辑值的表达式称逻辑表达式。逻辑值的表达式称逻辑表达式。逻辑值的表达式称逻辑表达式。逻辑值的表达式称逻辑表达式。462 2 2 2、字符、日期与日期时间运算、字符、日期与日期时间运算、字符、日期与日期时间运算、字符、日期与日期时间运算 (1 1 1 1)字符运算符)字符运算符)字符运算符)字符运算符 “ “ “ “”运算符:用于连接两个字符串。运算符:用于连接两个字符串。运算符:用于连接两个字符串。运算符:用于连接两个字符串。 “ “ “ “”运算符:用于连接两个字符串,并将前一运算符:用于连接两个字符串,并将前一运算符:用于连接两个字符串,并将前一运算符:用于连接两个字符串,并将前一个字符串尾部的空格移到结果字符串的尾部。个字符串尾部的空格移到结果字符串的尾部。个字符串尾部的空格移到结果字符串的尾部。个字符串尾部的空格移到结果字符串的尾部。 示例:示例:示例:示例: a1=a1=a1=a1=华侨大学华侨大学华侨大学华侨大学 a2=“ a2=“ a2=“ a2=“土木工程学院土木工程学院土木工程学院土木工程学院 ?a1+a2 ?a1+a2 ?a1+a2 ?a1+a2 ?a1-a2 ?a1-a2 ?a1-a2 ?a1-a2 a1= a1= a1= a1=华侨大学华侨大学华侨大学华侨大学 a2=“ a2=“ a2=“ a2=“ 土木工程学院土木工程学院土木工程学院土木工程学院 ?a1+a2 ?a1+a2 ?a1+a2 ?a1+a2 ?a1-a2 ?a1-a2 ?a1-a2 ?a1-a2 47(2 2 2 2)日期与日期时间运算符)日期与日期时间运算符)日期与日期时间运算符)日期与日期时间运算符 日期或日期时间的运算,以运算符日期或日期时间的运算,以运算符日期或日期时间的运算,以运算符日期或日期时间的运算,以运算符“”表示表示表示表示数据相加,以运算符数据相加,以运算符数据相加,以运算符数据相加,以运算符“”对日期型数据进行运算对日期型数据进行运算对日期型数据进行运算对日期型数据进行运算指日期的加减。指日期的加减。指日期的加减。指日期的加减。 48示例:示例:示例:示例: set strictdate to 0set strictdate to 0set strictdate to 0set strictdate to 0 set century on set century on set century on set century on ?date() & ?date() & ?date() & ?date() &取当前系统日期取当前系统日期取当前系统日期取当前系统日期 ?date()-20?date()-20?date()-20?date()-20 ?date()+20 ?date()+20 ?date()+20 ?date()+20 ?date()-09/14/73 & ?date()-09/14/73 & ?date()-09/14/73 & ?date()-09/14/73 &看看到今天一共过看看到今天一共过看看到今天一共过看看到今天一共过了多少天了多少天了多少天了多少天 ?09/14/2013 12:00:00am+20?09/14/2013 12:00:00am+20?09/14/2013 12:00:00am+20?09/14/2013 12:00:00am+2049四、函数四、函数四、函数四、函数 函数(函数(函数(函数( function function function function ):一个预先编制好的模块,):一个预先编制好的模块,):一个预先编制好的模块,):一个预先编制好的模块,可供可供可供可供 Visual FoxPro Visual FoxPro Visual FoxPro Visual FoxPro 程序在任何地方调用。函数可由程序在任何地方调用。函数可由程序在任何地方调用。函数可由程序在任何地方调用。函数可由 Visual FoxPro Visual FoxPro Visual FoxPro Visual FoxPro 提供,也可由用户定义。提供,也可由用户定义。提供,也可由用户定义。提供,也可由用户定义。 1 1 1 1、函数的要素、函数的要素、函数的要素、函数的要素 函数有函数名、参数和函数值函数有函数名、参数和函数值函数有函数名、参数和函数值函数有函数名、参数和函数值3 3 3 3个要素。个要素。个要素。个要素。 (1 1 1 1)函数名起标识作用)函数名起标识作用)函数名起标识作用)函数名起标识作用 (2 2 2 2)参数是自变量,一般是表达式,写在括号内)参数是自变量,一般是表达式,写在括号内)参数是自变量,一般是表达式,写在括号内)参数是自变量,一般是表达式,写在括号内 (3 3 3 3)函数运算后会返回一个值,称为函数值,这)函数运算后会返回一个值,称为函数值,这)函数运算后会返回一个值,称为函数值,这)函数运算后会返回一个值,称为函数值,这就是函数的功能,函数值会因参数值不同而异。就是函数的功能,函数值会因参数值不同而异。就是函数的功能,函数值会因参数值不同而异。就是函数的功能,函数值会因参数值不同而异。 有的函数缺省参数,称为哑参,但仍有返回值。有的函数缺省参数,称为哑参,但仍有返回值。有的函数缺省参数,称为哑参,但仍有返回值。有的函数缺省参数,称为哑参,但仍有返回值。如如如如EOFEOFEOFEOF()。()。()。()。 502 2 2 2、函数的类型、函数的类型、函数的类型、函数的类型 所谓函数类型就是函数值的类型。在表达式中所谓函数类型就是函数值的类型。在表达式中所谓函数类型就是函数值的类型。在表达式中所谓函数类型就是函数值的类型。在表达式中联入函数时须了解函数值的类型,免得发生效据类联入函数时须了解函数值的类型,免得发生效据类联入函数时须了解函数值的类型,免得发生效据类联入函数时须了解函数值的类型,免得发生效据类型不一致的错误。型不一致的错误。型不一致的错误。型不一致的错误。 使用使用使用使用TYPETYPETYPETYPE函数能返回表达式的类型,也能测出函数能返回表达式的类型,也能测出函数能返回表达式的类型,也能测出函数能返回表达式的类型,也能测出函数的类型。函数的类型。函数的类型。函数的类型。3 3 3 3、常用函数见表、常用函数见表、常用函数见表、常用函数见表2.72.72.72.7、2.82.82.82.8、2.92.92.92.9、2.102.102.102.10、2.112.112.112.1151五、五、五、五、VFPVFPVFPVFP命令常用子句命令常用子句命令常用子句命令常用子句 VFPVFPVFPVFP命令总是由一个命令动词开头,其后跟上若干命令总是由一个命令动词开头,其后跟上若干命令总是由一个命令动词开头,其后跟上若干命令总是由一个命令动词开头,其后跟上若干子句,用来说明命令的操作对象、操作结果和操作条件子句,用来说明命令的操作对象、操作结果和操作条件子句,用来说明命令的操作对象、操作结果和操作条件子句,用来说明命令的操作对象、操作结果和操作条件等信息。等信息。等信息。等信息。 子句子句子句子句: : : :附加在一条命令后的附加语句,用以给出执附加在一条命令后的附加语句,用以给出执附加在一条命令后的附加语句,用以给出执附加在一条命令后的附加语句,用以给出执行该命令的进一步指示。行该命令的进一步指示。行该命令的进一步指示。行该命令的进一步指示。 52命令格式:命令格式:命令格式:命令格式: LIST|DISPLAY FIELDS LIST|DISPLAY FIELDS LIST|DISPLAY FIELDS LIST|DISPLAY FIELDS FOR FOR FOR FOR WHILE WHILE WHILE WHILE OFF OFF OFF OFF TO PRINT PROMPT|TO FILE TO PRINT PROMPT|TO FILE TO PRINT PROMPT|TO FILE TO PRINT PROMPT|TO FILE (1 1 1 1)命令动词:命令动词是)命令动词:命令动词是)命令动词:命令动词是)命令动词:命令动词是VFPVFPVFPVFP的命令的名字的命令的名字的命令的名字的命令的名字 (2 2 2 2)范围子句:用来确定执行该命令涉及的记录,)范围子句:用来确定执行该命令涉及的记录,)范围子句:用来确定执行该命令涉及的记录,)范围子句:用来确定执行该命令涉及的记录, 53范围子句范围子句范围子句范围子句 : ALL ALL ALL ALL 所有记录所有记录所有记录所有记录 NEXT NEXT NEXT NEXT 从当前记录起的从当前记录起的从当前记录起的从当前记录起的N N N N个记录个记录个记录个记录 RECORD RECORD RECORD RECORD 第第第第N N N N个记录个记录个记录个记录 REST REST REST REST 从当前记录起到最后一个记录止的从当前记录起到最后一个记录止的从当前记录起到最后一个记录止的从当前记录起到最后一个记录止的所有记录所有记录所有记录所有记录54 (3 3 3 3)FORFORFORFOR子句的子句的子句的子句的 为逻辑表达式,它指定选为逻辑表达式,它指定选为逻辑表达式,它指定选为逻辑表达式,它指定选择记录的条件。若命令中还含有范围子句,则在指定择记录的条件。若命令中还含有范围子句,则在指定择记录的条件。若命令中还含有范围子句,则在指定择记录的条件。若命令中还含有范围子句,则在指定范围中筛选出符合条件的记录。范围中筛选出符合条件的记录。范围中筛选出符合条件的记录。范围中筛选出符合条件的记录。 (4 4 4 4)WHILEWHILEWHILEWHILE子句子句子句子句: : : :该子句也用于指明操作条件,该子句也用于指明操作条件,该子句也用于指明操作条件,该子句也用于指明操作条件,但它仅在当前记录符合条件时开始依次筛选记录,但它仅在当前记录符合条件时开始依次筛选记录,但它仅在当前记录符合条件时开始依次筛选记录,但它仅在当前记录符合条件时开始依次筛选记录,一旦遇到不满足条件的记录时就停止操作一旦遇到不满足条件的记录时就停止操作一旦遇到不满足条件的记录时就停止操作一旦遇到不满足条件的记录时就停止操作。 应注意,若一条命令中同时有应注意,若一条命令中同时有应注意,若一条命令中同时有应注意,若一条命令中同时有FORFORFORFOR与与与与WHILEWHILEWHILEWHILE子句则子句则子句则子句则优先处理后者。优先处理后者。优先处理后者。优先处理后者。 55示例:示例:示例:示例: list for list for list for list for 价格价格价格价格50000500005000050000 list for list for list for list for 价格价格价格价格50000500005000050000 &50000 &50000 &50000 &显示第一条记录,显示第一条记录,显示第一条记录,显示第一条记录,指针停在第二条记录指针停在第二条记录指针停在第二条记录指针停在第二条记录 go topgo topgo topgo top list while list while list while list while 价格价格价格价格50000 &50000 &50000 &50000 &没有记录显示,没有记录显示,没有记录显示,没有记录显示,指针停在第一条记录指针停在第一条记录指针停在第一条记录指针停在第一条记录56 (5 5 5 5)FIELDSFIELDSFIELDSFIELDS子句子句子句子句: : : :范围、范围、范围、范围、FORFORFORFOR与与与与WHILEWHILEWHILEWHILE子句都能将子句都能将子句都能将子句都能将表中需要操作的记录筛选出来,表中需要操作的记录筛选出来,表中需要操作的记录筛选出来,表中需要操作的记录筛选出来,FIELDSFIELDSFIELDSFIELDS子句则确定需子句则确定需子句则确定需子句则确定需要操作的字段。该子句的保留字要操作的字段。该子句的保留字要操作的字段。该子句的保留字要操作的字段。该子句的保留字FIELDSFIELDSFIELDSFIELDS可以缺省,而可以缺省,而可以缺省,而可以缺省,而 用来列出需要的字段,用来列出需要的字段,用来列出需要的字段,用来列出需要的字段,LISTLISTLISTLIST命令将按筛选命令将按筛选命令将按筛选命令将按筛选得到的记录依次算出表达式的值,并显示出来。得到的记录依次算出表达式的值,并显示出来。得到的记录依次算出表达式的值,并显示出来。得到的记录依次算出表达式的值,并显示出来。 FIELDSFIELDSFIELDSFIELDS子句缺省时显示除备注型、通用型字段外子句缺省时显示除备注型、通用型字段外子句缺省时显示除备注型、通用型字段外子句缺省时显示除备注型、通用型字段外的所有宇段。的所有宇段。的所有宇段。的所有宇段。 57 (6 6 6 6)为使用户能了解记录位置,)为使用户能了解记录位置,)为使用户能了解记录位置,)为使用户能了解记录位置,LISTLISTLISTLIST命令自动显命令自动显命令自动显命令自动显示记录号,若要求记录号不显示,只须在命令中使用示记录号,若要求记录号不显示,只须在命令中使用示记录号,若要求记录号不显示,只须在命令中使用示记录号,若要求记录号不显示,只须在命令中使用OFFOFFOFFOFF造项。造项。造项。造项。 (7 7 7 7)LISTLISTLISTLIST和和和和DISPLAYDISPLAYDISPLAYDISPLAY命令除命令动词外格式一致,命令除命令动词外格式一致,命令除命令动词外格式一致,命令除命令动词外格式一致,功能略有区别:前者以滚动方式输出,后者则为分屏功能略有区别:前者以滚动方式输出,后者则为分屏功能略有区别:前者以滚动方式输出,后者则为分屏功能略有区别:前者以滚动方式输出,后者则为分屏输出;在缺省范围时,前者默认所有记录后者只指输出;在缺省范围时,前者默认所有记录后者只指输出;在缺省范围时,前者默认所有记录后者只指输出;在缺省范围时,前者默认所有记录后者只指当前一个记录。当前一个记录。当前一个记录。当前一个记录。58例:例:例:例: USE SHBUSE SHBUSE SHBUSE SHB GO 2 & GO 2 & GO 2 & GO 2 & 记录指针指向第记录指针指向第记录指针指向第记录指针指向第2 2 2 2个记录个记录个记录个记录 LIST NEXT 5 FOR LIST NEXT 5 FOR LIST NEXT 5 FOR LIST NEXT 5 FOR 价格价格价格价格10000 & 10000 & 10000 & 10000 & 显示第显示第显示第显示第2,3,62,3,62,3,62,3,6等等等等3 3 3 3个记录个记录个记录个记录 LIST RECORD 5 FIELDS LIST RECORD 5 FIELDS LIST RECORD 5 FIELDS LIST RECORD 5 FIELDS 编号编号编号编号, , , ,名称名称名称名称, , , ,价格价格价格价格 LIST NEXT 3 & LIST NEXT 3 & LIST NEXT 3 & LIST NEXT 3 & 显示从当前位置开始的显示从当前位置开始的显示从当前位置开始的显示从当前位置开始的3 3 3 3个记录,个记录,个记录,个记录,要注意指针所在位置要注意指针所在位置要注意指针所在位置要注意指针所在位置 LIST LIST LIST LIST 部门部门部门部门, , , ,编号编号编号编号, , , ,名称名称名称名称, , , ,备注备注备注备注 FOR FOR FOR FOR 部门部门部门部门= = = =“ “21212121” ” LIST LIST LIST LIST 编号编号编号编号, , , ,名称名称名称名称, , , ,价格价格价格价格* * * *0.9,0.9,0.9,0.9,起用日期起用日期起用日期起用日期 FOR YEAR(FOR YEAR(FOR YEAR(FOR YEAR(起起起起用日期用日期用日期用日期)1995 OFF)1995 OFF)1995 OFF)1995 OFF592 2 2 2、命令和子句的书写规则、命令和子句的书写规则、命令和子句的书写规则、命令和子句的书写规则 (1 1 1 1)命令动词与子句、子句与子句、子句内的)命令动词与子句、子句与子句、子句内的)命令动词与子句、子句与子句、子句内的)命令动词与子句、子句与子句、子句内的各部分(如各部分(如各部分(如各部分(如NEXTNEXTNEXTNEXT与与与与3 3 3 3,FORFORFORFOR与条件)之间必须用空格与条件)之间必须用空格与条件)之间必须用空格与条件)之间必须用空格隔开,但各子句的次序允许任意排列。隔开,但各子句的次序允许任意排列。隔开,但各子句的次序允许任意排列。隔开,但各子句的次序允许任意排列。 (2 2 2 2)命令动词与各子句中的保留字,包括以后)命令动词与各子句中的保留字,包括以后)命令动词与各子句中的保留字,包括以后)命令动词与各子句中的保留字,包括以后将介绍的函数名都可简写为前将介绍的函数名都可简写为前将介绍的函数名都可简写为前将介绍的函数名都可简写为前4 4 4 4个字符,而且对其中个字符,而且对其中个字符,而且对其中个字符,而且对其中出现的英文字母,使用大小写等效。例如出现的英文字母,使用大小写等效。例如出现的英文字母,使用大小写等效。例如出现的英文字母,使用大小写等效。例如MODIFY MODIFY MODIFY MODIFY STRUCTURESTRUCTURESTRUCTURESTRUCTURE只需表达为只需表达为只需表达为只需表达为MODI STRUMODI STRUMODI STRUMODI STRU。 60 (3 3 3 3)一条命令的长度可达)一条命令的长度可达)一条命令的长度可达)一条命令的长度可达8192819281928192个字符。若一行个字符。若一行个字符。若一行个字符。若一行写不下,可在适当位置控入续行符写不下,可在适当位置控入续行符写不下,可在适当位置控入续行符写不下,可在适当位置控入续行符“;”并回车并回车并回车并回车然后在下一行继续键入该命令。然后在下一行继续键入该命令。然后在下一行继续键入该命令。然后在下一行继续键入该命令。 (4 4 4 4)命令或函数格式中以)命令或函数格式中以)命令或函数格式中以)命令或函数格式中以“| | | |” ”分隔的两项表分隔的两项表分隔的两项表分隔的两项表示两者之中只选其一。用中括号示两者之中只选其一。用中括号示两者之中只选其一。用中括号示两者之中只选其一。用中括号“” ”括起来的部括起来的部括起来的部括起来的部分表示可选项。用尖括号分表示可选项。用尖括号分表示可选项。用尖括号分表示可选项。用尖括号“” ”括起来的部分表示括起来的部分表示括起来的部分表示括起来的部分表示由用户定义的内容。但这些符号并非命令或函数的由用户定义的内容。但这些符号并非命令或函数的由用户定义的内容。但这些符号并非命令或函数的由用户定义的内容。但这些符号并非命令或函数的组成都分。组成都分。组成都分。组成都分。612.3 2.3 表的维护命令表的维护命令一、表与表结构的复制一、表与表结构的复制一、表与表结构的复制一、表与表结构的复制 1 1 1 1、复制任何文件、复制任何文件、复制任何文件、复制任何文件 命令格式:命令格式:命令格式:命令格式: COPY FILE COPY FILE COPY FILE COPY FILE TO TO TO TO 222 说明:说明:说明:说明: (1 1 1 1)若对表进行复制,该表必须处于关闭状态。)若对表进行复制,该表必须处于关闭状态。)若对表进行复制,该表必须处于关闭状态。)若对表进行复制,该表必须处于关闭状态。 (2 2 2 2) 111和和和和 222都可使用遇配符都可使用遇配符都可使用遇配符都可使用遇配符* * * *号和号和号和号和? ? ? ?号。号。号。号。 622 2 2 2、从表复制出表或其它类型的文件、从表复制出表或其它类型的文件、从表复制出表或其它类型的文件、从表复制出表或其它类型的文件 复制命令:复制命令:复制命令:复制命令: COPY TO COPY TO COPY TO COPY TO FOR FOR FOR FOR WHILE WHILE WHILE WHILE FIELDS FIELDS FIELDS FIELDS | FIELDS | FIELDS | FIELDS | FIELDS LIKE LIKE LIKE LIKE | FIELDS EXCEPT | FIELDS EXCEPT | FIELDS EXCEPT | FIELDS EXCEPT TYPESDF|XLS|DELIMITEDWITH TYPESDF|XLS|DELIMITEDWITH TYPESDF|XLS|DELIMITEDWITH TYPESDF|XLS|DELIMITEDWITH |WITH BLANK|WITH TAB|WITH BLANK|WITH TAB|WITH BLANK|WITH TAB|WITH BLANK|WITH TAB 功能:将当前表中选定的部分记录和部分字段功能:将当前表中选定的部分记录和部分字段功能:将当前表中选定的部分记录和部分字段功能:将当前表中选定的部分记录和部分字段复制成一个新表或其它类型的文件。复制成一个新表或其它类型的文件。复制成一个新表或其它类型的文件。复制成一个新表或其它类型的文件。 63说明:说明:说明:说明: (1 1 1 1)对于含有备注型字段的表,系统在复制扩)对于含有备注型字段的表,系统在复制扩)对于含有备注型字段的表,系统在复制扩)对于含有备注型字段的表,系统在复制扩展名为展名为展名为展名为DBFDBFDBFDBF的文件的同时自动复制扩为的文件的同时自动复制扩为的文件的同时自动复制扩为的文件的同时自动复制扩为.FPT.FPT.FPT.FPT的备注文的备注文的备注文的备注文件。件。件。件。 (2 2 2 2)复制所得的新表必须被打开,也即被选作)复制所得的新表必须被打开,也即被选作)复制所得的新表必须被打开,也即被选作)复制所得的新表必须被打开,也即被选作为当前表后才可进行操作。为当前表后才可进行操作。为当前表后才可进行操作。为当前表后才可进行操作。 (3 3 3 3) 指表示字段名时可以使用通指表示字段名时可以使用通指表示字段名时可以使用通指表示字段名时可以使用通配符配符配符配符“* * * *”和和和和“?”,FIELDS LIKEFIELDS LIKEFIELDS LIKEFIELDS LIKE表示取表示取表示取表示取 指出的字段,指出的字段,指出的字段,指出的字段,FIELDS EXCEPTFIELDS EXCEPTFIELDS EXCEPTFIELDS EXCEPT表示取表示取表示取表示取 外的字段。外的字段。外的字段。外的字段。 (4 4 4 4)新文件的类型除了可以是表外,还可以是)新文件的类型除了可以是表外,还可以是)新文件的类型除了可以是表外,还可以是)新文件的类型除了可以是表外,还可以是文本文件或文本文件或文本文件或文本文件或ExcelExcelExcelExcel文件。文件。文件。文件。64示例:示例:示例:示例:copy to shb.xls type xls © to shb.xls type xls © to shb.xls type xls © to shb.xls type xls &将表复制成将表复制成将表复制成将表复制成EXCELEXCELEXCELEXCEL文件文件文件文件copy to shb.txt type delimited with tab © to shb.txt type delimited with tab © to shb.txt type delimited with tab © to shb.txt type delimited with tab &将表复制成文本文件,用将表复制成文本文件,用将表复制成文本文件,用将表复制成文本文件,用TABTABTABTAB表示分隔符。表示分隔符。表示分隔符。表示分隔符。653 3 3 3、复制表的结构、复制表的结构、复制表的结构、复制表的结构 命令格式:命令格式:命令格式:命令格式:COPY STRUCTURE TO COPY STRUCTURE TO COPY STRUCTURE TO COPY STRUCTURE TO (文件名)(文件名)(文件名)(文件名)FIELDSFIELDSFIELDSFIELDS(字段名表)(字段名表)(字段名表)(字段名表) 功能:仅复制当前表的结构,不复制其中的数功能:仅复制当前表的结构,不复制其中的数功能:仅复制当前表的结构,不复制其中的数功能:仅复制当前表的结构,不复制其中的数据。若使用据。若使用据。若使用据。若使用FIELDSFIELDSFIELDSFIELDS选项,只包含其指明的字段,同选项,只包含其指明的字段,同选项,只包含其指明的字段,同选项,只包含其指明的字段,同时也决定了这些字段在新表中的排列次序。时也决定了这些字段在新表中的排列次序。时也决定了这些字段在新表中的排列次序。时也决定了这些字段在新表中的排列次序。 664 4 4 4、其它文件操作命令、其它文件操作命令、其它文件操作命令、其它文件操作命令 VFPVFPVFPVFP除能复制各类文件外,还提供文件改名、删除能复制各类文件外,还提供文件改名、删除能复制各类文件外,还提供文件改名、删除能复制各类文件外,还提供文件改名、删除、显示等功能,除、显示等功能,除、显示等功能,除、显示等功能, (1 1 1 1)更名命令:)更名命令:)更名命令:)更名命令:RENAME RENAME RENAME RENAME 文件名文件名文件名文件名1 1 1 1 TO TO TO TO 文件名文件名文件名文件名2 2 2 2 (2 2 2 2)删除命令:)删除命令:)删除命令:)删除命令:DELETE FILE DELETE FILE DELETE FILE DELETE FILE 文件名文件名文件名文件名| ? | ? | ? | ? RECYCLERECYCLERECYCLERECYCLE (3 3 3 3)显示:)显示:)显示:)显示:TYPETYPETYPETYPE67二、记录指针移动二、记录指针移动二、记录指针移动二、记录指针移动 在表中存取数据,往往先要进行记录定位。记在表中存取数据,往往先要进行记录定位。记在表中存取数据,往往先要进行记录定位。记在表中存取数据,往往先要进行记录定位。记录定位就是将记录指针指向某个记录,使之成为当录定位就是将记录指针指向某个记录,使之成为当录定位就是将记录指针指向某个记录,使之成为当录定位就是将记录指针指向某个记录,使之成为当前记录,前记录,前记录,前记录,RECNORECNORECNORECNO()函数的值就是当前记录的记录号。()函数的值就是当前记录的记录号。()函数的值就是当前记录的记录号。()函数的值就是当前记录的记录号。表打开时,记录指针总是指向第一条记录。表打开时,记录指针总是指向第一条记录。表打开时,记录指针总是指向第一条记录。表打开时,记录指针总是指向第一条记录。 1 1 1 1、记录定位命令、记录定位命令、记录定位命令、记录定位命令GO RECORD nRecordNumber GO RECORD nRecordNumber GO RECORD nRecordNumber GO RECORD nRecordNumber GO TOP | BOTTOMGO TOP | BOTTOMGO TOP | BOTTOMGO TOP | BOTTOM 68说明:说明:说明:说明: (1 1 1 1)“GO TOPGO TOPGO TOPGO TOP”将记录指针指向表的第一个记录。将记录指针指向表的第一个记录。将记录指针指向表的第一个记录。将记录指针指向表的第一个记录。 (2 2 2 2)“GO BOTTOMGO BOTTOMGO BOTTOMGO BOTTOM”将记录指针指向表的最后一个将记录指针指向表的最后一个将记录指针指向表的最后一个将记录指针指向表的最后一个记录。记录。记录。记录。 (3 3 3 3)“GO GO GO GO ”将记录指针指向表的某将记录指针指向表的某将记录指针指向表的某将记录指针指向表的某记录,记录,记录,记录, 指出改记录的记录号。指出改记录的记录号。指出改记录的记录号。指出改记录的记录号。69 2 2 2 2、记录移位命令、记录移位命令、记录移位命令、记录移位命令 命令格式:命令格式:命令格式:命令格式:SKIP nRecords SKIP nRecords SKIP nRecords SKIP nRecords 功能:从当前记录开始移动记录指针功能:从当前记录开始移动记录指针功能:从当前记录开始移动记录指针功能:从当前记录开始移动记录指针 表示移位记录的个数;表示移位记录的个数;表示移位记录的个数;表示移位记录的个数; 说明:说明:说明:说明: 负值表示向文件头移位,否则表示向文件尾部负值表示向文件头移位,否则表示向文件尾部负值表示向文件头移位,否则表示向文件尾部负值表示向文件头移位,否则表示向文件尾部移位;移位;移位;移位; 缺省等同于缺省等同于缺省等同于缺省等同于 的值的值的值的值为为为为1 1 1 1。70三、记录的插入与追加三、记录的插入与追加三、记录的插入与追加三、记录的插入与追加 1 1 1 1、插入新记录:、插入新记录:、插入新记录:、插入新记录:INSERTINSERTINSERTINSERT命令用来插入表记录。命令用来插入表记录。命令用来插入表记录。命令用来插入表记录。 命令格式;命令格式;命令格式;命令格式;INSERT BEFORE BLANKINSERT BEFORE BLANKINSERT BEFORE BLANKINSERT BEFORE BLANK 作用:在当前记录之后插入一条记录。作用:在当前记录之后插入一条记录。作用:在当前记录之后插入一条记录。作用:在当前记录之后插入一条记录。 说明:说明:说明:说明: (1 1 1 1)使用)使用)使用)使用BEFOREBEFOREBEFOREBEFORE子句能在当前记录前插入新记录。子句能在当前记录前插入新记录。子句能在当前记录前插入新记录。子句能在当前记录前插入新记录。 (2 2 2 2)使用)使用)使用)使用BLANKBLANKBLANKBLANK子句立即插入一条空白记录,缺子句立即插入一条空白记录,缺子句立即插入一条空白记录,缺子句立即插入一条空白记录,缺省该子句则出现编辑窗口,等待用户输入记录。省该子句则出现编辑窗口,等待用户输入记录。省该子句则出现编辑窗口,等待用户输入记录。省该子句则出现编辑窗口,等待用户输入记录。 712 2 2 2、INSERTINSERTINSERTINSERTSQLSQLSQLSQL命令命令命令命令 命令格式;命令格式;命令格式;命令格式; INSERT INSERT INSERT INSERT INTO INTO INTO INTO 表表表表名名名名 (字字字字段段段段名名名名1 1 1 1 , , , , 字字字字段段段段名名名名, , , , .) VALUES VALUES VALUES VALUES (表达式(表达式(表达式(表达式1 , 1 , 1 , 1 , 表达式表达式表达式表达式2, .2, .2, .2, .) 功功功功能能能能:在在在在表表表表尾尾尾尾追追追追加加加加一一一一个个个个新新新新记记记记录录录录,并并并并直直直直接接接接输输输输入入入入记记记记录数据。录数据。录数据。录数据。 说明:说明:说明:说明: (1 1 1 1)表表表表不不不不必必必必事事事事先先先先行行行行开开开开字字字字段段段段与与与与表表表表达达达达式式式式的的的的类类类类型型型型必必必必须相同。须相同。须相同。须相同。 (2 2 2 2)若若若若字字字字段段段段名名名名全全全全部部部部缺缺缺缺省省省省,就就就就须须须须按按按按表表表表结结结结构构构构字字字字段段段段顺顺顺顺序序序序填填填填写写写写VALUESVALUESVALUESVALUES子子子子句句句句的的的的所所所所有有有有表表表表达达达达式式式式追追追追加加加加新新新新记记记记录录录录时时时时还还还还可可可可将数组或内存变量的值填入该记录之中。将数组或内存变量的值填入该记录之中。将数组或内存变量的值填入该记录之中。将数组或内存变量的值填入该记录之中。72 示例:示例:示例:示例:insert into shb (insert into shb (insert into shb (insert into shb (编号编号编号编号, , , ,名称名称名称名称, , , ,起用日期起用日期起用日期起用日期, , , ,价格价格价格价格) ) ) ); values (210-2,values (210-2,values (210-2,values (210-2,越野车越野车越野车越野车,09/03/98,512345),09/03/98,512345),09/03/98,512345),09/03/98,512345) 若要添加的内容已经保存在数组中,可以使用以下命令,若要添加的内容已经保存在数组中,可以使用以下命令,若要添加的内容已经保存在数组中,可以使用以下命令,若要添加的内容已经保存在数组中,可以使用以下命令, 命令格式:命令格式:命令格式:命令格式:INSERT INTO INSERT INTO INSERT INTO INSERT INTO 表名表名表名表名 FROM ARRAY FROM ARRAY FROM ARRAY FROM ARRAY 数组名数组名数组名数组名 | FROM | FROM | FROM | FROM MEMVARMEMVARMEMVARMEMVAR说明;说明;说明;说明; (1 1 1 1)数组元素依次填入新加的记录之中。)数组元素依次填入新加的记录之中。)数组元素依次填入新加的记录之中。)数组元素依次填入新加的记录之中。 (2 2 2 2)若存在与字段同名的内存变量,则它的值填入新加的)若存在与字段同名的内存变量,则它的值填入新加的)若存在与字段同名的内存变量,则它的值填入新加的)若存在与字段同名的内存变量,则它的值填入新加的记录之中。记录之中。记录之中。记录之中。733 3 3 3、APPENDAPPENDAPPENDAPPEND命令命令命令命令 APPENDAPPENDAPPENDAPPEND命令也可命令也可命令也可命令也可在表尾追加记录(注意与在表尾追加记录(注意与在表尾追加记录(注意与在表尾追加记录(注意与INSERTINSERTINSERTINSERT的差别)的差别)的差别)的差别),但它只可追加空白记录或以交互方式填写,但它只可追加空白记录或以交互方式填写,但它只可追加空白记录或以交互方式填写,但它只可追加空白记录或以交互方式填写记录数据。记录数据。记录数据。记录数据。 命令格式:命令格式:命令格式:命令格式:APPEND BLANKAPPEND BLANKAPPEND BLANKAPPEND BLANK 说明:说明:说明:说明: (1 1 1 1)使用)使用)使用)使用BLANKBLANKBLANKBLANK子句能在表尾追加一条空白记录,子句能在表尾追加一条空白记录,子句能在表尾追加一条空白记录,子句能在表尾追加一条空白记录,留待以后填入数据。留待以后填入数据。留待以后填入数据。留待以后填入数据。 (2 2 2 2)若缺省)若缺省)若缺省)若缺省BLANKBLANKBLANKBLANK子句就会出现记录编辑窗口,子句就会出现记录编辑窗口,子句就会出现记录编辑窗口,子句就会出现记录编辑窗口,并且窗口内会有空白的记录位置等待用户输入数据。并且窗口内会有空白的记录位置等待用户输入数据。并且窗口内会有空白的记录位置等待用户输入数据。并且窗口内会有空白的记录位置等待用户输入数据。 744 4 4 4、APPEND FROMAPPEND FROMAPPEND FROMAPPEND FROM命令命令命令命令 该命令用于追加成批记录该命令用于追加成批记录该命令用于追加成批记录该命令用于追加成批记录 命令格式:命令格式:命令格式:命令格式: APPEND FROM APPEND FROM APPEND FROM APPEND FROM 文件名文件名文件名文件名 FIELDS FIELDS FIELDS FIELDS 字段列表字段列表字段列表字段列表 FOR FOR FOR FOR TYPE DELIMITED WITH TYPE DELIMITED WITH TYPE DELIMITED WITH TYPE DELIMITED WITH | | | | WITH BLANK | WITH TAB SDF| XLSWITH BLANK | WITH TAB SDF| XLSWITH BLANK | WITH TAB SDF| XLSWITH BLANK | WITH TAB SDF| XLS 功能:在当前表末尾追加一批记录,这些记录功能:在当前表末尾追加一批记录,这些记录功能:在当前表末尾追加一批记录,这些记录功能:在当前表末尾追加一批记录,这些记录来自于另一文件。来自于另一文件。来自于另一文件。来自于另一文件。 说明:说明:说明:说明: (1 1 1 1)源文件的类型可以是表,也可以是系统数)源文件的类型可以是表,也可以是系统数)源文件的类型可以是表,也可以是系统数)源文件的类型可以是表,也可以是系统数据格式、定界格式等文本文件,或据格式、定界格式等文本文件,或据格式、定界格式等文本文件,或据格式、定界格式等文本文件,或ExcelExcelExcelExcel文件。文件。文件。文件。 (2 2 2 2)执行该命令时源文件不需打开。)执行该命令时源文件不需打开。)执行该命令时源文件不需打开。)执行该命令时源文件不需打开。75四、表记录的删除和恢复四、表记录的删除和恢复四、表记录的删除和恢复四、表记录的删除和恢复 1 1 1 1、记录逻辑删除命令、记录逻辑删除命令、记录逻辑删除命令、记录逻辑删除命令 命令格式:命令格式:命令格式:命令格式:DELETE DELETE DELETE DELETE FOR FOR FOR FOR WHILE WHILE WHILE WHILE 功能:对当前表在指定功能:对当前表在指定功能:对当前表在指定功能:对当前表在指定 内满足内满足内满足内满足 的的的的记录加上删除标记。若不选只指当前记录。记录加上删除标记。若不选只指当前记录。记录加上删除标记。若不选只指当前记录。记录加上删除标记。若不选只指当前记录。 示例:示例:示例:示例: delete all for delete all for delete all for delete all for 名称名称名称名称=车床车床车床车床 delete all for delete all for delete all for delete all for 价格价格价格价格50000500005000050000 delete all for .not. delete all for .not. delete all for .not. delete all for .not.主要设备主要设备主要设备主要设备 &删除所删除所删除所删除所有非主要设备有非主要设备有非主要设备有非主要设备 76提示:提示:提示:提示:1 1 1 1、记录删除分、记录删除分、记录删除分、记录删除分逻辑删除逻辑删除逻辑删除逻辑删除和和和和物理删除物理删除物理删除物理删除两种。两种。两种。两种。 逻辑删除并未将记录真正的删除,只是作了一逻辑删除并未将记录真正的删除,只是作了一逻辑删除并未将记录真正的删除,只是作了一逻辑删除并未将记录真正的删除,只是作了一个删除标志。物理删除才是将记录真正的从数据文个删除标志。物理删除才是将记录真正的从数据文个删除标志。物理删除才是将记录真正的从数据文个删除标志。物理删除才是将记录真正的从数据文件中删除。件中删除。件中删除。件中删除。2 2 2 2、 SET DELETED ON | OFFSET DELETED ON | OFFSET DELETED ON | OFFSET DELETED ON | OFF 指定系统是否处理被添加删除标志的记录,即指定系统是否处理被添加删除标志的记录,即指定系统是否处理被添加删除标志的记录,即指定系统是否处理被添加删除标志的记录,即是否可以用其他命令操作它们。设置为是否可以用其他命令操作它们。设置为是否可以用其他命令操作它们。设置为是否可以用其他命令操作它们。设置为ONONONON,则忽略,则忽略,则忽略,则忽略这些记录;设置为这些记录;设置为这些记录;设置为这些记录;设置为OFFOFFOFFOFF,则不能忽略,即可以操作它,则不能忽略,即可以操作它,则不能忽略,即可以操作它,则不能忽略,即可以操作它们。们。们。们。77go bottomgo bottomgo bottomgo bottomdeletedeletedeletedeletebrowbrowbrowbrowrecallrecallrecallrecallbrowbrowbrowbrowdeletedeletedeletedeleteset deleted onset deleted onset deleted onset deleted onbrowbrowbrowbrowset deleted offset deleted offset deleted offset deleted offbrowbrowbrowbrow78 2 2 2 2、记录物理删除命令、记录物理删除命令、记录物理删除命令、记录物理删除命令 命令格式:命令格式:命令格式:命令格式:PACKPACKPACKPACK 功能:从物理上删除,也即真正删除带有删除功能:从物理上删除,也即真正删除带有删除功能:从物理上删除,也即真正删除带有删除功能:从物理上删除,也即真正删除带有删除标记的记录。标记的记录。标记的记录。标记的记录。 3 3 3 3、记录恢复命令、记录恢复命令、记录恢复命令、记录恢复命令 记录的恢复是指去掉删除标记,但已被物理删记录的恢复是指去掉删除标记,但已被物理删记录的恢复是指去掉删除标记,但已被物理删记录的恢复是指去掉删除标记,但已被物理删除的记录是不可恢复的。除的记录是不可恢复的。除的记录是不可恢复的。除的记录是不可恢复的。RECALLScope FOR lExpression1 WHILE RECALLScope FOR lExpression1 WHILE RECALLScope FOR lExpression1 WHILE RECALLScope FOR lExpression1 WHILE lExpression2lExpression2lExpression2lExpression2 功能;对当前表在指定功能;对当前表在指定功能;对当前表在指定功能;对当前表在指定 内满足内满足内满足内满足 的的的的记录去掉删除标记。若可选项都缺省只恢复当前记记录去掉删除标记。若可选项都缺省只恢复当前记记录去掉删除标记。若可选项都缺省只恢复当前记记录去掉删除标记。若可选项都缺省只恢复当前记录。录。录。录。 示例:示例:示例:示例:recall all for .not.recall all for .not.recall all for .not.recall all for .not.主要设备主要设备主要设备主要设备 79 4 4 4 4、记录清除命令、记录清除命令、记录清除命令、记录清除命令 命令格式:命令格式:命令格式:命令格式:ZAPZAPZAPZAP 功能;物理删除当前表中的所有记录。功能;物理删除当前表中的所有记录。功能;物理删除当前表中的所有记录。功能;物理删除当前表中的所有记录。80五、表数据的替换五、表数据的替换五、表数据的替换五、表数据的替换 1 1 1 1、成批修改数据、成批修改数据、成批修改数据、成批修改数据 在浏览您口中修改数据必须由用户键入修改值,在浏览您口中修改数据必须由用户键入修改值,在浏览您口中修改数据必须由用户键入修改值,在浏览您口中修改数据必须由用户键入修改值,而而而而REPLACEREPLACEREPLACEREPLACE命令能直接将字段位用指定的表达式值来命令能直接将字段位用指定的表达式值来命令能直接将字段位用指定的表达式值来命令能直接将字段位用指定的表达式值来替换。因此在程序设计中常使用该命令。替换。因此在程序设计中常使用该命令。替换。因此在程序设计中常使用该命令。替换。因此在程序设计中常使用该命令。 命令格式:命令格式:命令格式:命令格式:REPLACE REPLACE REPLACE REPLACE 字段名字段名字段名字段名1 WITH 1 WITH 1 WITH 1 WITH 表达式表达式表达式表达式1 ADDITIVE , 1 ADDITIVE , 1 ADDITIVE , 1 ADDITIVE , 字字字字段名段名段名段名2 WITH 2 WITH 2 WITH 2 WITH 表达式表达式表达式表达式2 ADDITIVE . 2 ADDITIVE . 2 ADDITIVE . 2 ADDITIVE . FOR FOR FOR FOR WHILE WHILE WHILE WHILE 功能:在当前表的指定记录中,特有关字段的功能:在当前表的指定记录中,特有关字段的功能:在当前表的指定记录中,特有关字段的功能:在当前表的指定记录中,特有关字段的值用相应的表达式值来替换。若值用相应的表达式值来替换。若值用相应的表达式值来替换。若值用相应的表达式值来替换。若 与与与与 等等等等选项都缺省,只对当前记录的有关字段进行替换。选项都缺省,只对当前记录的有关字段进行替换。选项都缺省,只对当前记录的有关字段进行替换。选项都缺省,只对当前记录的有关字段进行替换。 81说明:说明:说明:说明: (1 1 1 1)该命令对)该命令对)该命令对)该命令对 内符合内符合内符合内符合 的记录用的记录用的记录用的记录用 iii的值来替换的值来替换的值来替换的值来替换 iii的值。的值。的值。的值。 (2 2 2 2)ADDITIVEADDITIVEADDITIVEADDITIVE用于备注型字段,表示将表达式用于备注型字段,表示将表达式用于备注型字段,表示将表达式用于备注型字段,表示将表达式值添加到字段的原有内容后,而不是替代。值添加到字段的原有内容后,而不是替代。值添加到字段的原有内容后,而不是替代。值添加到字段的原有内容后,而不是替代。82replace replace replace replace 价格价格价格价格 with with with with 价格价格价格价格-1000, -1000, -1000, -1000, 部门部门部门部门 with with with with “ “11111111” ” for for for for 主要设备主要设备主要设备主要设备Append BlankAppend BlankAppend BlankAppend Blankreplace replace replace replace 编号编号编号编号 with 201-3,with 201-3,with 201-3,with 201-3,部门部门部门部门 with 11with 11with 11with 1183 2 2 2 2、单个记录与数组间的数据传送、单个记录与数组间的数据传送、单个记录与数组间的数据传送、单个记录与数组间的数据传送 在在在在VFPVFPVFPVFP中,数组元素值或内存变量值能传送到表中,数组元素值或内存变量值能传送到表中,数组元素值或内存变量值能传送到表中,数组元素值或内存变量值能传送到表内以替代记录中的数据,反之,记录中的数据也可以内以替代记录中的数据,反之,记录中的数据也可以内以替代记录中的数据,反之,记录中的数据也可以内以替代记录中的数据,反之,记录中的数据也可以送入数组或内存变量。送入数组或内存变量。送入数组或内存变量。送入数组或内存变量。 (1 1 1 1)将记录传送到数组或内存变量)将记录传送到数组或内存变量)将记录传送到数组或内存变量)将记录传送到数组或内存变量 命令格式:命令格式:命令格式:命令格式:SCATTER FIELDS SCATTER FIELDS SCATTER FIELDS SCATTER FIELDS | FIELDS LIKE | FIELDS LIKE | FIELDS LIKE | FIELDS LIKE | FIELDS EXCEPT | FIELDS EXCEPT | FIELDS EXCEPT | FIELDS EXCEPT MEMO MEMO MEMO MEMO TO TO TO TO BLANK | MEMVAR BLANK BLANK | MEMVAR BLANK BLANK | MEMVAR BLANK BLANK | MEMVAR BLANK 作用:将当前记录的字段值按作用:将当前记录的字段值按作用:将当前记录的字段值按作用:将当前记录的字段值按 的顺序的顺序的顺序的顺序依次送入数组元素或一组内存变量中。依次送入数组元素或一组内存变量中。依次送入数组元素或一组内存变量中。依次送入数组元素或一组内存变量中。 84说明:说明:说明:说明:n n使用使用使用使用MEMVARMEMVARMEMVARMEMVAR能将数据复制到一组内存变量之中。能将数据复制到一组内存变量之中。能将数据复制到一组内存变量之中。能将数据复制到一组内存变量之中。这些内存变量由系统自动建立,每一个内存变这些内存变量由系统自动建立,每一个内存变这些内存变量由系统自动建立,每一个内存变这些内存变量由系统自动建立,每一个内存变量与相应字段的名称、类型、大小完全相同,量与相应字段的名称、类型、大小完全相同,量与相应字段的名称、类型、大小完全相同,量与相应字段的名称、类型、大小完全相同,为与字段变量相区分,使用时可在其前加上为与字段变量相区分,使用时可在其前加上为与字段变量相区分,使用时可在其前加上为与字段变量相区分,使用时可在其前加上m m m m。n n使用使用使用使用TOTOTOTO 子句能将数据复制到子句能将数据复制到子句能将数据复制到子句能将数据复制到 所示的数组元素中。所示的数组元素中。所示的数组元素中。所示的数组元素中。VFPVFPVFPVFP会自动建立数组,或自会自动建立数组,或自会自动建立数组,或自会自动建立数组,或自动扩大虽已存在但却不够大的数组。动扩大虽已存在但却不够大的数组。动扩大虽已存在但却不够大的数组。动扩大虽已存在但却不够大的数组。n n若缺省若缺省若缺省若缺省FIELDSFIELDSFIELDSFIELDS子句,只传递备注型字段外所有子句,只传递备注型字段外所有子句,只传递备注型字段外所有子句,只传递备注型字段外所有字段的值。若要传递备注型字段值,还需使用字段的值。若要传递备注型字段值,还需使用字段的值。若要传递备注型字段值,还需使用字段的值。若要传递备注型字段值,还需使用MEMOMEMOMEMOMEMO选项。选项。选项。选项。85(2 2 2 2)将数组或内存变量的数据传送到记录)将数组或内存变量的数据传送到记录)将数组或内存变量的数据传送到记录)将数组或内存变量的数据传送到记录 命令格式:命令格式:命令格式:命令格式:GATHER FROM GATHER FROM GATHER FROM GATHER FROM | MEMVAR | FIELDS | MEMVAR | FIELDS | MEMVAR | FIELDS | MEMVAR | FIELDS | FIELDS LIKE | FIELDS LIKE | FIELDS LIKE | FIELDS LIKE | FIELDS | FIELDS | FIELDS | FIELDS EXCEPT EXCEPT EXCEPT EXCEPT MEMOMEMOMEMOMEMO 功能:将数组或内存变量的数据依次传送到当前功能:将数组或内存变量的数据依次传送到当前功能:将数组或内存变量的数据依次传送到当前功能:将数组或内存变量的数据依次传送到当前记录,以替换相应字段值。记录,以替换相应字段值。记录,以替换相应字段值。记录,以替换相应字段值。 86说明:说明:说明:说明:n n由于由于由于由于GATHERGATHERGATHERGATHER命令是将数据传送到当前记录,故修改记命令是将数据传送到当前记录,故修改记命令是将数据传送到当前记录,故修改记命令是将数据传送到当前记录,故修改记录前应确定记录指针位置。录前应确定记录指针位置。录前应确定记录指针位置。录前应确定记录指针位置。n n若数组元素多于宇段数则多出的数组元素不传送;若数组元素多于宇段数则多出的数组元素不传送;若数组元素多于宇段数则多出的数组元素不传送;若数组元素多于宇段数则多出的数组元素不传送;而数组元素少于字段数,则多出的字段其值不会改变。而数组元素少于字段数,则多出的字段其值不会改变。而数组元素少于字段数,则多出的字段其值不会改变。而数组元素少于字段数,则多出的字段其值不会改变。n n内存变量值将传送给与它同名的字段,若某字段元同内存变量值将传送给与它同名的字段,若某字段元同内存变量值将传送给与它同名的字段,若某字段元同内存变量值将传送给与它同名的字段,若某字段元同名的内存变量则不对该字段进行数据替换。名的内存变量则不对该字段进行数据替换。名的内存变量则不对该字段进行数据替换。名的内存变量则不对该字段进行数据替换。n n若使用若使用若使用若使用FIELDSFIELDSFIELDSFIELDS子句,仅子句,仅子句,仅子句,仅 中的字段才会被数中的字段才会被数中的字段才会被数中的字段才会被数组元素值替代。缺省组元素值替代。缺省组元素值替代。缺省组元素值替代。缺省MEMOMEMOMEMOMEMO子句时该命令将忽略备注型子句时该命令将忽略备注型子句时该命令将忽略备注型子句时该命令将忽略备注型字段。即使包含字段。即使包含字段。即使包含字段。即使包含MEMOMEMOMEMOMEMO子句,该命令也忽略通用型字段。子句,该命令也忽略通用型字段。子句,该命令也忽略通用型字段。子句,该命令也忽略通用型字段。87 3 3 3 3、成批记录与数组间的数据传送、成批记录与数组间的数据传送、成批记录与数组间的数据传送、成批记录与数组间的数据传送 SCATTERSCATTERSCATTERSCATTER与与与与GATHERGATHERGATHERGATHER命令只能在表的单个记录与数命令只能在表的单个记录与数命令只能在表的单个记录与数命令只能在表的单个记录与数组间进行数据传送,现在介绍绍表的成批记录与数组间进行数据传送,现在介绍绍表的成批记录与数组间进行数据传送,现在介绍绍表的成批记录与数组间进行数据传送,现在介绍绍表的成批记录与数组传送数据的两条命令。组传送数据的两条命令。组传送数据的两条命令。组传送数据的两条命令。 (1 1 1 1)将表的一批记录复制到数组)将表的一批记录复制到数组)将表的一批记录复制到数组)将表的一批记录复制到数组 命令格式:命令格式:命令格式:命令格式: COPY TO ARRAY ArrayName FIELDS COPY TO ARRAY ArrayName FIELDS COPY TO ARRAY ArrayName FIELDS COPY TO ARRAY ArrayName FIELDS FieldList| FIELDS LIKE Skeleton | FIELDS FieldList| FIELDS LIKE Skeleton | FIELDS FieldList| FIELDS LIKE Skeleton | FIELDS FieldList| FIELDS LIKE Skeleton | FIELDS EXCEPT SkeletonScope FOR lExpression1 EXCEPT SkeletonScope FOR lExpression1 EXCEPT SkeletonScope FOR lExpression1 EXCEPT SkeletonScope FOR lExpression1 WHILE lExpression2NOOPTIMIZEWHILE lExpression2NOOPTIMIZEWHILE lExpression2NOOPTIMIZEWHILE lExpression2NOOPTIMIZE 功能:将当前表选定的数据复制到功能:将当前表选定的数据复制到功能:将当前表选定的数据复制到功能:将当前表选定的数据复制到 表表表表示的数组之中,但不复制备注型字段。示的数组之中,但不复制备注型字段。示的数组之中,但不复制备注型字段。示的数组之中,但不复制备注型字段。 88(2 2 2 2)从数组向表追加记录)从数组向表追加记录)从数组向表追加记录)从数组向表追加记录 命令格式:命令格式:命令格式:命令格式: APPEND FROM ARRAY ArrayName FOR APPEND FROM ARRAY ArrayName FOR APPEND FROM ARRAY ArrayName FOR APPEND FROM ARRAY ArrayName FOR lExpressionFIELDS FieldList | FIELDS LIKE lExpressionFIELDS FieldList | FIELDS LIKE lExpressionFIELDS FieldList | FIELDS LIKE lExpressionFIELDS FieldList | FIELDS LIKE Skeleton | FIELDS EXCEPT SkeletonSkeleton | FIELDS EXCEPT SkeletonSkeleton | FIELDS EXCEPT SkeletonSkeleton | FIELDS EXCEPT Skeleton 功能:将满足条件的数组行数据按记录依次追功能:将满足条件的数组行数据按记录依次追功能:将满足条件的数组行数据按记录依次追功能:将满足条件的数组行数据按记录依次追加到当前表中,但忽略备注型字段。加到当前表中,但忽略备注型字段。加到当前表中,但忽略备注型字段。加到当前表中,但忽略备注型字段。89六、逻辑表的设置六、逻辑表的设置六、逻辑表的设置六、逻辑表的设置 1 1 1 1、过滤器、过滤器、过滤器、过滤器 有时有时有时有时VFPVFPVFPVFP中的若干命令都要求满足某种条件,若每中的若干命令都要求满足某种条件,若每中的若干命令都要求满足某种条件,若每中的若干命令都要求满足某种条件,若每一个命令中都输入一个相同的条件,显然浪费了人力一个命令中都输入一个相同的条件,显然浪费了人力一个命令中都输入一个相同的条件,显然浪费了人力一个命令中都输入一个相同的条件,显然浪费了人力和时间。这时可以使用过滤器将不满足条件的记录和时间。这时可以使用过滤器将不满足条件的记录和时间。这时可以使用过滤器将不满足条件的记录和时间。这时可以使用过滤器将不满足条件的记录“遮蔽遮蔽遮蔽遮蔽”起来,即让这些记录在逻辑上消失当操作完起来,即让这些记录在逻辑上消失当操作完起来,即让这些记录在逻辑上消失当操作完起来,即让这些记录在逻辑上消失当操作完以后,再去掉过掳器来恢复这些记录。以后,再去掉过掳器来恢复这些记录。以后,再去掉过掳器来恢复这些记录。以后,再去掉过掳器来恢复这些记录。 命令格式:命令格式:命令格式:命令格式:SET FILTER TO SET FILTER TO SET FILTER TO SET FILTER TO 条件表达式条件表达式条件表达式条件表达式 功能;从当前表过虑出符合功能;从当前表过虑出符合功能;从当前表过虑出符合功能;从当前表过虑出符合 的记录,不符的记录,不符的记录,不符的记录,不符合合合合 的记录将被的记录将被的记录将被的记录将被“遮蔽遮蔽遮蔽遮蔽“,该操作仅限于满足过,该操作仅限于满足过,该操作仅限于满足过,该操作仅限于满足过滤条件的记录。滤条件的记录。滤条件的记录。滤条件的记录。 说明:缺省说明:缺省说明:缺省说明:缺省 表示取消前所设置的过滤器。表示取消前所设置的过滤器。表示取消前所设置的过滤器。表示取消前所设置的过滤器。 90示例:示例:示例:示例: use shbuse shbuse shbuse shb list list list list set filter to set filter to set filter to set filter to 主要设备主要设备主要设备主要设备 listlistlistlist set filter to set filter to set filter to set filter to list list list list912 2 2 2、字段表、字段表、字段表、字段表 字段表用于限定命令操作能作用的字段。字段表用于限定命令操作能作用的字段。字段表用于限定命令操作能作用的字段。字段表用于限定命令操作能作用的字段。 命令格式:命令格式:命令格式:命令格式:SET FIELDS ON | OFF SET FIELDS ON | OFF SET FIELDS ON | OFF SET FIELDS ON | OFF -or-or-or-or-SET FIELDS TO SET FIELDS TO SET FIELDS TO SET FIELDS TO 字段名字段名字段名字段名1 , 1 , 1 , 1 , 字段名字段名字段名字段名2 . 2 . 2 . 2 . | ALL LIKE | ALL LIKE | ALL LIKE | ALL LIKE | EXCEPT | EXCEPT | EXCEPT | EXCEPT 92说明:说明:说明:说明:n nSET FIELDS TOSET FIELDS TOSET FIELDS TOSET FIELDS TO命令用来为当前表设置字段表,命令用来为当前表设置字段表,命令用来为当前表设置字段表,命令用来为当前表设置字段表,ALLALLALLALL表示所有字段都在字段表中。表示所有字段都在字段表中。表示所有字段都在字段表中。表示所有字段都在字段表中。n n命令命令命令命令SET FIELDS ON|OFFSET FIELDS ON|OFFSET FIELDS ON|OFFSET FIELDS ON|OFF决定字段表是否有效。决定字段表是否有效。决定字段表是否有效。决定字段表是否有效。ONONONON状态时,只能访问字段表所列的字段,此时状态时,只能访问字段表所列的字段,此时状态时,只能访问字段表所列的字段,此时状态时,只能访问字段表所列的字段,此时其它字段就像不存在一样。当用其它字段就像不存在一样。当用其它字段就像不存在一样。当用其它字段就像不存在一样。当用SET FIELDS SET FIELDS SET FIELDS SET FIELDS TOTOTOTO命令设置字段表时,命令设置字段表时,命令设置字段表时,命令设置字段表时,SET FIEDLSSET FIEDLSSET FIEDLSSET FIEDLS自动置自动置自动置自动置ONONONON。OFFOFFOFFOFF表示取消字段表,恢复到原来状态,系统表示取消字段表,恢复到原来状态,系统表示取消字段表,恢复到原来状态,系统表示取消字段表,恢复到原来状态,系统默认为默认为默认为默认为OFFOFFOFFOFF状态。状态。状态。状态。93七、建立与修改表结构的命令七、建立与修改表结构的命令七、建立与修改表结构的命令七、建立与修改表结构的命令 建立或修改表结构、无论通过菜单操作还是使用建立或修改表结构、无论通过菜单操作还是使用建立或修改表结构、无论通过菜单操作还是使用建立或修改表结构、无论通过菜单操作还是使用MODIFY STRUCTUREMODIFY STRUCTUREMODIFY STRUCTUREMODIFY STRUCTURE命令,只要是打开表设计器来操作,命令,只要是打开表设计器来操作,命令,只要是打开表设计器来操作,命令,只要是打开表设计器来操作,都属于交互方式。若要在程序执行过程中建立或修改表都属于交互方式。若要在程序执行过程中建立或修改表都属于交互方式。若要在程序执行过程中建立或修改表都属于交互方式。若要在程序执行过程中建立或修改表的结构,需使用的的结构,需使用的的结构,需使用的的结构,需使用的CREATE TABLECREATE TABLECREATE TABLECREATE TABLE和和和和ALTER TABLEALTER TABLEALTER TABLEALTER TABLE命令。命令。命令。命令。 1 1 1 1、表结构的建立、表结构的建立、表结构的建立、表结构的建立 命令格式:命令格式:命令格式:命令格式:CREATE TABLE CREATE TABLE CREATE TABLE CREATE TABLE ( , 功能;建立一个由功能;建立一个由功能;建立一个由功能;建立一个由 表示的表,表中含有指定表示的表,表中含有指定表示的表,表中含有指定表示的表,表中含有指定的字段。的字段。的字段。的字段。 94说明:说明:说明:说明: (1 1 1 1) 用字符表示,例如用字符表示,例如用字符表示,例如用字符表示,例如D D D D为为为为D D D D期型表期型表期型表期型表示,各种字段类型的代号见表示,各种字段类型的代号见表示,各种字段类型的代号见表示,各种字段类型的代号见表2.22.22.22.2(P30P30P30P30)。)。)。)。 (2 2 2 2)命令格式中的小括号是必须的。)命令格式中的小括号是必须的。)命令格式中的小括号是必须的。)命令格式中的小括号是必须的。 示例:示例:示例:示例: create table dx(create table dx(create table dx(create table dx(编号编号编号编号 c(5), c(5), c(5), c(5), 时间时间时间时间 d, d, d, d, 费用费用费用费用 n(6,2)n(6,2)n(6,2)n(6,2) modi stru modi stru modi stru modi stru insert into dx ( insert into dx ( insert into dx ( insert into dx (编号编号编号编号, , , ,时间时间时间时间, , , ,费用费用费用费用) ) ) ) values(00001,09/13/2004,2000)values(00001,09/13/2004,2000)values(00001,09/13/2004,2000)values(00001,09/13/2004,2000)952 2 2 2、表结构的修改、表结构的修改、表结构的修改、表结构的修改 命令格式:命令格式:命令格式:命令格式: ALTER TABLE ALTER TABLE ALTER TABLE ALTER TABLE ADD|ALTER COLUMN ADD|ALTER COLUMN ADD|ALTER COLUMN ADD|ALTER COLUMN ( ( ( (,) ALTER TABLE ALTER TABLE ALTER TABLE ALTER TABLE DROP COLUMN DROP COLUMN DROP COLUMN DROP COLUMN |RENAME COLUMN |RENAME COLUMN |RENAME COLUMN |RENAME COLUMN TO TO TO TO 333 功能;修改功能;修改功能;修改功能;修改 表示的表的结构。表示的表的结构。表示的表的结构。表示的表的结构。 96说明:说明:说明:说明: (1 1 1 1)ADDCLOUMNADDCLOUMNADDCLOUMNADDCLOUMN子句的子句的子句的子句的 用于指定要用于指定要用于指定要用于指定要添加的字段。字段的类型、宽度及小数值数分别添加的字段。字段的类型、宽度及小数值数分别添加的字段。字段的类型、宽度及小数值数分别添加的字段。字段的类型、宽度及小数值数分别由由由由 、 、 来表示。来表示。来表示。来表示。 (2 2 2 2)ALTERCLOUMNALTERCLOUMNALTERCLOUMNALTERCLOUMN子句的子句的子句的子句的 指定要修指定要修指定要修指定要修改的已有字段,用户可以重新指定字段类型、宽改的已有字段,用户可以重新指定字段类型、宽改的已有字段,用户可以重新指定字段类型、宽改的已有字段,用户可以重新指定字段类型、宽度及小数位数,它们分别由度及小数位数,它们分别由度及小数位数,它们分别由度及小数位数,它们分别由 、 、 表示。表示。表示。表示。 (3 3 3 3)DROPCOLUMNDROPCOLUMNDROPCOLUMNDROPCOLUMN子句的子句的子句的子句的 指定要删除指定要删除指定要删除指定要删除的字段。的字段。的字段。的字段。 (4 4 4 4)RENAME COLUMNRENAME COLUMNRENAME COLUMNRENAME COLUMN子句、将子句、将子句、将子句、将 222表示的表示的表示的表示的字段名改为字段名改为字段名改为字段名改为 333表示的字段名。表示的字段名。表示的字段名。表示的字段名。97示例:示例:示例:示例:alter table dx add alter table dx add alter table dx add alter table dx add 备注备注备注备注 m &m &m &m &向表中添加一向表中添加一向表中添加一向表中添加一个字段个字段个字段个字段 alter table dx drop alter table dx drop alter table dx drop alter table dx drop 备注备注备注备注 &删除该字段删除该字段删除该字段删除该字段alter table dx rename alter table dx rename alter table dx rename alter table dx rename 备注备注备注备注 to to to to 摘要摘要摘要摘要 &将字将字将字将字段的名字改变段的名字改变段的名字改变段的名字改变alter table dx alter alter table dx alter alter table dx alter alter table dx alter 编号编号编号编号 c(8) c(8) c(8) c(8) &修改已有的字段的属性设置修改已有的字段的属性设置修改已有的字段的属性设置修改已有的字段的属性设置98
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号