数据库及其应用教材课后习题答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库及其应用教材课后习题答案
第一章 数据库系统的基本概念
1. 信息是现实世界各种事物的存在特征、运动形态以及不同事物间的相互联系等诸要素在人脑中的抽象反映,进而形成概念。信息是资源。数据是对信息的一种符号化表示,即用一定的符号表示信息。数据是用来载荷信息的。 信息与数据,是两个既有联系,又有区别的概念。数据是信息的载体,而信息是数据的内涵。同一信息可以有不同的数据表示形式,而同一数据也可能有不同的解释。
2.由于现实世界的事物往往是相互关联的,基于这仪事实,可以从已知数据出发,参照相关数据,进行加工计算,产生出一些新的数据,这些新的数据又表示了新的信息,可以作为某种决策的依据。上述整个过程,就叫做数据处理。 数据管理是指:数据的收集、整理、组织、存储、查询、维护和传送等各种操作,是数据处理的基本环节,是任何数据处理任务必有的共性部分。
3.数据管理的主要内容包括:数据的收集、整理、组织、存储、查询、维护和传送等操作。
4.文件系统中的文件是指若干记录的集合,它是操作系统管理数据的基本单位,文件之间不存在联系。而在数据库中文件是相互联系着的,并在总体上遵循着一定的结构形式,这是文件系统与数据库系统的最大区别。
5.数据库中的数据是按一定的数据结构组织起来的,具体是按SPARC数据库三级结构组织的,三级结构从内到外分三个层次,分别称为内模式、概念模式和外模式。 (1) 概念模式简称模式,是对数据库的整体逻辑描述,并不涉及物理存储,故称DBA视图。 (2) 内模式又称存储模式,具体描述了数据如何组织存储在存储介质上。内模式是系统程序员用一定的文件形式组织起来的一个个存储文件和联系手段,也是由他们编制存取程序,实现数据存取的,故称内模式为系统程序员视图。 (3) 外模式通常是模式的一个子集,故又称外模式为子模式。外模式面向用户,是用户眼中的数据库,故称外模式为用户视图。
6.数据库按SPARC公布的标准分为三级结构:概念模式、外模式和内模式。 三种模式的关系是:模式是内模式的逻辑表示,内模式是模式的物理实现,外模式则是模式的部分抽取。三个模式反映了对数据库的三种不同观念:模式表示概念级数据库,体现了对数据库的总体观;内模式表示了物理级数据库,体现了对数据库的存储观;外模式表示了用户级数据库,体现了对数据库的用户观。总体观和存储观只有一个,而用户观可能有多个,有一个应用,旧有一个用户观。
7.B,C. 8.C,E,F.
9.数据库系
统由数据库、支持数据库运行的硬件、数据库管理系统和应用程序等部分组成。
10.数据独立有两个方面的含义,即物理数据独立性和逻辑数据独立性。所谓物理数据独立性是指数据库物理结构(包括数据的组织和存储、存取方法、外部存取设备等)发生改变时,不会影响到逻辑结构,而用户使用的是逻辑数据,所以不必改动程序。 所谓逻辑数据独立性是指数据库全局逻辑发生改变时,用户也不需改动程序,就像数据库并没发生变化一样。 数据独立的好处是:数据存储方式的改变不会影响到应用程序。
11.数据库技术方法管理数据的主要特点 (1)数据结构化:数据库是存储在磁盘等外部直接存取设备上的数据集合,它是按一定的数据结构组织起来的。 (2)数据共享:数据库中的数据是考虑所有用户的数据需求、面向整个系统组织的。不同用户使用的数据可以重叠,同一部分数据可以为多个用户共享。 (3)减少了数据冗余:仅管一个数据可能出现在不同的逻辑文件中,但实际的物理存储只有一次。 (4)有较高的数据独立性:数据存储方式的改变不会影响到应用程序。 (5)用户接口:在数据库系统中,数据库管理系统作为用户与数据库的接口,提供了数据库定义、数据库运行、数据库维护和数据安全性、完整性等控制功能;此外还支持某种程序设计语言,并设有专门的数据操作语言,为用户编程提供了方便。
12.名词解释 DBMS:数据库管理系统,是数据库系统中专门用于数据管理的软件。 DBA:数据库管理员,其职责是维护和管理数据库,使之始终处于最佳状态。 DDL:数据描述语言,用来定义模式、外模式和内模式,并将各种模式翻译成相应的目标代码。 DML:数据操纵语言,实现对数据库的操作。有四种基本操作命令:检索、插入、删除和修改。 UWA:用户工作区,是用户程序与系统缓冲区交换数据的场所。用户只能对UWA中的数据进行处理,其数据是DBMS根据用户的请求装进去的。 DD:数据字典,其中存放着数据库三级结构的描述以及各数据项的类型、值域和关键字等,从结构上对数据的语言和数值范围加以约束。
13.数据安全性主要是指防止未被授权者非法存取数据库,保持数据的安全。保证数据的安全性所采取的主要措施有:鉴定用户身份、设置口令、控制用户存取权限、数据加密等。
14.数据的完整性是数据的正确性和相容性。DBMS在建库时,把完整性作为模式的组成部分存入数据字典。保证数据的完整性主要采取的方法是:根据字典中存放着数据库三级结构的描述以及各数据项的类型、值域和关键字等,从结构上
对数据的语义和数值范围加以约束。
15.并发操作:在网络环境下,数据库由多用户共享,即多个用户同时操作同一数据。 并发控制:并发操作极有可能因破坏数据的正确性而出错,这通常是由于两个进程之间不合理的时差造成的。这是一个严重错误,必须加以控制。作为数据库管理系统都有这种并发控制机制,例如通过“加锁”、“解锁”控制并发作业的进程以保证数据的正确性。作为用户,则应在程序中正确地使用这种并发操作来控制并发事件。
第2章 数据模型
1.公式DM={R,L}中: DM表示数据模型,是英文Data Model的缩写。 R表示记录类型的集合。 L表示不同记录类型联系的集合。 此公式的含义是表示了数据模型具有描述数据和数据联系两方面的功能,R是对数据的描述,L是对数据间联系的描述。
2.D 3.C 4.C 5.D 6.D
7.实体和属性是信息世界的术语,而数据世界中对应于记录和数据项(字段)。
8.实体有“型”和“值”之分。型是概念的内涵,而值是概念的实例。例如:“学生”这个实体,通过“学号”、“姓名”、“年龄”、“性别”和“成绩”等属性表明学生状况,这是实体型;而每一个学生的具体情况,例如:其中一个学生叫“王成”,他的“学号”是001,“年龄”是13岁,“性别”是男,“成绩”是95分,这一组数字构成了“学生”这个实体的实体值。 而在计算机世界中,在数据库中通常实体用记录来表示,例如书中的表2-4(b)“学生”这个关系的二维表中,表头“学号”、“姓名”、“性别”和“年龄”则称为记录型,二维表中的任一行记录,例如:102、李强、男、20则是学生这个记录的记录值。 通常情况下,实体及其联系指的是“型”,而记录及其联系指的是“值”。
9.键有时也称关键字。所谓键,是指在实体属性中,可用于区别实体集中不同个体的那个属性或几个属性的组合,称为该实体的“键”。 例1:在书中的表2-4(b)“学生”这个实体中,能作为键的属性可以是“学号”,因为一旦学号有了一个取值,便唯一地标识了学生这个实体集中的某一个体;当然“姓名”本也可以作为键,但如果有时有重名现象,则“姓名”就不能作为键了。 例2:在书中的表2-4(b)“教师”这个实体中,“工号”就可以作为键,当然“姓名”也可以作为键,和“学生”这个实体集中情况相同,如果出现重名现象,“姓名”则不能作为实体键。这是实体键的概念。 关于记录键的概念,例1:学生这个实体,有属性“学号”、“姓名”、“年龄”,在数据库中对应的一个记录是:102、李强、男、20岁,那么其中“102”则可以
是这个记录的记录键,当然“李强”也可以是记录键,但是如果该学生实体集中还有一个重名的“李强”,则这个“李强”则不能作为该记录的记录键。 例2:书中的表2-13中“仓库”这个实体集,有属性为“仓库号”、“地点”、“面积”,其中的一个记录为:A112,景山前街22号,500平方米。这其中“A112”就可以作为该记录的记录键,当然“景山前街22号”也可以作为记录键,但如果在该地点还有一个仓库,则“地点”就不能作为记录键了。
10.一个实体可以有多个属性,当有多个属性可以作为键而选定其中一个时,则称此属性为该实体的“主键”。若在实体诸属性中,某属性虽非该实体主键,却是另一个实体的主键,则称此属性为“外部键”。
11.实体中每个属性,都有一个取值范围,这叫做属性的“域”。性别的值域是{男,女};人的寿命的值域是{0,1,2,……,100}。
12. (1) 一个储户只在一个储蓄所存取款。 以上是1:1情况下的E-R图,具体关系模型如下: 储户(账号,姓名,单位,余额,储蓄所名,日期,金额,利率) 储蓄所(储蓄所名,地址,电话) (2) 一个储户在多个储蓄所存取款。 以上是1:n情况下的E-R图,具体对应的关系模型如下: 储户(账号,姓名,单位,余额) 储蓄所(储蓄所名,地址,电话,账号,日期,金额,利率)
13.C
第三章 关系数据库理论基础
1. i. D1的基数是26,D2的基数是26; ii. D1×D2的基数是576; iii. D1×D2的二维表如下: D1 D2 A 65 A 66 A 67 ┋ ┋ iv. 如果要生成“字母─标准编码”对照表,则从D1×D2中取子集,具体为取D1中的第一个字母和D2中的第一个数字作为表中的第一行,取D1中的第二个字母与d2中的第二个数字作为表中的 第二行,以此类推,选出子集,该子集叫做关系R,R叫做D1×D2上的一个关系。以下为前三个字母对照表: D1 D2 A 65 B 66 C 67 ┋ ┋
2.将书中所列表改造成关系如下:定货单 定货年 定货月 定货日 商品货号 商品名 商品数量 991023 1999 10 23 441 电视机 500 991025 1999 10 25 505 洗衣机 400 991030 1999 10 26 601 电冰箱 200 991040 1999 10 26 701 电饭锅 500
3.按照表达查询的方式不同,关系DML可分为两大类: i. 用关系代数运算表达查询。 ii. 用关系演算公式表达查询。
4.关系相容是指参加运算的两个关系度数相同并且相应属性取自同一个域。相容的两个必要条件是:两关系度数相同,相应属性取自同一个域。
[UseMoney=15] 5.答:(1)A∪B为 X Y Z X1 3 T1 X2 5 T4 X3 2 T3 X1 3 T4 X2 2 T3 (2)A∩B为 X Y Z X3 2 T3 (3)AˉB为 X Y Z X1 3 T1 X2 5 T4
6.答: A B C D E A1 3 C1 4 E1 A1 3 C1 6 E3 A2 5 C2 6 E2 A3 4 C3 6 E3
7.答: 为 A B C D B 2 3
D2
8.填空: 主键:在关系中,当有多个属性可作为键而选定其中一个时,则称它为该关系的主键。 联合键:在一个关系中,需要几个属性组合起来才能惟一标识元组时,则称这几个属性为该关系的联合键。 侯选键:凡在关系中可以用来惟一标识元组的属性或属性组,叫侯选组。 外部键:当关系中的某个熟悉功能或某一组属性并非主键,但却是另一个关系的主键时,称该属性为外部键。 主属性:凡可以作为侯选键的属性叫做主属性。 非主属性:不能作为侯选键的属性叫做非主属性。
9.对关系不断分解的过程:全包含关系。
10.R1为3NF,因为它消除了非主属性对于主键的部分依赖和传递依赖;R2为2NF,因为在它的关系中,E传递依赖于C。
11.设有图书借阅关系BR: BR(借书证号,读者姓名,单位,电话,书号,书名,出版社,出版社地址,借阅日期) i. 根据模式表达的语义,在模式中用箭头标明各属性间的不同依赖情况如下: 答:现根据借书证号为A,读者姓名为B,单位为C,电话为D,书号为E,书名为F,出版社为G,出版社地址为H,借阅日期为I,依赖关系如下: 该关系的主关键字是(借书证号,读者姓名,借阅日期) BR的范式等级为1NF。 ii. 对BR进行规范化到3NF如下: BR=BR1+BR2+BR3+BR4 BR1=(A,B,I,E) BR2=(B,C,D) BR3=(E,F,G) BR4=(G,H) 12. i. 主属性为:(S#,J#,P#,),非主属性为:SN,SA,JN,PN,PT,PC,QTY,COST。 ii. 主关键字是:S#,J#,P#。 iii. 将SPJ无损分解至3NF如下: SPJ=SPJ1+SPJ2+SPJ3+SPJ4 其中:SPJ1(S#,J#,P#,QTY,COST) SPJ2(S#,SN,SA) SPJ3(J#,JN) SPJ4(P#,PN,PT,PC) 13.分解关系时,应遵循二条主要原则是: i. 分解必须是无损的(即分解后不应丢失信息)。 ii. 分解后的关系要相互独立(避免对一个关系的修改涉及到另一关系)。 [/UseMoney]
第四章 数据库应用系统的设计
1.数据库设计的特点:
(1) 数据库设计要考虑结构特性和行为特性两个方面,并且两者必须相互参照进行。
(2) 数据库的设计不可能一次实现,而是个“反复探寻,逐步求精”的过程。
(3) 在数据库的两个方面中,结构设计是关键。
2.数据库设计内容中包括两个特性的设计:结构特性设计和行为特性设计。
3.数据流图是一种从“数据”和“对数据的加工”两方面表达系统工作过程的图形表示法。数据流图中有四种基本成分:数据及其流动方向(用带箭头的线段表示),对数据的加工(用圆形框表示),文件(用卡片形框表示),源点和终点(用方框表示)。
4.数据库逻辑设计之后,数据字典中保存了逻辑设计阶段定义的模式、子模式和有关信息;还保存了物理设计阶段定义的存储模式、文
件存储位置、有关索引及存取方法的信息;还保存了用户名、文件存取权限、口令、完整性约束、安全性要求的信息等。在数据库系统中数据字典的作用是用来保存:数据名、类型、长度、精度等有关信息,目的是对收集到的数据进行标准化、统一化、使其有统一的名称、格式和含义。此外,还包括数据流向描述和加工的描述,显然这个数据可以供设计者和用户双方参照使用,它为设计数据库提供了一个有力的工具。
5.分析阶段完成后,必须以文档形式记录“系统设计说明”,它由系统说明书、技术说明书和使用说明书三
第五章 FOXPRO综述
1. 数值型,字符型,日期型 ,逻辑型
2. C 3. B和C 4. D
5. 字段变量,内存变量
6. 字符型,数值型,浮点型,逻辑型,日期型,备注型,通用型
7. 字符型,数值型,浮点型,日期型,逻辑型,屏幕型(有关内存变量的类型,教材P68的叙述有错误.应改为:在FoxPro中内存变量有以下五种数据类型: 字符型,数值型,浮点型,日期型,逻辑型,屏幕型(Screen,简写为S))
8. 字段变量ino 9. ?M->ino,?M.ino
10. C,254,N,20,D,8,L,1,M,10,F,20,G,10
11. C 12. C 13. 略
14. SAVE TO mfile ALL LIKE n*,CLEAR MEMORY或 RELEASE ALL
15. .MEM,RESTORE FROM mfile.men,LIST MEMORY LIKE n*
16. 逻辑型L,.F. 17. B
18. 答案及分析: 3 计算字符串长度,为数值3 123.00 将给定的字符串转换为数值,结果是数值123.00 -123 取整,结果是数值_123 1235.68 将数值转换成8位字符串,结果是字符串12345.68 99-01-01 字符串转换成日期,日期又转换成字符串,结果是字符串99-01-01 11 问前一个字符串是否是后一个字符串的子串,如果不是,返回数值0, 如果是,则返回前一个字符串在后一个字符串的位置,结果是数值11
Winword 将前一个字符串从第1到第4的位置(也就是整个字符串),用第二个字符串替换,结果为字符串Winword D 返回引号自变量的数据类型的缩写字母,结果是字母D 将日期转换为美国格式即Month DD YYYY January 01,99 先从"abcde"r的第2个位置开始,取3个字母作为子串,也就是"bcd,再判断是否是"abcde"的子串
第六章 数据库的基本操作
1. 此题无答案因为:在FoxPro中备注文件的扩展名应该是.FPT,如果是FoxBASE环境中,备注文件的扩展名应该是.DBT,答案应选C.
[UseMoney=22]
2. D 3. D 4. C 5. B
6. A、B、D分析:A的错误在于,当修改数据库结构时,同时修改字段名和字段长度是很正常 的操作,是可以的.B的错误在于,如果将一个数值型字段改写成字符型字段,字段值会自动转换,不会丢失.D的错误在于,如果新增的是逻辑字段,字段值都默认为逻辑假值.F.,并不是空.
7. C 8. D 9. B 10. C 11. C 12. C(实现本题的前提是刚一打开数据库,记录指针在第1号记录.)
13. D 14. C 15. D
16. 没有答案.原因之一:此题的题干中要求形成"zgpx.dbf",备选答案中全部用的是"gzpx.dbf"原因之二:从命令的结构上看4条命令均可形成按"姓名"字段为关键字的排序文件.
17. 答: ⑴索引文件像一本书的目录一样,根据此文件可以很快到所需的记录,而不必条记录地查找.建立索引所依据的字段称为索引项,在索引文件中建立了索引项值与记录号的对应关系,索引文件中的索引项值总是按升序排列,索引项值的排序顺序实际上是数据库文件的某种逻辑顺序的映射. ⑵最跟本的原因是要使数据库记录产生一个有规律的顺序,但由于排序操作需要临时文件作中传,排序的文件要占据与原文件同样大小的空间,数据冗余大,特别是当原文件某些记录值经修改发生变化时,排序文件不会自动同步修改,导致原文件与排序文件的数据不一致,所以要引入索引文件.索引文件中的索引项值的排序顺序,实际上只是数据库文件的某种逻辑顺序的映射,解决了数据冗余问题.当数据库文件某些记录值改发生变化量,当前打开的索引文件会自动维护,适应数据库文件的变化,从而解决了数据不一致的问题. ⑶当对数据库文件进行增、删、改等数据库操作时,随数据库打开的索引文件会由系统自动维护,同时进行修改,以适应数据库文件的变化.但没打开的索引文件在相应情况下,变化了的记录不会反映到文件中.所谓重索引就是执行REINDEX命令对于这种不能反映库文件内容的索引文件重新进行索引. ⑷当对数据库文件进行增、删、改等数据库操作时,随数据库打开的索引文件会由系统自动维护,同时进行修改,以适应数据库文件的变化.但没打开的索引文件在相应情况下,变化了的记录不会反映到文件中.对于这种不能反映库文件内容的索引文件需重新进行索引. ⑸当对数据库文件中索引关键字进行修改后,如果索引文件随数据库同时打开了,则该索引文件会由系统自动维护,同时进行修改,以适应数据库文件的变化.但没打开的索引文件在相应情况下,变化了的记录不会反映到文件中.对于这种不能反映库文件内容的索引文件执行REINDEX命令,重新进行索引.
18.A 19.C 20.D 21.A 22.D 23.A
24.(A)(√)(B)(×)(C)(√)(D)(×)(E)(√)(F)(√)(G)(√)(H)(√)(I)(√) 分析: (D) (×)因为:如果关联表达式是数值表达式,则被关联以不建索引. (H) (√)因为:如果用另外一个库文件更新当前库文件,并且非要更新关键字段,则当前工作区索引位置上第一条记录的关键字段是可以被更新的,而其它记录的关键字段不会被更新.这样做在实际上是没有意义的,并且容易造成错误.实际操作中并不建议这样操作,所以这句话在逻辑上是对的.
25. ⑴CREATE
TABLE worker (工号C(5),姓名C(6),性别C(2),年龄N(2),工种C(12),工资N(7,2)) 或CREATE DBF worker (工号C(5),姓名C(6),性别C(2),年龄N(1),工种C(12),工资N(7,2)) ⑵INSERT INTO worker (工号,姓名,性别,年龄,工种,工资) value(99001,张三,男,28,汽车修理,963.69)
26.同25题(2)
27.(A)SELECT姓名 FROM woker (B)SELECT * FROM woker WHERE 性别=女 (C)SELECT姓名 FROM woker WHERE 性别=男 AND 年龄>3 AND 工资<400 (D)SELECT姓名 FROM woker WHERE 工资=(select MAX(工资) FROM woker) (E) SELECT 姓名,性别,年龄,工资FROM woker ORDER BY 工资 DESC [/UseMoney]
第七章 FOXPRO程序设计
1.MODIFY COMMAND <命令文件名>或0000MODIFY FILE<命令文件名>,.PRG,.FXP
2.D分析:因为答案D的命令没有READ语句,答案C:INPUT To x可以接受任何类型的数据,在接收字符型数据时加定界符即可.如可输入" B"
3.B分析:同样答案D也是因为没有激活
4.B分析:因为命令"?&x"相当出变量x变量名的变量值,答案C和D虽然是格式化输入语句,但变量x的值作为初始值会显示在指定位置
5.D分析:@10,10 SAY "x" GET x PICTURE"@CXB 99999.99"是格式化输入语句, PICTURE"@CXB 99999.99"中的@决定了CXB是功能符,面的99999.99是格式符.C和X在SAY子句中的功能是对正数和负数分别加后缀CR和DR表示贷方和借方.但这两个功能符在GET子句的功能符中是没有的,在此不起作用.因此在这里,三个功能符中只有B起作用,功能符B的作用是数值型数据显示区左右对齐输出.格式符99999.99作用是各位只允许输入数字和正负号,整个数值宽度加上小数点为8位,不足8位用空格补齐.
6没有答案. 分析:因为题干中的语句如下: @10,10 SAY "x" GET x PICTURE"$$$$$.99" 其中,"$$$$$.99"是格式符,是位对位控制,该格式符决定显示时整数部分最大为5位,小数部分只有前两位有效.并且每位整数位均由格式符"$"控制,且每位整数位的后面是第一个有诳位(也就是2)前用代替.所以本题的结果应是: x=□□$□2□3□4□.56
7.@10,5 @0,40 clear
8.(1)D (2)A
9.x=y
10.s=0 s=s+1 i=i+1
11.(1)A(2)B(3)D
12.(1)B(2)D(3)A(4)B
13.*process.prg FUNCTION equit PARAMETERS a,b,c PUBLIC X1,X2 IF b*b-4*a*c>0 X1=(-b+SQRT(b*b-4*a*c))/2*a X2=(-b+SQRT(b*b-4*a*c))/2*a RETURN 1 ENDIF RETURN 0
14.SET TALK OFF CLEAR INPUT "请输入数值A:"to a INPUT "请输入数值B:"to b INPUT "请输入数值C:"to c SET PROCEDURE TO process.prg IF equit(a,b,c)=0 @10,10 SAY "无实根" ELSE @15,10 SAY "X1="+STR(X1,10,2) @18,.10 SAY "X2="+STR(X2,10,2) ENDIF RETURN
15.COFIG.FPW TALK=OFF DEFAULT=c:\database SYSMENU=OFF
16.(1)×(2)√(3) ×(4) √(5) ×(6) √(7) √(8) √
17.SET TALK OFF CLEAR SET SYSMENU SAVE SET SYSMENU TO DEF MENU example DEFINE PAD input OF example PROMPT '数据输入' COLOR SCHEME 3 KEY ALT+I," DEFINE PAD output OF example PROMPT '数据输入' COLOR SCHEME 3 KEY ALT+O," D
EFINE PAD manager OF example PROMPT '数据输入' COLOR SCHEME 3 KEY ALT+F," DEFINE PAD query OF example PROMPT '数据输入' COLOR SCHEME 3 KEY ALT+Q," DEFINE PAD exit OF example PROMPT '数据输入' COLOR SCHEME 3 KEY ALT+X" ON PAD input OF example ACTIVATE POPUP input1 ON PAD output OF example ACTIVATE POPUP output1 ON PAD manager OF example ACTIVATE POPUP manager1 ON PAD query OF example ACTIVATE POPUP query1 ON selection PAD exit OF example exit DEFINE POPUP input1 MARGIN RELATIVE SHADOW COLOR SCHEME4 DEFINE BAR 1 OF input1 PROMPT '输入产品数据' DEFINE BAR 2 OF input1 PROMPT '输入价格信息' DEFINE BAR 3 OF input1 PROMPT '输入商家信息' ON SELECTION POPUP input1 DO choice DEFINE POPUP output1 MARGIN RELATIVE SHADOW COLOR SCHEME4 DEFINE BAR 1 OF output1 PROMPT '打印产品库存表' DEFINE BAR 2 OF output1 PROMPT '打印产品价格表' DEFINE BAR 3 OF output1 PROMPT '打印进货单位表' ON SELECTION POPUP output1 DO choice DEFINE POPUP manager 1 MARGIN RELATIVE SHADOW COLOR SCHEME4 DEFINE BAR 1 OF manager1 PROMPT '备份当月产品' DEFINE BAR 2 OF manager1 PROMPT '备份当月价格' DEFINE BAR 3 OF manager1 PROMPT '备份当月商家' ON SELECTION POPUP manager1 DO choice DEFINE POPUP query1 MARGIN RELATIVE SHADOW COLOR SCHEME4 DEFINE BAR 1 OF query1 PROMPT '数据浏览' DEFINE BAR 2 OF query1 PROMPT '数据查询' ON SELECTION POPUP query1 DO choice
ACTIVATE MENU example PROCEDURE Choice SET TALK OFF CLEAR @25,2 say "命令已经执行" RETURN
第八章 FOXPRO 程序开发工具
等