第一篇:计算机二级VF考试试题之2002.9
2002年9月全国计算机等级考试二级笔试试题
Visual FoxPro 数据库程序设计
一、选择题(每题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)在下列四个选项中,不属于基本关系运算的是
A)连接 B)投影 C)选择 D)排序
(2)如果一个班只能有一个班长,而且一班长不能同时担任其它班的班长,班级和班长两个实体之间的关系属于
A)一对一联系 B)一对二联系 C)多对多联系 D)一对多联系
(3)Visual FoxPro支持的数据模型是
A)层次数据模型 B)关系数据模型 C)网状数据模型 D)树状数据模型
(4)在Visual FoxPro的命令窗口中键入CREATE DATA命令以后,屏幕会出现一个创建对话框,要想完成同样的工作,还可以采取如下步骤
A)单击“文件”菜单中的“新建”按钮,然后在新建对话框中选定“数据库”单选钮,再单击“新建文件”命令按钮
B)单击“文件”菜单中的“新建”按钮,然后在新建对话框中选定“数据库”单选钮,再单击“向导”命令按钮
C)单击“文件”菜单中的“新建”按钮,然后在新建对话框中选定“表”单选钮,再单击“新建文件”命令按钮
D)单击“文件”菜单中的“新建”按钮,然后在新建对话框中选定“表”单选钮,再单击“向导”命令按钮
(5)将内存变量定义为全局变量的Visual FoxPro命令是
A)LOCAL B)PRIVATE C)PUBLIC D)GLOBAL
(6)扩展名为DBC的文件是
A)表单文件 B)数据库表文件 C)数据库文件 D)项目文件
(7)假设已经生成了名为mymenu的菜单文件,执行该菜单文件的命令是
A)DO mymenu B)DO mymenu.mpr C)DO mymenu.pjx D)DO mymenu.mnx
(8)下面有关索引的描述正确的是
A)建立索引以后,原来的数据库表文件中记录的物理顺序将被改变B)索引与数据库表的数据存储在一个文件中
C)创建索引是创建一个指向数据库表文件记录的指针构成的文件D)使用索引并不能加快对表的查询操作
(9)若所建立索引的字段值不允许重复,并且一个表中只能创建一个,它应该是
A)主索引 B)惟一索引 C)候选索引 D)普通索引
(10)参照完整性的规则不包括
A)更新规则 B)删除规则 C)插入规则 D)检索规则
(11)一个数据库名为student,要想打开该数据库,应使用命令
A)OPEN student B)OPEN DATA student C)USE DATA student D)USE student
(12)下列函数中函数值为字符型的是
A)DATE()B)TIME()C)YEAR()D)DATETIME()
(13)在下面的数据类型中默认值为.F.的是
A)数值型 B)字符型 C)逻辑型 D)日期型
(14)下面有关HAVING子句描述错误的是
A)HAVING子句必须与GROUP BY子句同时使用,不能单独使用B)使用HAVING子句的同时不能使用WHERE子句
C)使用HAVING子句的同时可以使用WHERE子句D)使用HAVING子句的作用是限定分组的条件
(15)~(27)使用的数据如下:
当前盘当前目录下有数据库db_stock,其中有数据库表stock.dbf,该数据库表的内容是: 股票代码 股票名称 单价 交易所
600600 青岛啤酒 7.48 上海
600601 方正科技 15.20 上海
600602 广电电子 10.40 上海
600603 兴业房产 12.76 上海
600604 二纺机 9.96 上海
600605 轻工机械 14.59 上海
000001 深发展 7.48 深圳
000002 深万科 12.50 深圳
(15)执行如下SQL语句后
SELECT*FROM stock INTO DBF stock ORDER BY 单价
A)系统会提示出错信息B)会生成一个按“单价”升序排序的表文件,将原来的stock.dbf文件覆盖
C)会生成一个按“单价”降序排序的表文件,将原来的stock.dbf文件覆盖
D)不会生成排序文件,只在屏幕上显示一个按“单价”升序排序的结果
(16)执行下列程序段以后,内存变量a的内容是
CLOSE DATABASE
a=0
USE stock
GO TOP
DO WHILE.NOT.FOF()
IF 单价>10
a=a+1
ENDIF
SKIP
ENDDO
A)1 B)3 C)5 D)7
(17)有如下SQL SELECT语句
SELECT*FROM stock WHERE单价BETWEEN 12.76 AND 15.20
与该语句等价的是
A)SELECT*FROM stock WHERE 单价<=15.20.AND.单价>=12.76
B)SELECT*FROM stock WHERE 单价<15.20.AND.单价>12.76
C)SELECT*FROM stock WHERE 单价>=15.20.AND.单价<=12.76
D)SELECT*FROM stock WHERE 单价>15.20.AND.单价<12.76
(18)如果在建立数据库表stock.dbf时,将单价字段的字段有效性规则设为“单价>0”,通过该设置,能保证数据的A)实体完整性 B)域完整性 C)参照完整性 D)表完整性
(19)在当前盘当前目录下删除表stock的命令是
A)DROP stock B)DELETE TABLE stock C)DROP TABLE stock D)DELETE stock
(20)有如下SQL语句
SELECT max(单价)INTO ARRAY a FROM stock
执行该语句后
A)a[1]的内容为15.20 B)a[1]的内容为6 C)a[0]的内容为15.20 D)a[0]的内容为6
(21)有如下SQL语句
SELECT 股票代码,avg(单价)as 均价 FROM stock;
GROUP BY 交易所 INTO DBF temp
执行该语句后temp表中第二条记录的“均价”字段的内容是
A)7.48 B)9.99 C)11.73 D)15.20
(22)将stock表的股票名称字段的宽度由8改为10,应使用SQL语句
A)ALTER TABLE stock股票名称 WITH c(10)B)ALTER TABLE stock股票名称 c(10)C)ALTER TABLE stock ALTER股票名称 c(10)D)ALTER stock ALTER 股票名称 c(10)
(23)有如下SQL语句
CREATE VIEW stock_view AS SELECT*FROM stock WHERE 交易所=“深圳”
执行该语句后产生的视图包含的记录个数是
A)1 B)2 C)3 D)4
(24)有如下SQL语句
CREATE VIEW view_stock AS SELECT 股票名称AS名称,单价FROM stock
执行该语句后产生的视图含有的字段名是
A)股票名称、单价 B)名称、单价
C)名称、单价、交易所 D)股票名称、单价、交易所
(25)下面有关对视图的描述正确的是
A)可以使用MODIFY STRUCTURE命令修改视图的结构B)视图不能删除,否则影响原来的数据文件
C)视图是对表的复制产生的D)使用SQL对视图进行查询时必须事先打开该视图所在的数据库
(26)执行如下SQL语句后
SELECT DISTINCT 单价 FROM stock;
WHERE 单价=(SELECT min(单价)FROM stock)INTO DBF stock_x
表stock_x中的记录个数是
A)1 B)2 C)3 D)4
(27)求每个交易所的平均单价的SQL语句是
A)SELECT 交易所,avg(单价)FROM stock GROUP BY 单价B)SELECT 交易所,avg(单价)FROM stock ORDER BY 单价
C)SELECT 交易所,avg(单价)FROM stock ORDER BY 交易所D)SELECT 交易所,avg(单价)FROM stock GROUP BY 交易所
(28)视图设计器中含有的、但查询设计器中却没有的选项卡是
A)筛选 B)排序依据 C)分组依据 D)更新条件
(29)下面关于查询描述正确的是
A)可以使用CREATE VIEW打开查询设计器B)使用查询设计器可以生成所有的SQL查询语句
C)使用查询设计器生产的SQL语句存盘后将存放在扩展名为QPR的文件中D)使用DO语句执行查询时,可以不带扩展名
(30)使用报表向导定义报表时,定义报表布局的选项是
A)列数、方向、字段布局 B)列数、行数、字段布局
C)行数、方向、字段布局 D)列数、行数、方向
(31)能够将表单的Visible属性设置为.T.,并使表单成为活动对象的方法是
A)Hide B)Show C)Release D)SetFocus
(32)下面对编辑框(EditBox)控制属性的描述正确的是
A)SelLength属性的设置可以小于0B)当ScrollBars的属性值为0时,编辑框内包含水平滚动条
C)SelText属性在做界面设计时不可用,在运行时可读写D)Readonly属性值为.T.时,用户不能使用编辑框上的滚动条
(33)下面对控件的描述正确的是
A)用户可以在组合框中进行多重选择 B)用户可以在列表框中进行多重选择
C)用户可以在一个选项组中选中多个选项按钮D)用户对一个表单内的一组复选框只能选中其中一个
(34)确定列表框内的某个条目是否被选定应使用的属性是
A)Value B)ColumnCount C)ListCount D)Selected
(35)设有关系R1和R2,经过关系运算得到结果S,则S是
A)一个关系 B)一个表单 C)一个数据库 D)一个数组
二、填空题(每空2分,共30分)
请将答案分别写在答题卡中【1】至【15】的横线上,答在试卷上不得分。
(1)Visual FoxPro 6.0是一个 [1] 位的数据库管理系统。
(2)在连接运算中,[2] 连接是去掉重复属性的等值连接。
(3)项目管理器的 [3] 选项卡用于显示和管理数据库、自由表和查询等。
(4)自由表的扩展名是 [4]。
(5)LEFT(“123456789”,LEN(“数据库”))的计算结果是 [5]。
(6)同一个表的多个索引可以创建在一个索引文件中,索引文件名与相关的表同名,索引文件的扩展名是 [6],这种索引称为 [7]。
(7)用来确定笔选框是否被选中的属性是 [8],用来指定显示在复选框旁的文字的属性是
[9]。
下面各题使用如下的“教师”表和“学院”表
“教师”表
职工号姓名职称年龄工资系号
11020001 肖天海 副教授35 2000.00 01
11020002 王岩盐 教授40 3000.00 02
11020003 刘星魂 讲师25 1500.00 01
11020004 张月新 讲师30 1500.00 03
11020005 李明玉 教授34 2000.00 01
11020006 孙民山 教授47 2100.00 02
11020007 钱无名 教授49 2200.00 03
“学院”表
系号 系名
01 英语
02 会计
03 工商管理
(8)使用SQL语句将一条新的记录插入学院表INSERT [10] 学院(系号,系名)[11](“04”,“计算机”)
(9)使用SQL语句求“工商管理”系的所有职工的工资总和。
SELECT [12](工资)FROM 教师;
WHERE系号IN 9(SELECT 系号FROM [13] WHERE 系名=“工商管理”)
(10)使用SQL语句完成如下操作(将所有教授的工资提高5%)[14] 教师 SET 工资=工资*1.05
[15] 职称=“教授”
第二篇:计算机等级考试二级VF考点分析
计算机等级考试二级VF考点分析:VF基础知识
1.1 数据库基础知识
考点1 计算机数据管理的发展
1数据与数据处理
数据是指存储在某一种媒体上能够识别的物理符号。数据处理的中心问题是数据管理。
2计算机数据管理
(l)人工管理。
(2)文件系统。
(3)数据库系统。
(4)分布式数据库系统。
(5)面向对象数据库系统。
3数据库管理系统
为数据库的建立、使用和维护而配置的软件称为数据库管理系统DBMS(DataBase Management System)。
图1-1 数据库系统中数据与程序的关系 考点2 数据库系统
1有关数据库的概念
(1)数据库(DataBase):存储在计算机存储设备上、结构化的相关数据的集合。
(2)数据库应用系统(DBAS):是由系统开发人员利用数据库系统资源开发出来的,面向某一类实际应用的应用软件系统。
(3)数据库管理系统(DBMS):对数据实行专门管理,提供安全性和完整性等统一机制,可以对数据库的建立、使用和维护进行管理。
(4)数据库系统(DBS):是指引进数据库技术后的计算机系统,实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享的便利手段。数据库系统由硬件系统、数据库、数据库管理系统及相关软件、数据库管理员和用户等部分组成。
2数据库系统的特点
(l)实现数据共享,减少数据冗余。
(2)采用特定的数据模型。
(3)具有较高的数据独立性。
(4)具有统一的数据控制功能。考点3 数据模型
1实体的描述
(1)实体。
(2)实体的属性。
(3)实体集和实体型。
2实体间联系及联系的种类
(1)一对一联系。
(2)一对多联系。
(3)多对多联系。
3数据模型简介
为了反映事物本身及事物之间的各种联系,数据库中的数据必须有一定的结构,这种结构用数据模型来表示,通常有以下3种。
(1)层次数据模型。
(2)网状数据模型。
(3)关系数据模型。小提示:
数据库DB、数据库系统DBS和数据库管理系统DBMS之间的关系是DBS包括DB和DBMS。1.2 关系模型
关系模型的用户界面非常简单,一个关系的逻辑结构就是一张二维表。这种用二维表的形式表示实体和实体间联系的数据模型称为关系数据模型。
1关系术语
(l)关系:一个关系就是一张二维表,每个关系有一个关系名。在Visual FoxPro中一个关系存储为一个文件,扩展名为DBF,称为“表”。
对关系的描述称为关系模式,一个关系模式对应一个关系的结构,格式为: 关系名(属性名1,属性名2,„,属性名n)
(2)元组:在一个二维表中,水平方向的行称为元组,每一行为一个元组。
(3)属性:将二维表中垂直方向的列称为属性,每一列都有一个属性名。
(4)域:属性的取值范围,即不同元组对同一个属性的取值所限定的范围。
(5)关键字:属性或属性的组合,其值能够唯一地标识一个元组。在Visual FoxPro中,主关键字和候选关键字就起唯一标志一个元组的作用。
(6)外部关键字:如果表中一个字段不是本表的主关键字或候选关键字,而是另一个表的主关键字或候选关键字,那么这个字段(属性)就称为外部关键字。
2关系的特点
(1)关系必须规范化。
(2)在同一个关系中不能出现同名属性,Visual FoxPro中表示为字段名的不同。
(3)关系中不允许有完全相同的元组,即冗余。
(4)在一个关系中元组的次序无关紧要。
(5)在一个关系中列的次序无关紧要。考点5 关系运算
对关系数据库进行查询时,需要找到用户感兴趣的数据,这就需要对关系进行一定的关系运算,关系的基本运算有两类:传统的集合运算和专门的关系运算。
1传统的集合运算
(1)并:两个相同结构关系的并是由属于这两个关系的全部元组组成的集合。
(2)差:两个相同结构关系的差是由属于前一个关系的元组而不属于后一个关系的元组组成的集合。例如,关系R和S的差结果是由属于R但不属于S的元组组成的集合。
(3)交:两个相同结构关系的交是由属于这两个关系所共有的元组组成的集合。
2专门的关系运算
(1)选择:从关系中找出满足给定条件的元组的操作。
(2)投影:从关系模式中指定若干个属性组成新的关系:
(3)连接:关系的横向结合,将两个关系模式拼接成一个更宽的关系模式。
(4)自然连接:在连接运算中,按照字段值对应相等为条件进行的连接操作称为等值连接。自然连接是去掉重复属性的等值连接。小提示:
选择和投影运算的操作对象只是一个表,相当于对一个二维表进行切割。连接运算则需要把两个表作为操作对象。如果两个表以上进行连接,应当两两进行连接。1.3 数据库设计基础 考点6 数据库设计步骤
1设计原则
(l)关系数据库的设计应遵从概念单一化“一事一地”的原则。
(2)避免在表之间出现重复字段。
(3)表中的字段必须是原始数据和基本数据元素。
(4)用外部关键字保证有关联的表之间的联系。
2设计步骤
利用Visual FoxPro来开发数据库应用系统,可以按照以下步骤来设计。
(1)需求分析。
(2)确定需求表C
(3)确定需求字段。
(4)确定联系。
(5)设计精确
1.4 Visual FoxPro系统概述 考点7 Visual FoxPro的特点
(l)增强项目与数据库管理。
(2)提高应用程序开发的生产率。
(3)互操作性与支持Internet。
(4)充分利用已有数据。
第三篇:2007年9月全国计算机等级考试二级VF笔试试题
第二部分 物业管理基础(51~150题,共100道题)
一、单项选择题(51~110题,每题1分,共60分。每小题只有一个最恰当的答案,请在答题卡上将所选答的相应字母涂黑)
51、以下关于各项物业管理原则的理解中不正确的是(C)。
(A)权责分明原则。是指物业管理相关各方即业主、业主大会、业主委员会、物业管理企业等的权利与责任应当非常明确。(B)依法行事原则,是指在物业管理活动中要以相关的法律、法规和签订的《物业服务合同》或《前期物业服务合同》为依据。(C)业主主导原则,是指在物业管理活动中,业主永远是对的。.(D)服务第一原则.是指物业管理的根本任务是服务,应寓管理于服务中。
52、目前,建设部对全国范围内上报的物业管理优秀住宅小区进行考评验收后授予(D)称号。
(A)“全国城市文明住宅小区”(B)“全国优秀管理住宅小区”(C)“全国城市物业管理优秀住宅小区”(D)“全国物业管理示范住宅小区”
53、根据《物业管理企业资质管理办法》我国物业管理企业的注册资本至少应为(A)万元。
(A)10(B)30(C)50(D)100
54、业主大会的一项重要职责是(B)。
(A)提出选聘、解聘物业管理企业的建议(B)选聘、解聘物业管理企业(C)组织实施选聘物业管理企业的招标活动(D)与物业管理企业签订物业服务合同
55、两个或两个以上公民或产权主体对同一房屋客体共同享有一个完全产权,即享有房屋的(B)(A)区分所有权(B)共有产权(C)不同产权(D)独立产权
56、根据中国物业管理协会制定的《普通住宅小区物业管理服务等级标准(试行)》中的三级标准,物业管理企业至少应保证载人电梯(C)正常运行。
(A)早6点至晚11点(B)早6点至晚Il点半(C)旱6点至晚12点(D)全天24小时
57、物业已使用的年限比较长,建筑物在某些方面不能满足新的建筑条例或规范的要求,建筑物存在较明显的物理磨损和功能陈旧,但仍能满足低收入承租人的需求。因租金较低,尚可保持合理的出租率,这类写字楼属于(C)写字楼。
(A)甲级(B)乙级(C)丙级(D)丁级
58、写字楼的(B)由折旧费、维修费、管理费、利息、地租、税金、保险费、利润8项构成。
(A)成本租金(B)商品租金(C)基础租金(D)百分比租金
59、在零售商业物业租赁中,百分比租金一般是作为基础租金的附加部分收取的,通常仅对超出承租人某一预定营业额之外的部分收取百分比租金,如果承租人的营业额达不到该营业额,则按基本租金收取如果某承租人的基础租金为2万元/月,以营业额的5%作为百分比租金,则只有当承租人的月营业额超过(C)万元时,才应对超额部分的营业额收取百分比租金。
(A)2(B)20(C)40(D)80
60、根据有关规定,工业区锅炉废水必须经过冷凝降温至(D)以下后才能排入公共污水管道。
(A)15°C(B)25°C(C)35°C(D)45°C 61、根据建设部《全国物业管理示范工业区标准及评分细则》的规定,全国物业管理示范工业区在基础管理方面至少应做到(D),设立服务电话。
(A)建立8小时值班制度(B)建立12小时值班制度(C)建立18小时值班制度(D)建立24小时值班制度,62、物业管理法律关系中权利的享有者和义务的承担者,是物业管理法律关系构成要素中的(A)
(A)主体(B)客体(C)载体(D)内容
63、(B)是指由国家特定政权机关制定或认可而具有普遍约束力,反映执政集团对物业管理社会秩序的利益要求和组控意志,并依靠政权强制力量保证实施的,用以组控物业管理社会关系中某一类具体关系或某一具体活动类型的行为规范。
(A)物业管理政策(B)物业管理法律规范(C)物业管理关系(D)物业管理法律关系
64、吊销违规物业管理企业的资质证书,属于(B).
(A)行政处分(B)行政处罚(C)追究民事责任(D)追究刑事责任
65、根据国家发展和改革委员会与建设部于2004年7月19日联合发布的(物业服务收费明码标价规定》:“实行明码标价的物业服务收费的标准等发生变化时,物业管理企业应当在执行新标准前(A),将所标示的相关内容进行调整。并应标示新标准开始实行的日期。”
(A)1个月(B)3个月(C)6个月(D)12个月
66、《物业管理条例》规定,建设单位在物业管理区域内不按照规定配置必要的物业管理用房的,由县级以上地方人民政府房地产行政主管部门责令限期改正,给予警告,没收违法所得,并处(A)的罚款。(A)10万元以上50万元以下(B)5万元以上20万元以下(C)3万元以上lO万元以下(D)l万元以上3万元以下
67、《前期物业管理招标投标管理暂行办法》规定,前期物业管理评标委员会由招标人代表和物业管理方面的专家组成.成员为(B)人以上单数。
(A)3(B)5(C)7(D)9
68、以下表述中(D)不符合《物业服务收费管理办法》的规定。
(A)物业管理企业已接受委托实施物业服务并相应收取服务费用的,其他部门和单位不得重复收取性质和内容相同的费用(B)物业共用部位,共用设施设备的大修、中修和更新、改造费用,应当通过专项维修资金予以列支,不得计入物业服务支出或者物业服务成本(C)物业发生产权转移时,业主或者物业使用人应当结清物业服务费用或者物业服务资金(D)业主与物业使用人约定由物业使用人交纳物业服务费用或者物业服务资金的.从其约定,业主不负连带交纳责任
69、房屋接管交付使用后,如发生隐蔽性重大质量事敲,应由接管单位会同建设、设计、施工等单位,共同分析研究,查明原因。如属施工、材料的原因,应由(C)负责处理。
(A)设计单位(B)施工单位(C)建设单位(D)接管单位
70、房地产开发项目的(A),由政府建设行政主管部门负责.组成综合验收小组,对施工质量和设计质量进行全面检验和质量评定。
(A)竣工验收(B)接管验收(C)使用验收(D)设计验收
71、在办理新建物业承接验收手续时,建设单位应当向物业管理企业移交的资料中不包括(B)。(A)竣工验收资料(B)物业销售资料(C)物业质量保修文件(D)物业使用说明文件
72、按照(物业管理条例)的规定,物业管理企业在物业服务合同终止时,(B)不必交给业
主委员会。
(A)竣工验收资料(B)日常物业管理工作总结(C)物业使用说明文件(D)物业质量保修文件
73、业主为物业管理企业定出最低的年租金收入任务和物业维修养护指标,完成后按租金收入的一定比例支付物业服务费,这种测算收益性物业服务费的方法是(D)。
(A)成本法(B)市场法(C)定额法(D)比例法
74、(B)是在预收的物业服务资金中按约定比例或者约定数额提取酬金支付给物业管理企业,其余全部用于物业服务合同约定的支出,结余或者不足均由业主享有或者承担的物业服务计费方式。
(A)包干制(B)酬金制(C)成本价(D)市场价
75、根据国家发展和改革委员会、建设部印发的《物业服务收费明码标价规定》,负责对物业管理企业执行明码标价规定的情况实施监督检查的部门是(B)。
(A)房地产行政主管部门(B)政府价格主管部门(C)业主委员会(D)居民委员会
76、物业管理区域内,供水、供电、供气、供热、通有线电视等单位应当向最终用户收取有关费用。物业管理企业接受委托代收上述费用的,可向(C)收取手续费。
(A)业主(B)最终用户(C)委托单位(D)政府部门
77、物业管理企业应定期向(C)公开物业服务费的收支情况,接受监督。(A);房地产行政主管部门(B)企业员工(C)业主和使用人(D)行业协会。
78、以询问的方式作为收集资料的手段,以被询问人的答复作为调查资料依据的市场调查方法是(A)
(A)直接调查法(B)预测法(C)观察法(D)实验法
79、根据建设部发布的《城市房屋租赁管理办法》规定.房屋租赁当事人应当在租赁合同签订后(C)日内,到市、县人民政府房地产管理部门办理登记备案手续。
(A)10(B)15(C)30(D)60
80、物业管理企业日常客户关系管理的工作内容不包括(B)。
(A)宣传有关物业管理的知识和相关的政策法规(B)协调客户与政府的关系(C)将物业管理区域内一些重要事情及时告知客户(D)客户报修、投诉后的回访
8l、为了及时了解客户对物业服务的意见、建议以及满意情况.中国物业管理协会发布的《普通住宅小区物业管理服务等级标准(试行)》中的一级、二级、三级标准都要求物业管理企业每年至少1次征询业主对物业服务的意见.而且三个级别物业服务的客户满意率分别应达到
(D)以上。
(A)98%,95%,90%(B)90%,85%,80%(C)85%,80%,75%(D)80%,75%,70%
82、实施社区专题活动的步骤中不包括(A)。
(A)建立客户信息档案(B)制定活动实施方案(C)做好活动筹备工作(D)开展具体活动
83、房屋结构施工图中常用的构件代号“KB’表示的是(C)。(A)楼梯板(B)墙板(C)空心板(D)槽形板
84、房屋给排水施工图中常用的图例符号“ ”表示的是()。
(A)闸阀(B)截门(C)流量表(D)洗脸盆
85、下列房屋供暖施工图暖通空调设备常用图例符号中,()代表加湿器。
86、根据房屋完损等级的评定标准,房屋的结构构件完好,装修和设备齐全完整,管道畅通,现状良好,使用正常:或虽个别分项有轻微损坏,但一般经过小修就能修复的房屋,属于(A)。
(A)完好房(B)基本完好房(C)一般损坏房(D)严重损坏房
87、物业管理区域房屋完好率是区域内的(C)的百分比。
(A)完好房建筑面积占总的房屋建筑面积(B)基本完好房建筑面积占总的房屋建筑面积(C)完好房建筑面积和基本完好房建筑面积占总的房屋建筑面积(D)完好房建筑面积占完好房建筑面积和基本完好房建筑面积之和
88、当业主或使用人房屋自用部位必须修缮,而房屋修缮责任人不及时修缮,或者在房屋修缮时,遭到责任人的借故阻挠,或发现有可能导致房屋危险情况出现时,房管部门可采取“排除解危的强制措施,费用由(C)承担。
(A)房屋所有人(B)房屋使用人(C)房屋修缮责任人(D)房屋管理者
89、整幢房屋的门窗整修属于房屋的(B)工程。
(A)小修(B)中修(C)大修(D)翻修
90、以下物业管理企业对业主房屋装修进行管理的做法中不正确的是(D)。(A)在发给业主的《住户手册》中写明业主进行房屋装修时应遵循的有关规定和程序(B)与装修人签订房屋装修管理服务协议(C)将房屋装修工程的禁止行为告知装修人(D)对违反法律、法规和装饰装修管理服务协议的,及时依法进行处罚
91、房屋附属设备的(D)保养是设各操作人员对设各进行的经常性的保养工作,主要包括定期检查、清洁和润滑.发现小故障及时排除.做好必要记录等。
(A)一级(B)二级(C)三级(D)日常
92、物业管理区域内房屋附属设备设施的每日运行记录应该由(A)填写。
(A)设备操作人员(B)设备维修养护人员(C)设备养护班组长(D)工程部经理
93、房屋附属设备的(A)工程是指对设备进行日常的保养、检修及为排除运行故障而进行的局部维修,通常只要修复、更换少量易损零件,调整较少部分的机件和精度。
(A)零修(B)中修(C)大修(D)更新改造
94、物业管理公司一般应当(C)对物业管理区域内的空调主机作一次全面的技术性能检查。
(A)每月(B)每季度(C)每年(D)每三年
95、物业管理区域内特种设备的所有维护保养、应急抢修、日常小修均由专业维修保养公司负责的设各维修养护委托合同,是(B)合同。
(A)特大包(B)大包(C)申包(D)小包
96、智能化建筑的一个重要特点是(A)。
(A)节能(B)费电(C)给排水设备故障难以发现(D)需要管理人员较多 97、建筑设备自控系统运行管理及维修养护规程要求.网络控制器、控制计算机故障一般应于(C)小时内修复
(A)1(B)2(C)4(D)8
98、采取封闭式管理的物业管理区域。物业入口处应有保安人员(D)。
(A)每天8小时值班。其他时间自由出入(B)每天白天值班,其他时间自由出入(C)每天夜间值班,其他时间自由出入(D)24小时值班,外来人员进入须登记
99、电子巡更装置是一种(D)的电子设备。
(A)记录进入物业管理区域人员和车辆(B)用于监测火灾火警(C)记录维修人员维修工作量(D)记录保安人员巡逻是否到位
100、物业管理区域内火灾预防总复制人一般由物业管理企业(A)承担。
(A)管理项目的总负责人(B)安保部经理(C)客服部经理(D)安保部消防主管
101、根据功能要求和居住区规模大小,居住区道路一般可分为3级或4级,其中(A)是居住区的次要道路,解决居住区的内部联系。
(A)居住小区级道路(B)宅前小路(C)居住组团级道路(D)居住区级道路
102、按照有关规定,我国一般新建居住区绿化用地占建设用地总面积的比例最少应达到(C)。
(A)10%(B)20%(C)30%(D)40%
103、《中华人民共和国大气污染防治法》规定:在露天焚烧秸秆、落叶等产生烟尘污染物质的,要责令其停止违法行为;情节严重的,可以处(A)以下罚款。(A)200元(B)300元(C)400元(D)500元
104、在IS014000系列标准中,制定环境管理体系的原则、体系和支持技术通用指南是(B)。
(A)IS014001(B)IS014004(C)IS014010(D)IS01401I
105、将企业的保洁制度、各项保洁管理工作的要求以及每一个工作岗位的职责告知保沽部每一位员工,使他们能够自觉地按照具体的岗位职责去要求自己,这应是(C)的工作职责。
(A)保洁部经理(B)保洁技术人员(C)保洁班组长(D)保洁员
106、物业管理区域内的垃圾清运应做到每日清运率(D)(A)50%(B)80%(C)90 %(D)100 %
107、中国物业管理协会制定的《普通住宅小区物业管理服务等级标准(试行)》中保洁服务一项一级、二级和三级标准要求电梯厅、楼道每日清扫次数分别为(C)。
(A)3,2,1(B)l,2,3(C)2,1,l(D)2,2,1
108、居住区的绿化一般应以(A)为主,注意合理布局。
(A)植物造园(B)园林小品(C)苗圃花圃(D)假山水池
109、培训是企业人力资源管理的一项重要士作,在物业管理企业中有必要接受业务培训的人员范围是(C)。
(A)部门经理(B)技术人员(C)所有员工(D)部分普通员工
110、对理论性、知识性较强的物业管理专业培训效果进行考核的最佳方法是(A)。
(A)笔试(B)口试(C)技能竞赛(D)实际模拟
二、多项选择题(1ll~140题,每题1分,共30分。每题有多个答案正确,请在答题卡上将所选答案的相应字母涂黑。错选、少选、多选,均不得分)
111、根据《中华人民共和国行业标准房地产业基本术语标准》,(ABC)不仅包括相关物质实体.而且包括依托于物质实体上的权益。
(A)物业(B)房地产(C)不动产(D)土地
112、根据《物业管理条例》的规定.房地产行政主管部门对日常物业管理活动的监督管理职责包括(ABC)等。
(A)制定物业管理区域划分办法(B)对物业管理区域内公共建筑和共用设施使用性质的改变进行审批(C)指导业主大会的成立(D)对业主委员会委员的人选进行审批
113、学校物业管理的特点包括(BCD)。(A)保洁工作专业性不强(B)物业管理时段性强(C)对安全管理要求高(D)物业管理没有互动性
114、以下(ABCD)符合《中华人民共和国合同法》的有关规定。
(A)合同生效后,当事人不得因姓名、名称的变更而不履行合同义务(B)合同生效后.当事人不得因法定代表人、负责人、承办人的变动而不履行合同义务(C)当事人如果协商一致,可以变更合同(D)当事人如果协商一致,可以解除合同
115、以下关于我国物业管理政策与法律之间关系的表述.正确的是(ABD)。
(A)政策与法律之间有着本质的区别(B)政策与法律是互相联系的(C)法律是政策的依据(D)政策是法律的依据
116、根据《物业管理条例》,以下表述中正确的是(ABC)。(A)业主大会作出决定,必须经与会业主所持投票权1/2以上通过(B)业主大会作出解聘物业管理企业的决定,必须经与会业主所持投票权2/3以上通过(C)业主大会会议应当有物业管理区域内持有1/2以上投票权的业主参加(D)业主大会会议应当有物业管理区域内持有2/3以上投票权的业主参加
117、(CD)符合建设部《前期物业管理招标投标管理暂行办法》的要求。
(A)在任何情况下,住宅的建设单位都必须通过招投标的方式选聘具有相应资质的物业管理企业进行前期物业管理(B)招标人采取邀请招标方式的,应当在公共媒介上发布招标公告(C)新建现售商品房项目应当在现售前30日完成物业管理招标投标工作(D)非出售的新建物业项目应当在交付使用前90日完成物业管理招标投标工作
118、根据《业主大会规程》的规定,业主筹备成立业主大会的.应当组建业主大会筹备组.筹备组应当做好(BCD)等项筹备工作。
(A)确定首次业主大会会议召开的时间、地点、形式和内容(B)确认业主身份.确定业主在首次业主大会会议上的投票权数(C)确定业主委员会委员候选人产生办法及名单(D)参照政府主管部门制订的示范文本.拟定《业主大会议事规则》(草案)和《业主公约》(草案)
119、以下部门规章中,建设部已宣布废止的有(CD)
(A)《城市危险房屋管理规定》(建设部令第4号.1989年11月21日发布)(B)《城市房屋修缮管理规定》(建设部令第11号.1991年7月8日发布)。(C)《城市公有房屋管理规定》(建设部令第34号,1994年3月23日发布)(D)(城市房屋白蚁防治管理规定)(建设部令第72号,1999年lO月25日发布)
120、根据《房屋接管验收标准》,新建物业质量与使用功能的接管验收标准应达到(ABD)。(A)砖石结构没有明显裂缝(B)木结构无蚁害(C)两层以上房屋在公用部位设置屋面检修孔(D)楼地面没有裂缝和脱皮现象
121、原有物业接管验收的主要内容包括(ABC)等。
(A)从外观检查建筑物整体的变异状态(B)检查房屋结构、装修和设备的完好与损坏程度 ’(C)查检房屋使用情况(D)评估房屋的完损程度
122、物业管理企业的提前解聘一般发生在物业服务合同履行过程中双方发生争议时,解决争议的正确方法有(ABCD)。
(A)双方充分协商(B)提请物业管理行政主管部门调解(C)提交仲裁机构进行仲裁(D)提交法院依法裁决
123、根据国家发展和改革委员会与建设部联合制定的《物业服务收费管理办法》规定,物业服务成本或者物业服务支出构成中应包括(ABCD)。
(A)物业管理企业房屋维修设备购置费(B)管理服务人员的加班费、服装费(C)物业管理公共区域节日装饰费(D)物业管理公共区域垃圾桶购置费
124、测算物业服务费的原则包括(ABC)等。
(A)严格控制成本的原则(B)业主满意的原则(C)区别对待的原则(D)合理、公开以及费用与业主承受能力相适应的原则
125、根据、<物业服务收费管理办法》.建设单位与物业买受人签订的买卖合同,应当约定物业管理服务内容、服务标准、(AC)等内容。
(A)收费标准(B)收费地点(C)计费方式(D)计费起始时间 126、业主违反物业服务合同约定逾期不交纳服务费用或者物业服务资金的。(AB)应当督促其限期交纳。
(A)业主委员会(B)业主大会(C)物业管理企业(D)居委会
127、根据《城市房屋租赁管理办法》的规定.房屋租赁的有关政策主要有(BD)等。
(A)房屋租赁期限届满后,承租人需要继续租用的.应当在租赁期限届满前6个月提出,并经出租人同意,重新签订租赁合同 .(B)租赁期限内.房屋出租人转让房屋所有权的,房屋受让人应当继续履行原租赁合同的规定(C)承租人拖欠租金累计3个月以上,出租人有权终止合同。收回房屋(D)房屋转租期间,原房屋租赁合同变更、解除或者终止,转租合同也随之相应变更、解除或者终止
128、物业管理人员与客户沟通的技巧有(ABCD)。
(A)耐心倾听(B)反馈信息(C)协调矛盾(D)解决疑难
129、客户关系管理计划应包括(ABCD)等项内容。
(A)客户状态分析(B)本客户关系管理的具体内容和重点(C)本客户关系管堡的实施方式(D)本客户关系管理的实施时间与人员
130、物业管理企业可以在物业管理区域内开展的专题活动有(AC)。
(A)棋牌有奖比赛(B)全国性中小学生有奖数学竞赛(C)网络游戏比赛(D)物业管理区域内业主手工艺品制作比赛
131、危房的划分,一定要根据(ABC)等因素而定。(A)房屋构件损坏范围(B)房屋构件损坏程度(C)房屋构件损坏对周重环境的危害程度(D)房屋的产权状况
132、房屋维修管理的原则包括(ACD)。
(A)确保房屋完好(B)提升房屋档次(C)改善使用功能(D)提高使用效益
133、以下有关房屋装修管重妁国家标准、行业标准和建设部颁布的部门规章中,目前仍然有效的是(ABCD)。
(A)《建筑装饰装修管理规定》(B)《住宅室内装饰装修管理办法》(C)《住宅装饰装修工程施工规范》(D)《室内装饰工程质量规范》
134、房屋附属设各设施的养护管理制度,一般应根据房屋各类附属设各设施的(ABCD)等制定。
(A)系统组成(B)作用与特性(C)养护要求(D)使用规程
135、物业管理区域内电梯的(CD)工程均应在每年设备普查的基础上提出下一的维修计划,经上级部门批准后,安排施工。
(A)急修(B)小修(C)中修(D)大修
136、特种设备出厂时,应当附有安全技术规范要求的(ABC)等文件;加果缺少上述规定的文件,物业管理企业可以拒绝接收。
(A)设计文件(B)产品质量合格证明(C)安装及使用维修说明(D)监督检验证明
137、物业管理区域内的建筑安全防范智能化系统一般由(ABCD)子系统组成?
(A)电视监控(B)出入口控制(C)防盗报警(D)电子巡更 138、大型物业管理区域内安全保卫管理人员的安排,一般有以下几种形式:(ABC)?
(A)聘用专业保安公司的保安人员(B)物业管理企业自己组建保安部(C)聘用专业保安人员与企业自己组建保安部结合(D)物业管理企业其他部门工作人员兼作保安员
139、在物业管理区域内举行消防演习,正确的做法是(ABCD)?
(A)提前1个月将消防演习计划方案上报业主委员会(B)在实施演习前2周。向客户发出消防演习通知(C)演习前3天,由灭火总指挥带领相关负责人对消防演习准备工作进行最后综合检查(D)在消防演习前2天.在公共区域张贴告示,进一步提示客户关于消防演习事宜
140、我国每座城市都要组织编制城市绿地系统规划.其法律依据主要是(ABD)等?
(A)《中华人民共和国城市规划法》(B)《城市绿化条例》(C)《城市绿化管理办法》(D)《城市绿线管理办法》
第四篇:全国计算机等级考试二级VF考点分析
全国计算机等级考试二级VF考点分析之VF基础(第一章)1.1 数据库基础知识 考点1 计算机数据管理的发展
1数据与数据处理
数据是指存储在某一种媒体上能够识别的物理符号。数据处理的中心问题是数据管理。
2计算机数据管理
(l)人工管理。
(2)文件系统。
(3)数据库系统。
(4)分布式数据库系统。
(5)面向对象数据库系统。
3数据库管理系统
为数据库的建立、使用和维护而配置的软件称为数据库管理系统DBMS(DataBase Management System)。
图1-1 数据库系统中数据与程序的关系 考点2 数据库系统
1有关数据库的概念
(1)数据库(DataBase):存储在计算机存储设备上、结构化的相关数据的集合。
(2)数据库应用系统(DBAS):是由系统开发人员利用数据库系统资源开发出来的,面向某一类实际应用的应用软件系统。
(3)数据库管理系统(DBMS):对数据实行专门管理,提供安全性和完整性等统一机制,可以对数据库的建立、使用和维护进行管理。
(4)数据库系统(DBS):是指引进数据库技术后的计算机系统,实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享的便利手段。数据库系统由硬件系统、数据库、数据库管理系统及相关软件、数据库管理员和用户等部分组成。
2数据库系统的特点
(l)实现数据共享,减少数据冗余。
(2)采用特定的数据模型。
(3)具有较高的数据独立性。
(4)具有统一的数据控制功能。考点3 数据模型
1实体的描述
(1)实体。
(2)实体的属性。
(3)实体集和实体型。
2实体间联系及联系的种类
(1)一对一联系。
(2)一对多联系。
(3)多对多联系。
3数据模型简介
为了反映事物本身及事物之间的各种联系,数据库中的数据必须有一定的结构,这种结构用数据模型来表示,通常有以下3种。
(1)层次数据模型。
(2)网状数据模型。
(3)关系数据模型。小提示:
数据库DB、数据库系统DBS和数据库管理系统DBMS之间的关系是DBS包括DB和DBMS。1.2 关系模型
关系模型的用户界面非常简单,一个关系的逻辑结构就是一张二维表。这种用二维表的形式表示实体和实体间联系的数据模型称为关系数据模型。
1关系术语
(l)关系:一个关系就是一张二维表,每个关系有一个关系名。在Visual FoxPro中一个关系存储为一个文件,扩展名为DBF,称为“表”。
对关系的描述称为关系模式,一个关系模式对应一个关系的结构,格式为:
关系名(属性名1,属性名2,„,属性名n)
(2)元组:在一个二维表中,水平方向的行称为元组,每一行为一个元组。
(3)属性:将二维表中垂直方向的列称为属性,每一列都有一个属性名。
(4)域:属性的取值范围,即不同元组对同一个属性的取值所限定的范围。
(5)关键字:属性或属性的组合,其值能够唯一地标识一个元组。在Visual FoxPro中,主关键字和候选关键字就起唯一标志一个元组的作用。
(6)外部关键字:如果表中一个字段不是本表的主关键字或候选关键字,而是另一个表的主关键字或候选关键字,那么这个字段(属性)就称为外部关键字。
2关系的特点
(1)关系必须规范化。
(2)在同一个关系中不能出现同名属性,Visual FoxPro中表示为字段名的不同。
(3)关系中不允许有完全相同的元组,即冗余。
(4)在一个关系中元组的次序无关紧要。
(5)在一个关系中列的次序无关紧要。考点5 关系运算
对关系数据库进行查询时,需要找到用户感兴趣的数据,这就需要对关系进行一定的关系运算,关系的基本运算有两类:传统的集合运算和专门的关系运算。
1传统的集合运算
(1)并:两个相同结构关系的并是由属于这两个关系的全部元组组成的集合。
(2)差:两个相同结构关系的差是由属于前一个关系的元组而不属于后一个关系的元组组成的集合。例如,关系R和S的差结果是由属于R但不属于S的元组组成的集合。
(3)交:两个相同结构关系的交是由属于这两个关系所共有的元组组成的集合。
2专门的关系运算
(1)选择:从关系中找出满足给定条件的元组的操作。
(2)投影:从关系模式中指定若干个属性组成新的关系:
(3)连接:关系的横向结合,将两个关系模式拼接成一个更宽的关系模式。
(4)自然连接:在连接运算中,按照字段值对应相等为条件进行的连接操作称为等值连接。自然连接是去掉重复属性的等值连接。小提示:
选择和投影运算的操作对象只是一个表,相当于对一个二维表进行切割。连接运算则需要把两个表作为操作对象。如果两个表以上进行连接,应当两两进行连接。1.3 数据库设计基础 考点6 数据库设计步骤
1设计原则
(l)关系数据库的设计应遵从概念单一化“一事一地”的原则。
(2)避免在表之间出现重复字段。
(3)表中的字段必须是原始数据和基本数据元素。
(4)用外部关键字保证有关联的表之间的联系。
2设计步骤
利用Visual FoxPro来开发数据库应用系统,可以按照以下步骤来设计。
(1)需求分析。
(2)确定需求表C
(3)确定需求字段。
(4)确定联系。
(5)设计精确
1.4 Visual FoxPro系统概述 考点7 Visual FoxPro的特点
(l)增强项目与数据库管理。
(2)提高应用程序开发的生产率。
(3)互操作性与支持Internet。
(4)充分利用已有数据。
全国计算机等级考试二级VF考点分析之VF系统初步(第二章)2.1 Visual FoxPro的安装和启动 考点1 Visual FoxPro的系统要求
Visual FoxPro功能强大,但它对系统的要求并不高,个人计算机软硬件基本要求如下。
(1)处理器;486DX/66 MHz处理器,推荐使用Pentium或更高处理器的PC。
(2)内存:16MB以上的内存,推荐使用24MB内存。
(3)硬盘空间:典型安装需要85 MB硬盘空间,最大安装需要90MB硬盘空间。
(4)其他硬件:一个鼠标、一个光盘驱动器。推荐使用 VGA或更高分辨率的监视器。
(5)操作系统:由于Visual FoxPro是32位产品,需要在Windows 95/98(中文版)、Windows NT 4.0(中文版)或更高版本的操作系统上运行。小提示:
退出Windows中的应用程序或关闭窗口等操作,都可以利用快捷键Alt + F4来完成。2.2 Visual FoxPro的用户界面 考点2 Visual FoxPro的主界面
Visual FoxPro的主界面即其工作环境,启动 Visual FoxPro后,打开如图2一l所示的界面。
考点3 工具栏的使用
设置工具栏是微软公司流行软件的共同特点,利用各种工具栏比菜单要方便得多。其默认界面仅包括“常用”工具栏和“表单设计器”工具栏。除此之外,Visual FoxPro还提供其他10个工具栏,如表2-1所示。
小提示:
Visual FoxPro中有两种工作方式:交互操作方式和程序方式,命令方式和菜单方式都属于交互操作方式。2.3 项目管理器 考点4 使用项目管理器
(1)项目管理器窗口中共有6个选项长,其中“全部”选项卡用来集中显示该项目中的所有文件,“数据”、“文档”、“类”、“代码”和“其他“5个选项卡用来分类显示各种文件。
(2)项目管理器一是提供了简便的、可视化的方法来组织和处理表、数据库、表单、查询和其他一切文件,通过单击鼠标就能实现对文件的创建、修改、删除等操作;二是在项口管理器中可以将应用系统编译成一个扩展名为APP的应用文件或EXE的可执行文件。
(3)在Visual FoxPro中的不同文件类型及其扩展名,如表2-2所示。
表2-2 Visual FoxPro中的不同文件类型及其扩展名
考点5 定制项目管理器
(l)移动、缩放和折叠。
(2)拆分项目管理器。
(3)停放项目管理器 小提示:
要拆分选项卡使之单独使用,必须将选项卡折叠后才可以实现。2.4 Visual FoxPro向导、设计器、生成器 考点6 Visual FoxPro的向导
向导是一种交互式程序用户在一系列向导屏幕上回答问题或者选择选项后,向导会根据回答生成文件或者执行任务,帮助用户快速完成一般性的任务〔例如创建表单、编排报表的格式、建立查询、制作图表、生成数据透视表、生成交叉表报表及在Web上按HTML格式发布等。考点7 Visual FoxPro的设计器
Visual FoxPro的设计器是创建和修改应用系统各种组件的可视化工具:利用各种设计器使得创建表、表单、数据库、查询和报表及管理数据变得轻而易举,为初学者提供了方便。考点8 Visual FoxPro的生成器
生成器是带有选项卡的对话框,用于简化对表单、复杂控件及参照完整性代码的创建和修改过程。每个生成器显示一系列选项卡,用于设置选中对象的属性。可使用生成器在数据库表之间生成控件、表单、设置控件格式和创建参照完整性。
全国计算机等级考试二级VF考点分析之数据与数据运算(第三章)3.1 常量与变量 考点1 常量
常量用以表示一个具体的、不变的值。不同类型常量的书写格式不同。在Visual FoxPro中,常量主要包括以下几种类型。
1数值型常量
数值型常量即常数,用来表示一个数量的大小,由数字0~9小数点和正负号组成。
2货币型常量
货币型常量用来表示货币值,其书写格式与数值型常量类似,但要加上一个前置的符号($)。
3字符型常量
字符型常量也称为字符串,其表示方法是用半角单引号、双引号或方括号把字符串括起来。这里的单引号、双引号或方括号称为定界符许多常量都有定界符。定界符虽然不作为常量本身的内容,但它规定了常量的类型及常量的起始和终止界限。
4日期型常量
日期型常量的定界符是一对花括号。花括号内包括年、月、日3部分内容,各部分内容之间用分隔符分隔。
5日期时间型常量
日期时间型常量包括日期和时间两部分内容:{<日期>,<时间>}。<日期>部分与日期型常量相似,也有传统的和严格的两种格式。
6逻辑型常量
逻辑型数据只有逻辑真和逻辑假两个值。前后两个句点作为逻辑型常量的定界符是必不可少的,否则会被误认为变量名。逻辑型数据只占用1字节。考点2 变量
Visual FoxPro中变量分为字段变量和内存变量二其中字段变量就是表中的字段。内存变量是内存中的一块存储区域,变量值就是存放在这个存储区域里的数据,变量的类型取决于变量值的类型。内存变量的数据类型包括:字符型(C)、数值型(N)、货币型(Y)、日期型(D)、日期时间型(T)和逻辑型(L)。
1简单的内存变量
每一个变量都有一个名字,可以通过变量名访问变量。如果当前表中存在一个同名的字段变量,则在访问内存变量时,必须在变量名前加上前缀M.(或M->),否则系统将访问同名的字段变量。
2数组
与简单内存变量不同,数组在使用之前一般要用DIMENSION或DECLARE命令显示创建,规定数组是一维数组还是二维数组,数组名和数组大小。数组大小由下标值的上、下限决定,下限规定为1。在使用数组和数组元素时,应注意如下问题。
(1)在一切使用简单内存变量的地方,均可以使用数组元素。
(2)在赋值和输入语句中使用数组名时,表示将同一个值同时赋给该数组的全部数组元素。
(3)在同一个运行环境下,数组名不能与简单变量名重复。
(4)在赋值语句中的表达式位置不能出现数组名。
(5)可以用一维数组的形式访问二维数组。考点3 内存变量常用命令
1内存变量的赋值
格式1:<内存变量名>=<表达式>
格式2:STORE<表达式>TO<内存变量名表>
2表达式值的显示
格式1:?<表达式表>
格式2:??<表达式表>
3内存变量的显示
格式1:LIST MEMORY[LIKE<通配符>][TO PRINTER!TO FILE<文件名>]
格式2:DISPLAY MEMORY[LIKE<通配符>][TO PRINTER|TO FILE<文件名>]
4内存变量的清除
格式1:CLEAR MEMORY
格式2:RELEASE<内存变量名表>
格式3:RELEASE ALL[EXTENDED]
格式4:RELEASE ALL[LIKE<通配符>|EXCEPT<通配符>]
5表中数据与数组数据之间的交换
将表的当前记录复制到数组。
格式1:SCATTER[FIELDS<字段名表>][MEMO]TO<数组名>[BLANK]
格式2:SCATTER[FIELDS LIKE<通配符>|FIELDS EXCEPT<通配符>][MEMO]TO<数组名>[BLANK]
将数组数据复制到表的当前记录。
格式1:GATHER FROM<数组名>[FIELDS<字段名表>][MEMO]
格式2:GATHER FROM<数组名>[FIELDS LIKE<通配符>|FIELDS EXCE<通配符>][MEMO] 小提示:
如果当前表中存在一个同名的字段变量,则在访问内存变量时,必须在内存变量名前加上前缀M.(或M->),否则系统访问的将是同名的字段变量。3.2 表达式
考点4 数值、字符与日期时间表达式
1数值表达式
(1)算术运算优先级。数值表达式中的算术运算符有些与日常使用的运算符稍有Lx=别,算术运算符及其含义和优先级如表3-1所示。
表3-1 算术运算符及其优先级
(2)求余运算。求余运算%和取余函数MOD()的作用相同。余数的正负号与除数一致当表达式中出现*、/和%运算时,它们具有相同的优先级。
2字符表达式
由字符串运算符将字符型数据连接起来形成,其结果仍是字符型数据字符型数据只能进行两种运算(+、-),它们的优先级相同。
“+”首尾连接前后两个字符串形成一个新的字符串;“-”连接前后两个字符串,并将前字符串的尾部空格移到合并后的新字符串尾部 3日期时间表达式
日期时间表达式中可以使用的运算符也有“+”和“-”两个,其格式也有一定的限制,不能任意组合,如不能用运算符“+”将两个<日期>连接起来。考点5 关系表达式
1关系表达式
关系表达式通常也称为简单逻辑表达式,它是由关系运算符将两个运算对象连接起来而形成的,即:<表达式><关系运算符><表达式>。关系运算符及其含义如表3-2所示,它们的优先级相同。表3-2 关系运算符
2设置字符的排序次序
当比较两个字符串时,系统对两个字符串的字符自左向右逐个进行比较;一旦发现两个对应字符不同,就根据这两个字符的排序序列决定两个字符串的大小
3字符串精确比较与EXACT设置
在用双等号运算符==比较两个字符串时,只有当两个字符串完全相同(包括空格及各字符的位置)时,运算结果才会是逻辑真.T.,否则为逻辑假.F.。考点6 逻辑表达式
1逻辑表达式
逻辑运算符的运算规则如表3-3所示,其中
表3-3 逻辑运算规则
2运算符优先级
.NOT.或!(逻辑非)、.AND.(逻辑与)、.OR.(逻辑或)依次降低。小提示:
表达式是指常量、变量、函数或由它们通过特定的运算符连接起来的式子。3.3 常用函数 考点7 数值函数
数值函数是指函数值为数值的一类函数,它们的自变量和返回值往往都是数值型数据。
1绝对值和符号函数
格式:ABS<数值表达式>)
SIGN(<数值表达式>)
功能:ABS()返回指定的数值表达式的绝对值。SIGN()返回指定数值表达式的符号。
2求平方根函数
格式:SQRT(<数值表达式>)
功能:返回指定表达式的平方根,表达式的值不能为负。
3圆周率函数
格式:PI()
功能:返回圆周率二,该函数没有自变量。
4求整数函数
格式:INT(<数值表达式>)CEILING(<数值表达式>)FLOOR(<数值表达式>)
功能:INT()返回指定数值表达式的整数部分。CEILING()返回大于或等于指定数值表达式的最小整数。FLOOR()返回小于或等于指定数值表达式的最大整数。5四舍五入函数
格式:ROUND(<数值表达式I>,<数值表达式2>)
功能:返回<数值表达式I>在指定位置四舍五入后的结果,<数值表达式2>指明四舍五入的位置。若<数值表达式2>大于等于0,表示的是要保留的小数位,若小于。,则表示整数部分的舍入位数。
6求余数函数
格式:MOD(<数值表达式1>,<数值表达式2>)
功能:返回两个数相除后的余数。余数的正、负号与除数相同。如果被除数与除数同号,则函数值为两数相除的余数;如果异号,则函数值为两数相除的余数再加上除数的值。
7求最大值和最小值函数
格式:MAX(<数值表达式1>,<数值表达式2>[,<数值表达式3>„])MIN(<数值表达式1>,<数值表达式2>[,<数值表达式3>„])
功能MAX()返回自变量中的最大值。MIN()返回自变量中的最小值。考点8 字符函数
1求字符串长度函数
格式:LEN(<字符表达式>)
功能:返回指定字符表达式值的长度,即字符个数。
2大小写转换函数
格式:LOWER(<字符表达式>)UPPER(<字符表达式>)
功能:LOWER()将指定表达式中的大写字母转换成小写字母,其他字符保持不变;UPPER()将指定表达式中的小写字母转换成大写字母,其他字符保持不变。
3空格字符串生成函数
格式:SAPCE(<数值表达式>)
功能:返回由指定数目的空格组成的字符串。
4侧除前后空格函数
格式:TRIM(<字符表达式>)LTRIM(<字符表达式>)ALLTRIM(<字符表达式>)
功能:TRIM()删除指定表达式尾部的空格。LTRIM()删除指定表达式前端的空格。ALLTRIM()删除指定字符串前端和尾部的空格。
5取子串函数
格式:LEFT(<字符表达式>,<长度>)RIGHT(<字符表达式>,<长度>)SUBSTR(<字符表达式>,<起始位置>[,<长度>])
功能:LEFT()从指定表达式左端截取一个指定长度的子串作为函数值。RIGHT()从指定表达式右端载取一个指定长度的子串作为函数值。SUBSTR()从指定表达式指定位置截取一个指定长度的子串作为函数值,若默认<长度>,则截取的子串表示从指定位置开始一直到字符串尾部。
6计算子串出现次数函数
格式:OCCURS(<字符表达式1>,<字符表达式2>)
功能:返回第一个字符串在第二个字符串中出现的次数。
7求子串位置函数
格式:AT(<字符表达式1>,<字符表达式2>[,<数值表达式>])ATC(<字符表达式1>,<字符表达式2>[,<数值表达式>])
功能:AT()返回第一个字符串的首字符在第_二个字符串中出现的位置。前提条件是第一个字符串必须是第二个字符串的子串,否则函数返回值为0。ATC()功能与AT()类似,但不区分字符串中字符的大小写。
8子串替换函数
格式:STUFF<字符表达式1>,<起始位置>,<长度>,<字符表达式2>)
功能:用<字符表达式2>的值替换<字符表达式I>中由<起始位置>和<长度>指定的一个子串。
9字符替换函数
格式CHRTRAN(<字符表达式1>,<字符表达式2>,<字符表达式3>)
功能:该函数的自变量是三个字符表达式。当第一个字符串中的一个或多个字符与第二个字符串中的某个字符相匹配时,应用第三个字符串中的对应字符(相同位置)替换这些字符如果第三个字符串包含的字符个数少于第二个字符串包含的字符个数,因为没有对应字符,那么第一个字符串中相匹配的各字符将被删除。如果第三个字符串包含的字符个数多于第二个字符串包含的字符个数,多余字符将被忽略。
10字符串匹配函数
格式:LIKE(<字符表达式I>,<字符表达式2>)
功能:比较两个字符串对应位置_L的字符。其中<字符表达式1>中可包含通配符*和?。*表示若干个任意字符,?表示任意一个字符。考点9 日期和时间函数
1系统日期和时间函数
格式:DATE()TIME()DATETIME()
功能:DATE()返回当前系统日期,函数值为日期TIME()以24小时制返回当前系统时间,函数值为字符型;DATETIME()返回肖前系统日期时间,函数值为日期时间型。
2求年份、月份和天数的函数
格式:YEAR(<日期表达式>|<日期时间表达式>)MONTH(<日期表达式>|<日期时间表达式>)DAY(<日期表达式>|<日期时间表达式>)
功能:YEAR()从指定的日期表达式或日期时间表达式中返回年份。MONTH()从指定的日期表达式或日期时间表达式中返回月份DAY()从指定的日期表达式或日期时间表达式中返回月份的天数。这3个函数的返回值均为数值型数据
3求时、分和秒的函数
格式:HOUR(<日期时间表达式>)MINUTE(<日期时间表达式>)SEC(<日期时间表达式>)
功能:HOUR()从指定的日期时间表达式中返回小时部分(24小时制)。MINUTE()从指定的日期时间表达式中返回分钟部分。SEC()从指定的日期时间表达式中返回秒钟部分。考点10 数据类型转换函数
数据类型转换函数的功能是将某一种类型的数据转换成另一种类型的数据。
1数值转换成字符串函数
格式:STR(<数值表达式>[,<长度>[,<小数位数>]])
功能:将<数值表达式>的值转换成字符串,转换时根据需要自动四舍五入。
2字符串转换成数值函数
格式:V AL(<字符表达式>)
功能:将由数字符号(包括符号、小数点)组成的字符型数据转换成相应的数值型数据。
3字替串转换成日期或日期时间函数
格式:CTOD(<字符表达式>)CTOT<字符表达式>)
功能:CTOD()将<字符表达式>转换成日期型数据CTOT()将<字符表达式>转换成日期时间型数据。
4日期或日期时间转换成字符串函数
格式:DTOC(<日期表达式>|<日期时间表达式>[,1])TTOC(<日期时间表达式>[,1])
功能:DTOC()将日期型数据或日期时间型数据的日期部分转换成字符串。TTOC()将日期时间型数据转换成字符串。
5宏替换函数
格式:&<字符型变量>[.]
功能:替换出字符型变量的内容,即&的值是变量中的字符串。如果该函数与其后面的字符无明显分界,则要用“.”作为函数结束标识宏替换可以嵌套使用。考点11 测试函数
1值域测试函数
格式:BETWEEN(<表达式1>,<表达式2>,<表达式3>)
功能:判断一个表达式的值是否介于其他两个表达式的值之间。
2空值(NULL)测试函数
格式:ISNULL(<表达式>)
功能:判断一个表达式的运算结果是否为NULL值。
3“空”值测试函数
格式:EMPTY(<表达式>)
功能:略。
4数据类型测试函数
格式:VARTYPE(<表达式>[,<逻辑表达式>])
功能:测试表达式的类型,返回一个大写字母,函数值为字符型。字母含义如表3-4所示。
表3-4 VARTYPE()测得的数据类型
5表文件尾测试函数
格式:EOF([<工作区号>|<表别名>])
功能:测试当前表文件(若默认自变量)或指定表文件中的记录指针是否指向文件尾,若是,则返回逻辑真(.T.),否则为逻辑假(.F.)。若在指定工作区上没有打开表文件,则函数返回逻辑假(.F.),若表文件中不包含任何记录,则函数返回逻辑真(.T.)。
6表文件首测试函数
格式:BOF([<工作区号>|<表别名>])
功能:测试当前表义件(若默认自变量)或指定表文件中的记录指针是否指向文件首,若是,则返回逻辑真(.T.),否则为逻辑假(.F.)(若在指定工作区上没有打开表文件,则函数返回逻辑假(.F.),若表文件中不包含任何记录,则函数返回逻辑真(.T.)。
7记录号测试函数
格式:RECNO([<工作区号>|<表别名>])
功能:返回当前表文件(若默认自变量)或指定表文件中当前记录的记录号。如果指定工作区上没有打开表文件,则函数值为0;如果记录指针指向文件尾,则函数值为表文件中的记录数加1;如果记录指针指向文件首,则函数值为表文件中第一条记录的记录号。
8记录个数测试函数
格式:RECCOUNT([<工作区号>|<表别名>])
功能:返回当前表文件(若默认自变量)或指定表文件中的记录个数。如果指定工作区上没有打开表文件,则函数值为0,RECCOUNT)函数不受删除标记及SET DELETED设置的影响,同样测试表中所有的记录个数。
9条件测试函数
格式:IIF(<逻辑表达式>,<表达式1>,<表达式2>)
功能:测试<逻辑表达式>的值,若为逻辑真(.T.),则函数返回<表达式1>的值,否则返回<表达式2>的值<表达式1>和<表达式2>的类型可以不相同。
10记录删除测试函数
格式:DELETED([<工作区号>|<表别名>])
功能:测试当前表文件(若默认自变量)或指定表文件中,记录指针所指的当前记录是否有删除标记“*”。若有,则为真,否则为假。
全国计算机等级考试二级VF考点分析之VF数据库及其操作(第四章)4.1 Visual FoxPro数据库及其建立 考点1 建立和使用数据库
1数据库的建立
(1)在项目管理器中建立数据库。
(2)通过“新建”对话框建立数据库。
(3)使用命令建立数据库,格式为:
CREATE DATABASE[DatabaseName |?]
2数据库的打开
(1)在项目管理器中打开。
(2)通过“打开”对话框打开数据库。
(3)使用命令打开数据库,格式为:
OPEN DATABASE[FileName |?][EXCLUSIVE I SHARED] [NOUPDATE] [VALIDATE] 考点2 修改和删除数据库
Visual FoxPro在建立数据库时建立了扩展名分别为dbc、dct和dcx的3个文件,用户不能直接修改这些文件。
Visual FoxPro中修改数据库实际是打开数据库设计器,完成数据库中各种对象的建立、修改和删除等操作。
可以有3种方法打开数据库设计器。
(1)从项目管理器中打开数据库设计器。
(2)从“打开”对话框中打开数据库设计器。
(3)使用命令打开数据库设计器,格式为: MODIFY DATABASE[DatabaseName|?]
在项目管理器中不管删除还是移去数据库文件,都不会删除其所包含的各个对象做口数据表)。如果要在删除数据库的同时删除其所包含的数据表,就必须使用命令,格式为: DELETE DATABASE DatabaseName|?[DELETETABLES][RECYCLE] 小提示:
在Visual FoxPro中,Open DataBase和Modify DataBase命令的区别在于:Open DataBase打开的只是数据库的工作环境,并不会进入数据库设计器;Modify DataBase是打开数据库设计器。
4.2 建立数据库表 考点3 在数据库中建立表
在数据库中建立数据表,最直接的方法就是在数据库设计器中利用鼠标右键单击空白处,选择“新建表”命令,在弹出的表设计器中设置数据表结构。另外可以在命令窗口利用OPEN DATA命令先打开数据库,然后利用CREATE命令打开表设计器进行数据表设计,如图4-l所示。
图4-1 表设计器
1字段名
(l)自由表字段名最长为10个字符。
(2)数据库表字段名最长为128个字符。
(3)字段名必须以字母或汉字开头。
(4)字段名可以由字母、汉字、数字和下划线组成。
(5)字段名中不能包含空格。
2字段类型和宽度
(1)字符型:可以是字母、数字等各种字符型文本,如用户名称。
(2)货币型:货币单位,如货物价格。
(3)数值型:整数或小数,如订货数量。
(3)浮点型:功能类似于“数值型”,其长度在表中最长可达20位。
(4)日期型:由年、月、日构成的数据类型,如订货日期。
(5)日期时间型:由年、月、日、时、分、秒构成的数据类型,如员工上班的时间。
(6)双精度型:双精度数慎类型,一般用于要求精度很高的数据。
(7)整型:不带小数点的数值类型,如订单的行数。
(8)逻辑型:值为“真”(.T.)或假(.F.),如表示订单是否已执行完。
(9)备注型:不定长的字符型文本。在表中占4个字节,表备注型文件的扩展名为FPT。
(10)通用型:用于标记电子表格、文档、图片等OLE对象,在表中占4个字节。
(11)字符型(二进制)。
(12)备注型(二进制)。
3空值
一个字段是否允许为空值与实际应用有关,比如作为关键字的字段是不允许为空值的,而那些在插入记录时允许暂缺的字段值往往允许为空值。
4字段有效性组框
在字段有效性组框中可以定义字段的有效性规则、违反规则时的提示信息和字段的默认值。
5显示组框
在显示组框下可以定义字段显示的格式、输入的掩码和字段的标题。输入掩码是字段的一种属性,用限制或控制用户输入的格式。标题用于字段显示时的标题,如果不指定标题则显示字段名。当字段名是英文或缩写时,则通过指定标题可以使界面更友好。
6字段注释
可以为每个字段添加注释,便于日后或其他人对数据库进行维护。考点4 修改表结构
在Visual FoxPro中可以对表结构任意修改,修改表结构和建立表结构时,表设计器界面完全一样。修改数据表结构时,首先应该用USE命令打开要修改的数据表,然后利用MODIFY STRUCTURE打开表设计器进行修改,具体操作有以下几种。
(1)修改已有字段。
(2)添加新字段。
(3)删除不用的字段。4.3 表的基本操作 考点5 使用浏览器操作表
在交互式工作方式下,最简单、方便的方法就是使用BROWSE浏览器浏览表,打开浏览器的方法有多种。在项目管理器中将数据库展开至表,然后单击“浏览”按钮,或直接在窗口中输入BROWSE命令(首先应该打开表文件)。
1浏览器操作
(1)下一记录(下箭头键)。
(2)前一记录(上箭头键)。
(3)下一页(PageDown键)。
(4)上一页(PageUp键)。
(5)下一字段(Tab键)。
(6)前一字段(Shift+Tab键)。
2修改记录
只需将光标定位到要修改的记录和字段上,就可以进行修改了。
3删除记录
Visual FoxPro中删除记录有逻辑删除和物理删除两种,逻辑删除只在记录旁做删除标记(如图4-2所示),必要时可以进行恢复物理删除是在逻辑删除的基础上真正地将记录从表中删除。要在浏览器中删除有删除标记的记录,可选择“表/彻底删除”菜单命令。
图4-2 增加和删除记录
考点6 增加、删除、修改和显示记录的命令
1增加记录
APPEND命令是在表的尾部增加记录,格式有如下两种。
格式1:APPEND
格式2:APPEND BLANK
2插入记录
格式:INSERT [BEFORE][BLANK]
3删除记录
删除记录有物理删除和逻辑删除两种,Visual FoxPro用来删除记录的命令如下。
(1)设置删除标记的命令
格式:DELETE [FOR lExpressionl]
说明:如果不使用FOR短语指定逻辑条件,则只删除当前记录,否则逻辑删除满足条件的所有记录。
(2)恢复记录的命令。
格式:RECALL [FOR lExpressionl]
说明:使用该命令恢复表中逻辑删除的记录,短语FOR的功能同上。
(3)物理删除有删除标记的记录
格式:PACK
说明:此命令用来物理删除当前表中所有带删除标记的记录。
(4)物理删除表中的全部记录
格式:ZAP
说明:不管表中记录是否带有删除标记,此命令可以一次性将当前表中的记录全部物理删除,但表结构仍保留使用此命令相当于DELETE ALL与 PACK的连用。
4修改记录
在Visual FoxPro中可以交互修改记录,也可以用指定值直接修改记录。
(1)用EDIT或CHANGE命令交互式修改。
(2)用REPLACE命令直接修改。
5显示记录
格式:LIST/DISPLAY [[FIELDS]FieldList][FOR LExpressionl][OFF] [TO PRINTER[PROMPT]|TO FILE FileName] 考点7 查询定位的命令
(1)用GOTO命令直接定位
(2)SKIP命令
(3)用LOCATE命令定位。
LOCATE命令是按条件定位记录位置,格式为: LOCATE FOR IExpressionl LOCATE命令常用结构如下。LOCATE FOR IExpression1 DO WHILE FOUND()****处理数据*** CONTINUE ENDDO 小提示:
连续使用DELETE ALL和PACK命令,其操作结果与ZAP命令一样,都可以将表中的所有记录一次性物理删除。4.4 索引与排序 考点8 索引的基本概念
索引是对表中的记录按照某种逻辑顺序重新排列。
(l)主索引:在指定的字段或表达式中不允许出现重复值的索引,且一个表只能创建一个主索引。
(2)候选索引:具有与主索引相同的性质和功能,但一个表中可以创建多个候选索引,其指定的字段或表达式中也不允许出现重复值。
(3)唯一索引:它的“唯一性”是指索引项的唯一,而不是字段值的唯一。但在使用该索引时,重复的索引段值只有唯一一个值出现在索引项中。
(4)普通索引:不仅允许字段中出现重复值,并且索引项中也允许出现重复值。考点9 索引的建立
1单项索引
在表设计器界面中有“字段”、“索引”和“表”3个选项卡,在“字段”选项卡中定义字段时就可以直接指定某些字段是否为索引项,用鼠标单击定义索引的下拉列表框可以看到3个选项:无、升序和降序(默认是无)。如果选定升序或降序,则在对应的字段上建立一个普通索引,索引名与字段名同名,索引表达式就是对应的字段。
2复合字段索引
(1)在“索引”选项卡中的索引名栏目中输入索引名。
(2)在索引类型的下拉框中选择索引类型。
(3)单击表达式栏右侧的按钮,打开表达式生成器。
(4)在“表达式”文本框中输入索引表达式(如图4-3所示),最后单击“确定”按钮。
图4-3 表达式生成器界面
3使用命令建立索引
格式:INDEX ON eExpression TO IDXFileName | TAG TagName[OF CDXFileName] [FOR lExpression][COMPACT] [ASCENDING | DESCENDING] [UNIQUE | CANDIDATE] [ADDITIVE]
从索引的组织方式来讲,索引共有3种类型。
(1)单独的IDX索引,是一种非结构索引。
(2)采用非默认名的CDX索引,也是一种非结构复合索引。
(3)与表同名的CDX索引,是结构复合索引。
结构复合索引文件可随表的打开而打开,在同一个索引文件中能包含多个索引方案或索引关键字,在添加、更改或删除记录时自动维护索引。考点10 索引的使用
(l)打开索引文件,格式为: SET INDEX TO Indexfilelist
(2)设置当前索引,格式为:
SET ORDER TO[nIndexNumber |[TAG]TagName][ASCENDING|DESCENDING]
(3)使用索引快速定位,格式为:
SEEK eExpression[ORDER nIndexNumber|[TAG]TagName][ASCENDING| DESCENDING]
(4)删除索引,格式为:
DELETE TAG TagNamel &&TagName1为索引名
要删除全部索引,可使用命令:DELETE TAG ALL 考点11 排序
索引可以使用户按照某种顺序浏览或查找表中的记录,这种顺序是逻辑的,如要对表中的记录按物理顺序重新排列,可使用SORT命令,格式为:
SORT TO TableName ON FieldNainel[/A}/D][/C][,FieldName2[/A|/D][/C]„][ASCEND ING | DESCENDING][FOR lExpressionl][FIELDS FieldNameList] 小提示:
在数据库表中只能有一个主索引,且只能在表设计器中建立。其他3种索引可以建立多个,既能在表设计器中建立,也能以命令方式建立,但在自由表中不能为其创建主索引,只能创建后3种索引,同样也可以建立多个。4.5 数据完整性
考点12 实体完整性与主关键字
(1)实体完整性是保证表中记录唯一的特性,即在同一个表中不允许有重复的记录出现。在Visual Pro中通过主索引和候选索引来保证数据的实体完整性。
(2)如果一个字段的值或几个字段的值能够唯一标志表中的一条记录,则称这个字段为候选关键字。在Visual FoxPro中将主关键字称做主索引,将候选关键字称为候选索引。考点13 参照完整性与表之间的关联
1建立表之间的联系
参照完整性与表之间的联系有关,其含义大致是:当插入、删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,检查对表的数据操作是否正确。
在数据库设计器中设计表之间的联系时,要在父表中建立主索引,在子表中建立普通索引,然后通过父表主索引和子表的普通索引建立起两个表之间的联系。
2设置参照完整性约束
建立参照完整性之前,首先必须清理数据库,即物理删除表中被逻辑删除的记录,然后选择两个关联表之间的连线并选择“数据库”、“编辑参照完整性”菜单命令,打开如图4-4所示的“参照完整性生成器”对话框。
图4-4 “参照完整性生成器”对话框 小提示:
欲建立两表之间的联系,首先用鼠标选中一个表的主索引,按住鼠标左键不放,并拖动鼠标到另一个表的索引上,这时鼠标箭头变成小矩形状,最后释放鼠标。4.6 自由表
考点14 数据库表与自由表
自由表是不属于任何数据库的表。在没有打开数据库时,所建立的表就是自由表。数据库表与自由表之间可以相互转化。
1建立自由表的方法
(1)在项目的“数据”选项卡中选择“自由表”,单击“新建”按钮。
(2)在没有打开数据库的情况下,通过“新建”对话框,选择“表”并单击“新建文件”按钮。
(3)在没有打开数据库的情况下,在命令窗口输入CREATE命令,新建自由表。
2数据库表相对于自由表的特点
(l)数据库表可以使用长表名,在表中可以使用长字段名。
(2)可以为数据库表中的字段指定标题和添加注释。
(3)可以为数据库表中的字段指定默认值和输入掩码。
(4)数据库表的字段有默认的控件类。
(5)可以为数据库表规定字段级规则和记录级规则。
(6)数据库表支持主关键字、参照完整性和表之间的联系。
(7)支持INSERT,UPDATE和DELETE事件的触发器。考点15 将自由表添加到数据库中
(1)在数据库设计器中可利用“数据库”→“添加表”菜单命令,在“打开”对话框中选择自由表文件,将其添加到数据库中。
(2)直接用命令方式将自由表添加到当前数据库中,格式为: ADD TABLE TableName|?[NAME LongTableName] 考点16 从数据库中移出表
(1)直接利用命令移出数据库表,格式为:
REMOVE TABLE TableName |?[DELETE][RECYCLE]
(2)从项目管理器中移出数据库。
(3)从数据库设计器中移出数据库。4.7 多个表的同时使用
在Visual FoxPro中,一次可以打开多个数据库,每个数据库都可以打开多个数据表。考点17 多工作区的概念
指定工作区的命令格式为SELECT nWorkArea | cTableAlias,每个表打开后都有两个默认别名,一个是表的自身名,另一个是工作区所对应的别名。在前10个工作区中指定的默认别名是工作区字母A~J,其后面的工作区所对应的别名为W11~W32767。
另外还可以在USE命令中通过ALIAS短语指定表别名。
例如:USE学生表IN 1 ALIAS student,为学生表指定了别名student。考点18 使用不同工作区的表
除了使用SELECT命令切换不同的工作区之外,也可以在一个工作区使用其他工作区的数据表。即通过短语:IN nWorkArea|cTableAlias。在表别名后加上“.”或“->”操作符,可在一个工作区中直接调用其他工作区中数据表的记录。例如当前工作区号为2,要调用1区上学生表中的班级号的相关字段,可使用命令:
学生表.班级号 或学生表->班级号或A.班级号或A->班级号 考点19 表之间的关联
使用SET RELATION命令建立表间记录指针的临时联系(关联)。
格式:SET RELATION TO eExpressionl INTO nWorkAreal I cTableAliasl。
说明:eExpressionl是指建立临时联系的索引关键字,一般是父表的主索引,子表的普通索引。用工作区号 nWorkAreal或表的别名cTableAlias I说明临时联系是由当前工作区的表到哪个表。
利用SET RELATION TO命令将取消当前表到所有表的临时联系。
全国计算机等级考试二级VF考点分析之关系数据库标准语言SQL 5.1 SQL概述 考点1 概述
1概念
SQL是结构化查询语言Structured Query Language的缩写。它包括数据查询、数据定义、数据操纵和数据控制4部分。Visual FoxPro在SQL方面支持数据定义、数据查询和数据操纵功能。另外,由于Visual FoxPro自身在安全控制方面的缺陷,所以它没有提供数据控制功能。
SQL语言的特点
(1)一种一体化的语言。
(2)一种高度非过程化的语言。
(3)语言非常简洁。
(4)可以直接以命令方式交互使用,也可以以程序方式使用。5.2 查询功能
SQL的核心是查询,基本形式由SELECT-FROM-WHERE查询块组成,多个查询块可嵌套执行,如表5-1所示。
表5-1 SQL命令动词
考点2 简单查询
1简单查询
简单查询是由SELECT和FROM短语构成的无条件查询,或由SELECT,FROM和WHERE短语构成的条件查询。
2简单的连接查询
连接是关系的基本操作之一,连接查询是一种基于多个关系的查询。
3嵌套查询
嵌套查询所要求的结果出自一个关系,但关系的条件却涉及多个关系。其内层基本上也是一个SELECT-FROM-WHERE查询语句。这种简单嵌套查询,可使用谓词IN或NOT IN来判断在外层的查询条件中是否包含内层查询的结果。考点3 特殊运算符号
BETWEEN„AND„
含义:该查询的条件是在„„范围之内,相当于用AND连接的一个逻辑表达式。
LIKE
含义:它是一个字符串匹配运算符,与之搭配使用的通配符包括“*”和“?”。考点4 排序
使用SQL SELECT可以将查询结果进行排序,排序的短语是ORDER BY。
格式:ORDER BY Order_Item[ASCIDESC][,Order_Item[ASC|DESC]„]
说明:可以按升序(ASC)或降序(DESC)排序,允许按一列或多列排序。考点5 计算查询
1简单的计算查询
SQL不仅具有一般的检索能力,而且还有计算方式的检索,用于计算检索的函数有:COUNT(计数)、SUM(求和)、AVG(计算平均值)、MAX(求最大值)及MIN(求最小值)。
2分组与计算查询
在SQL SELECT中可以利用GROUP BY子句进行分组计算查询。
格式:GROUP BY GroupColumn[,GroupColumn„][HAVING FilterCondition]
说明:可以按一列或多列分组,还可以用HAVING子句进一步限定分组的条件。它必须跟在GROUP BY子句之后,不可单独使用,与WHERE子句并不矛盾。考点6 别名和自连接查询
(1)SQL语句允许在二OM短语中为关系定义别名,格式为:一 <关系名><别名>
(2)SQL不仅可以对多个关系进行连接操作,也可以将同一关系与其自身进行连接,这种连接就称为自连接。在关系的自连接操作中,别名是必不可少的。考点7 使用量词和谓词的查询
与嵌套查询或子查询有关的运算符,除了IN和NOT IN运算符外,还有两类与子查询有关的运算符,它们有以下两种格式。
(1)<表达式><比较运算符>[ANY I ALL | SOME](子查询)
(2)[NOT]EXISTS(子查询)
EXISTS是谓词,EXISTS或NOT EXISTS是用来检查在子查询中是否有结果返回,即存在元组或不存在元组。其本身并没有进行任何运算或比较,只用来返回子查询结果。考点8 超链接查询
(1)在新的SQL标准中支持两个新的关系连接运算符,这两个新的连接运算是左连接(*=)和右连接=*):首先保证一个表中满足条件的元组都在结果表中,然后将满足连接条件的元组与另一个表的元组进行连接,不满足连接条件的则应将来自另一个表的属性值置为空值。在一般SQL中超链接运算符是“*=”(左连接)和“=*”(右连接)。
(2)在Visual FoxPro中不支持超链接运算符“*=”和“=*”,Visual FoxPro有专门的连接运算。下面拼出SQL中超链接的部分语句格式:
SELECT„ FROM Table INNER|LEFT|RIGHT|FULL JOIN Table ON JoinCondition WHERE„
考点9 Visual FoxPro中SQL SELECT的几个特殊选项
(l)显示部分结果,格式为: TOP nExpr[PERCENT]
(2)将查询结果存放到数组中,格式为: INTO ARRAY ArrayName
(3)将查询结果存放到临时文件中,格式为: INTO CURSOR CursorName
(4)将查询结果存放到永久表中,格式为: INTO DBF|TABLE TableName
(5)将查询结果存放到文本文件中,格式为: TO FILE FileName[ADDITIVE]
(6)将查询结果直接输出到打印机,格式为: TO PRINTER[PROMPT] 5.3 操作功能 考点10 插入
Visual FoxPro支持两种SQL插入命令的格式,一种是标准格式,另一种是特殊格式。
1标准格式
INSERT INTO dbf name[(frame 1[,fname2,„])] VALUES(eExpressionl[,eExpression2,„])
2特殊格式
INSERT INTO dbf _name FROM ARRAY ArrayName|FROM MEMVAR 考点11 更新
SQL的数据更新命令格式如下: UPDATE TableName
SET Column_Namel=eEpressionl[,Column_Name2=eExpression2„] WHERE Condition
说明:利用WHERE字句指定条件,以更新满足条件的一些记录的字段值,并巨一次可更新多个字段;如果不使用WHERE子句,则更新全部记录。考点12 删除
SQL从表中删除数据的命令格式如下: DELETE FROM TableName[WHERE Condition]
说明:FROM指定从哪个表中删除记录,WHERE指定被删除的记录所满足的条件,如果不使用WHERE子句,则删除该表中的全部记录。小提示:
当一个表定义一个主索引或候选索引后,由于相应的字段具有关键字的特性,即不能为空,所以只能用此命令插入记录、)APPEND和INSERT都是插入一条空白记录再输入各字段的值,故不能用它们来插入记录。5.4 定义功能 考点13 表的定义
利用SQL命令建立的数据表同样可以完成在表设计器中设计表的所有功能。
格式:CREATE TABLE I DBF TableNamel[NAME LongTableName][FREE](FieldNarnel FieldType[(nFieldWidth[,nPrecision])][NULL |NOT NULL] [CHECK IExpressionl [ERROR cMessageTextl]] [DEFAULT eExpressionl] [PRIMARY KEY I UNIQUE] [PEFERENCES TableName2[AG TagName1]] [NOCPTRANS] [,FieldName2„]
[,PRIMARY KEY eEpression2 TAG TagName2|,UNIQUE eExpression3 TAG TagName3] [,FOREIGN KEY eExpression4 TagName4[NODUP] REFERENCES TableName3 [TAG TagName5]] [,CHECK lExpression2[ERROR cMessageText2]])|FROM ARRAY ArravNasne
说明:此命令除了建立表的基本功能外,还包括满足实体完整性的主关键字(主索引)PRIMARY KEY、定义域完整性的CHECK约束及出错提示信息ERROR、定义默认值DEFAULT等,另外还有描述表之间联系的FOREIGN KEY和REFERENCES等。考点14 表的删除
利用SQL命令删除表,可直接使用语句,格式为: DROP TABLE Table_name
说明:如果删除的是自由表,则应该将当前打开的数据库先关闭,才能进行删除。如果删除数据库表,则要先打开数据库,在数据库中进行操作二否则,即使删除了数据库表,但记录在数据库中的信息并没有被删除,此后会出现错误提示。考点15 表结构的修改
修改表结构的命令是ALTER TABLE,该命令有3种格式。
(1)ALTER TABLE TableNamel ADD| ALTER[COLUMN]FieldNamel FieldTvpe[(nFieldWidth[,nPrecision])][NULL |NOT NULL] [CHECK lExpressionl[ERROR cMessageTextl ]][DEFAULT eExpressionl] [PRIMARY KEY |UNIQUE] [REFERENCES TableName2[TAG TagNamel〕]
(2)ALTER TABLE TableNamel ALTER[COLUMN]FieldName2[NULL|NOT NULL] [SET EFAULTeExpression2][SET CHECK lExpression2[ERROR cMessageText2] [DROP DEFAULT][DROP CHECK]
(3)ALTER TABLE TableName1[DROP [COLUMN]FieldName3] [SET CHECK lExpression3[ERROR cMessageText3] [DROP CHECK] [ADD PRIMARY KEY eExpression3 TAG TagName2[FOR lExpression4]] [DROP PRIMARY KEY〕
[ADD UNIQUE eExpression4[TAG TagName3[FOR lExpression5]]] [DROP UNIQUE TAG TagName4] [ADD FOREIGN KEY[eExpression5] TAG TagName4[FOR lExpression6] REFERENCES TableName2[TAG TagName5]] [DROP FOREIGN KEY TAG TagName6[SAVE]] [RENAME COLUMN FieldName4 TO FieldName5] 考点16 视图的定义
1视图的概念及其定义
(l)视图的概念。
Visual FoxPro中视图是一个虚拟的表,可以是本地的、远程的或带参数的。
(2)视图的定义,格式为:
CREATE VIEW view name[(column_name[,column_name]„)] AS select_statement
2从单个表派生出来的视图
视图一经定义,就可以和基本表一样进行各种查询,也可以进行一些修改操作。对于最终用户来说,有时并不需要知道操作的是基本表还是视图。
3从多个表派生出来的视图
视图一方面可以限定对数据的访问,另一方面又可以简化对数据的访问。
4视图的删除
视图由于是从表派生出来的,所以不存在修改结构的问题,但是视图可以删除。
格式:DROP VIEW<视图名>
5关于视图的说明
在关系数据库中,视图始终不真正含有数据,它总是原有表的一个窗口。所以,虽然视图可以像表一样进行各种查询,但是插入、更新和删除操作在视图上却有一定限制。在一般情况下,当一个视图是由单个表导出时可以进行插入和更新操作,但不能进行删除操作;当视图是从多个表导出时,插入、更新和删除操作都不允许进行。这种限制是很有必要的,它可以避免一些潜在问题的发生。
全国计算机等级考试二级VF考点分析之查询与视图(第六章)
6.1 查询 考点1 查询设计器
1查询的概念
查询是从指定的表或视图中提取满足条件的记录,然后按照想得到的输出类型定向输出查询结果。查询以扩展名为QPR的文件保存在磁盘上的,这是一个文本文件,它的主体是SQL SELECT语句。
2查询的建立
建立查询可以使用“查询设计器”,但它的基础是SQL SELECT语句。建立查询的方法有以下几个方面。
(l)可以利用CREATE QUERY命令打开查询设计器建立查询。
(2)可以利用“新建”对话框打开查询设计器建立查询。
(3)可以在项目管理器的“数据”选项卡中打开查询设计器建立查询。
(4)可直接编辑QPR文件建立查询。
建立查询时,首先进入如图6-1所示的界面选择用于建立查询的表或视图,选择表或视图后,单击“添加”按钮。最后单击“关闭”按钮,进入如图6-2所示的查询设计器界面。
图6-1 为查询选择表或视图
查询设计器中的各选项卡和SQL SELECT语句的各短语是相对应的,对应关系如下。
“字段”――SELECT短语,用于指定要查询的数据
“连接”――JOIN ON短语,用于编辑连接条件。
“筛选”――WHERE短语,用于指定查询条件。
“排序依据”――ORDER BY短语,用于指定排序字段和排序方式。
“分组依据”――GROUP BY短语和HAVING短语,用于分组。
图6-2 查询设计器
3查询的运行
运行查询有下列两种方法。
(1)可以在项口管理器的“数据”选项卡中,展开“查询”选项,然后选择要运行的查询文件,单击“运行”按钮,可查看查询结果。
(2)在命令窗门执行命令DO QueryFile。
注意:此处的查询文件名是全名,包括扩展名QPR。
4查询去向
设计查询的目的不只是完成一种查询功能,在查询设计器中可以根据需要为查询输出定位查询去向。通过“查询”菜单卜的“查询去向”,或在“查询设计器”工具栏中单击“查询去向”按钮。“查询去向”对话框如图6-3所示
图6-3 “查询去向”对话框
各去向的含义如下。
(1)浏览:在“浏览"(BROWSE)窗口中显示查询结果,这是默认的输出去向。
(2)临时表:将查询结果存储于一个命名的临时只读表中。
(3)表:将结果保存在一个命名的数据表文件中。
(4)图形:查询结果可以用于Microsoft Graph。
(5)屏幕:在Visual FoxPro主窗口或当前活动输出窗口中显示查询结果。
(6)报表:将结果输出到一个报表文件。
(7)标签:将结果输出到一个标签文件。小提示:
在7种输出去向中,只有“浏览”和“屏幕”两种输出去向才能直接看到查询结果。6.2 视图
考点2 视图的概念与建立
1视图的概念
视图是操作表的一种手段,通过视图可以查询表,也可以更新表。视图是根据表定义的,因此视图基于表,而视图可以使应用更灵活,因此它又超越表。视图是数据库中的一个特有功能,只有在包含视图的数据库打开时才能使用。
视图兼有“表”和“查询”的特点,与查询相类似的地方是可以用来从一个或多个相关联的表中提取有用信息;与表类似的地方是可以用来更新其中的信息,并将结果永久性保存在磁盘上。
2视图的建立
(l)用CREATE VIEW命令打开视图设计器建立视图。
(2)利用“新建”对话框打开视图设计器建立视图。
(3)在项目管理器的“数据”选项卡中打开视图设计器建立视图。
(4)利用SQL命令CREATE VIEW...AS...建立视图。
3视图设计象
视图设计器(如图6一所示)与查询设计器基本上一样,主要有以下几点不同。
(1)视图的结果保存在数据库中,在磁盘上找不到类似的文件。
(2)视图可以用来更新数据,因此在设计器中多了一个“更新条件”选项卡。
(3)在视图中没有“查询去向”的问题。
图6-4 视图设计器 考点3 远程视图与连接
为了建立远程视图,必须首先建立连接远程数据库的“连接”,“连接”是Visual FoxPro数据库中的一种对象。
1定义数据源和连接
数据源一般是ODBC数据源,开放数据库互连ODBC是一种连接数据库的通用标准。为了定义ODBC数据源,必须首先安装ODBC驱动程序。
2建立连接
建立连接的方法有以下几种。
(1)用CREATE CONNECTION命令打开“连接设计器”,或完全用命令方式建立连接。
(2)通过“新建”对话框建立连接。
(3)在项目管理器的“数据”选项卡中建立连接。
3设计远程视图
利用数据源或连接建立的远程视图的SQL语法要符合远程数据库的语法,例如,SQL Server的语法和Visual FoxPro的语法就有所区别。考点4 视图与数据更新
视图是根据基本表派生出来的,所以把它叫做虚拟表为了通过视图能够更新基本表中的数据,需要在视图设计器的“更新条件”选项卡中的左下角选中“发送SQL更新”复选框。
1指定可更新的表
如果视图是基于多个表的,默认可以更新“全部表”的相关字段,如果要指定只能更新某个表的数据,则可以通过“表”下拉列表框选择表
2指定可更新的字段
在“字段名”列表框中列出了与更新有关的字段,在字段名左侧有两列标志,“钥匙”表示关键字,“铅笔”表示更新通过单击相应列可以改变相关的状态,默认可以更新所有非关键字字段,并且通过基本表的关键字完成更新,即Visual FoxPro用这些关键字字段来唯一标识那些已在视图中修改过的基本表中的记录建议不要改变关键字的状态,不要试图通过视图来更新基本表中的关键字字段值,如有必要,可以指定更新非关键字字段值
3检查更新的合法性
如图6-1所示,“SQL WHERE子句包括”框中的选项决定哪些字段包含在UPDATE或DELETE语句的WHERE子句中,Visual FoxPro正是利用这些语句将在视图中修改或删除的记录发送到远程数据源或基本表中,WHERE子句就是用来检查自从提取记录用于视图中后,服务器上的数据是否已经改变。
“SQL WHERE子句包括”框中各选项的含义如下。
(l)关键字段:当基本表中的关键字字段被改变时,更新失败。
(2)关键字和可更新字段:当基本表中任何标记为可更新的字段被改变时,更新失败。
(3)关键字和已修改字段:当在视图中改变的任一字段的值在基本表中已被改变时,更新失败。
(4)关键字和时间戳:当远程表上记录的时间戳在首次检索之后被改变时,更新失败。
4使用更新方式
“使用更新”框的选项决定当向基本表发送SQL更新时的更新方式。
(1)SQL DELETE然后INSERT:先用SQL DELETE命令删除基本表中被更新的旧记录,再用SQL INSERT命令向基本表中插入更新后的记录。
(2)SQL UPDATE:使用SQL UPDATE命令更新基本表。考点5 使用视图
视图建立后,不但可以用它来显示和更新数据,而且可以通过调整它的属性来提高性能,它的使用类似于表。
1视图操作
(1)在数据库中使用USE命令打开或关闭视图。
(2)在“浏览器”窗口中显示或修改视图中的记录。
(3)使用SQL语句操作视图。
(4)在文本框、表格控件、表单或报表中使用视图作为数据源。
2使用视图
视图一经建立就基本可以像基本表一样使用,适用于基本表的命令基本都可以用于视图。比如在视图上也可以建立索引,此索引当然是临时的,视图一关闭,索引自动删除,多工作区时也可以建立联系等。但视图不可以用MODIFY STRUCTURE命令修改结构。因为视图毕竟不是独立存在的基本表,它是由基本表派生出来的,只能修改视图的定义。
小提示:
查询与视图的区别是:查询可以定义输出去向,可以将查询的结果灵活地应用于表单、报表、图形等各种场合,但是利用查询不可以修改数据;而利用视图可以修改数据,可以利用SQL将对视图的修改发送到基本表,特别是对于远程表的操作,利用视图是非常有效的。
全国计算机等级考试二级VF考点分析之程序设计基础(第七章)7.l 程序与程序文件
考点1 程序的概念、建立与执行
1程序的概念
程序是能够完成一定任务的命令集合。这组命令被存放在称为程序文件或命令文件的文本文件中。当运行程序时,系统会按照一定的次序自动执行包含在程序文件中的命令。
2程序文件的建立与修改
程序文件的建立与修改一般是通过调用系统内置的文本编辑器来进行的。其建立步骤如下。
(l)打开文本编辑窗口。
(2)在文本编辑窗口中输入程序内容,此处所输入的程序命令不会马上被执行。
(3)编辑完成后,从“文件”菜单中选择“保存”命令或按快捷键Ctrl+W保存程序文件。
3打开或修改程序文件的方法
(1)从“文件”菜单中选择“打开”命令,弹出“打开”对话框。
(2)在“文件类型”列表框中选择“程序”。
(3)在文件列表框中选定要修改的文件,并单击“确定”按钮。
(4)编辑修改后,从“文件”菜单中选择“保存”命令或按快捷键Ctrl+W保存程序文件,若要放弃修改,可直接按Esc键,或从“文件”菜单中选择“还原”命令。
4程序文件的执行
程序文件建立后,可使用多种方式、多次执行它,常用的以下有两种方式。
(l)菜单方式。
(2)命令方式。考点2 简单的输入输出命令
程序一般都包含数据输入、数据处理和数据输出3个部分。
INPUT命令
格式:INPUT[<字符表达式>]TO<内存变量>
功能:该命令等待用户从键盘输入数据,当用户回车后,系统将表达式的值存入指定的内存变量。
注释:输入的数据可以是常量、变量,也可以是更为一般的表达式。但不能不输入任何内容直接按回车键输入字符串时必须加定界符,输入逻辑型常量时要用圆点定界(如.T.,.F.),则输入日期时间型常量时要用大括号(如{^2001-03-01})。
ACCEPT命令
格式:ACCEPT[<字符表达式>]TO<内存变量>
功能:该命令等待用户从键盘输入字符串,当用户回车后,系统将表达式的值存入指定的内存变量。
注释:该命令只能接收字符串。用户在输入字符串时不需要加定界符;否则,系统会把定界符作为字符串本身的一部分。如果不输入任何内容而直接按回车键,系统会把空串赋给指定的内存变量。
WAIT命令
格式:WAIT[<字符表达式>][TO<内存变量>][WINDOW[AT<行>,<列>]] [NOWAIT][CLEARINOCLEAR][TIMEOUT<数值表达式>]
功能:该命令显示字符表达式的值作为提示信息,暂停程序的执行,直到用户按任意键或单击鼠标时继续程序运行。
注释:<内存变量>用来保存用户输入的字符,其类型为字符型。若用户按的是Enter键或单击了鼠标,那么<内存变量>中保存的将是空串若不选TO <内存变量>短语,则输入的单字符不保留。小提示:
如果用DO命令执行查询文件、菜单文件,在文件名中必须要包括扩展名(QPR、MPR)。7.2 程序的基本结构
程序结构是指程序中命令或语句执行的流程结构,包括3种基本结构:顺序结构、选择结构和循环结构。考点3 顺序结构
顺序结构是最简单的程序结构,它是按命令在程序中出现的先后次序依次执行。考点4 选择结构
支持选择结构的语句包括条件语句和分支语句。
1条件语句
格式: IF<条件> <语句序列1> [ELSE> <语句序列2>] ENDIF
功能:该语句根据<条件>是否成立从两组代码中选择一组执行。
语句的执行流程图如图7-1和图7-2所示。
图7-1有ELSE的选择语句
图7-2无ELSE的选择语句
2分支语句
格式:DO CASE CASE<条件1> <语句序列1> CASE<条件2> <语句序列2> „„
CASE<条件n> <语句序列n> [OTHERWISE <语句序列>] ENDCASE
功能:语句执行时,依次判断CASE后面的条件是否成立。分支语句实现的是一种扩展的选择结构,可以根据条件从多组代码中选择一组执行。分支语句的流程如图7-3所示。
图7-3 多分支语句 考点5 循环结构
循环结构也称为重复结构,是指程序在执行的过程中,其中的某段代码被重复执行若一干珠。被重复执行的代码段,通常称为循环体。Visual FoxPro支持循环结构的语句包括:DO WHILE-ENDDO、FOR-ENDFOR和SCAN-ENDSCAN。
DO WHILEENDFOR语句 格式:
FOR<循环变量>=<初值>TO<终值>[STEP<步长>] <循环体> ENDFOR
功能:首先将初值赋给循环变量,然后判断循环条件是否成立(若步长为正值,则循环条件为<循环变量><=<终值>;若步长为负值,则循环条件为<循环变量>>=<终值>)。如果成立,则执行循环体,然后循环变量增加一个步长值,并再次判断循环条件,一直到条件为假时,退出循环体。该语句通常用于实现循环次数已知情况下的循环结构〕
SCAN-ENDSCAN语句
格式:
SCAN[<范围>][FOR<条件1>][WHERE<条件2>] <循环体> ENDSCAN
功能:该循环语句一般用于处理表中记录,语句可指明需要处理的记录范围及应满足的条件。执行该语句时,记录指针自动、依次地在当前表的指定范围内满足条件的记录上移动,对每一条记录执行循环体内的命令。
7.3 多模块程序
模块是一个相对独立的程序段,它可以被其他模块调用,也可以调用其他模块。通常,把被其他模块调用的模块称为子程序,把调用其他模块而没有被其他模块调用的模块称为主程序。应用程序一般都是多模块程序,包含多个程序模块。考点6 模块的定义和调用
1模块的定义
在Visual FoxPro中,模块可以是命令文件,也可以是过程。过程定义的语句格式为: PROCEDURE|FUNCTION<过程名> <命令序列> [RETURN[<表达式>]] [ENDPROCIENDFUNC]
功能说明如下。
(1)PROCEDURE|FUNCTION命令表示一个过程的开始,并命名过程。过程名必须以字母或下划线开头,可以包含数字、字母和下划线。
(2)当程序执行到RETURN命令时,控制将转回到调用处(或命令窗口),并返回表达式的值。若默认RETURN命令,系统将在过程结束处自动调用一条隐含的RETURN命令。
(3)ENDPROC|ENDFUNC命令表示一个过程的结束。如果默认此语句,那么过程结束于下一条PROCEDURE|FUNCTION命令或文件尾。
2模块的调用
模块调用的格式有两种。
(1)使用DO命令,格式如下。DO<文件名>|<过程名>
(2)在名字后加一对小括号,格式如下。<文件名>|<过程名>()
3打开过程文件
命令格式如下。
SET PROCEDURE TO[<过程文件1>[,<过程文件2>,„][ADDITIVE]
4关闭过程文件
命令格式如下。
RELEASE PROCEDURE<过程文件1>[,<过程文件2>,„] 考点7 参数传递
模块程序可以接收调用程序传递过来的参数。
(1)PARAMETERS<形参变量1>[,<形参变量2>,„]。
(2)LPARAMETERS<形参变量1>[,<形参变量2>,„]。
说明PARAMETERS声明的形参被看做是模块程序中建立的私有变量,LPARAMETERS声明的形参被看做是模块程序中建立的局部变量。除此之外,两条命令无其他区别。
不管是PARAMETERS或LPARAMETERS,都应该是模块程序的第一条可执行命令。
(1)调用参数调用模块程序参数的格式如下。
DO<文件名>|<过程名>WITH<实参1>[,<实参2>,„] <文件名>|<过程名>(<实参1>[,<实参2>,„])
说明:实参可以是常量、变量或一般表达式,调用模块程序时,形参的数目不能少于实参的数目,当形参数目多于实参数目时,多余的形参取初值逻辑假.F.。
(2)参数的传递。模块中参数的传递分为两种:按值传递(实参一般为常量和表达式)和引用传递(实参一般为变量)。参数的传递方式可以重新设置,格式如下。SET UDFPARMS TO VALUE|REFERENCE 考点8 变量的作用域
变量的一个重要属性是作用域。变量的作用域指的是变量在什么范围内是有效或能够被访问的。在Visual FoxPro中,可分为公共变量、私有变量和局部变量3类。
1.公共变量
在任何模块中都可使用的变量称为公共变量,公共变量必须先定义后使用,格式如下。PUBLIC<内存变量表>
说明:该命令是建立公共的内存变量,并赋以初值逻辑假.F.。建立好的公共变量一直有效,即使程序结束返回命令窗口也不会消失,只有执行CLEAR MEMORY,RELEASE或QUIT等命令后,才能被释放。
2私有变量
在程序中直接使用(没有预先声明),而由系统自动隐含建立的变量都是私有变量。
私有变量的作用域是建立它的模块及其下属的各层模块。
3局部变量
局部变量只能在建立它的模块中使用,不能在上层或下层模块中使用。程序结束时,自动释放局部变量。格式如下 LOCAL<内存变量表>
说明:该变量同样给建立的内存变量赋以初值逻辑假.F.,也必须先定义后使用。当子程序中定义的变量名与主程序中同名时,为避免子程序中的变量值改变主程序中的变量值,可在子程序中使用PRIVATE命令隐藏主程序中可能存在的变量,使这些变量在子程序中暂时无效。格式如下。
(1)PRIVATE<内存变量表>。
(2)PRIVATE ALL[LIKE<通配符>|EXCEPT<通配符>]。
说明:该命令并不建立内存变量,它只是隐藏指定的在上层模块中可能已经存在的内存变量,但是当模块程序返回到上层模块时,被隐藏的变量就自动恢复有效性,保持原值。7.4 程序调试 考点9 调试器环境
程序调试是指在发现程序有错误的情况下,确定出错位置并纠正错误。计算机一般能够发现程序的出错位置,但对于计算机不能发现的错误,只能由用户自己来查错。Visual FoxPro提供的功能强大的调试工具—调试器,可帮助我们进行这项工作。
调用调试器的方法一般有两种。
(l)选择“工具”菜单中的“调试器”命令。
(2)在命令窗口中输入DEBUG命令。考点10 设置断点
可以设置以下4种类型的断点。
(1)在定位处中断:可指定一行代码,当程序调试执行到该行时,中断程序运行。
(2)如果表达式值为真,则在定位处中断:指定一行代码及一个表达式,当程序调试执行到该行代码时,如果表达式值为真,就中断程序运行。
(3)当表达式值为真时中断:可以指定一个表达式,在程序调试执行过程中,当该表达式值为逻辑真.T.时,中断程序运行。
(4)当表达式值改变时中断:可以指定一个表达式,在程序调试执行过程中,当该表达式值改变时,中断程序运行。考点11 “调试”菜单
“调试”菜单包含执行程序、选择执行方式、终止程序执行、修改程序,以及调整程序执行速度等命令。各命令具体功能如下。
(1)运行:执行在跟踪窗口中打开的程序:
(2)继续执行:当程序被中断时,该命令可使程序在中断处继续往下执行。
(3)取消:终止程序的调试执行,并关闭程序。
(4)定位修改:终止程序的调试执行,然后在文本编辑窗口中打开调试程序。
(5)跳出:以连续方式而非单步方式继续执行被调用模块程序中的代码,然后在调用程序的调用语句的下一行处中断。
(6)单步:单步执行下一行代码。如果下一行代码调用了过程或者方法程序,那么该过程或者方法程序在后台执行。
(7)单步跟踪:单步执行下一行代码。
(8)运行到光标处:从当前位置执行代码直至光标处中断。
(9)调速:打开“调整运行速度”对话框,设置两代码行执行之间的延迟秒数。
(10)设置下一条语句:程序中断时选择该命令,可使光标所在行成为恢复执行后要执行的语句。
全国计算机等级考试二级VF考点分析之表单设计与应用(第八章)8.1 面向对象的概念 考点1 对象与类
1对象(Object)
客观世界里的任何实体都可以被视为对象。对象可以是具体事物,也可以指某些概念二
(1)属性:用来表示对象的状态。
(2)方法:用来描述对象的行为。
2类(Class)
类是对一类相似对象性质的描述。同类对象具有相同的性质:相同的属性及方法。考点2 子类与继承
第五篇:vf二级考试复习笔记__全集
Visual FoxPro数据库程序设计教案 第一章.Visual FoxPro 数据库基础 一.数据库基础知识 • 数据与数据处理
数据:存储在某一种媒体上能够识别的物理符号。数据处理:将数据转换成信息的过程
• 计算机数据管理:指对数据的组织、分类、编码、存储、检索和维护提供操作手段 分为:人工管理 文件系统 数据库系统
分布式数据库系统 面向对象数据库系统 • 数据库系统及其特点 特点:
1. 实现数据共享,减少数据冗余 2. 采用特定的数据模型] 3. 具有较高的数据独立性 4. 有统一的数据控制功能 • 数据模型及相关概念
数据模型:层次型,网状型,关系型 实体,实体属性,实体集和实体型
实体间联系及种类:One to one relationship
One to many relationship
Many to many relationship 二.关系数据库
• 关系数据库相关概念 关系模型:用二维表结构来表示实体以及实体之间联系的模型称为关系模型
关系,元组,属性,关键字,处部关键字
• 关系的特点:必须规范化,即每个属性必须不可分割的数据单元,不能表中含表
同一关系中不能出现相同的属性 关系中不允许有完全相同的元组 在一个关系中元组的次序无关紧要 在一个关系中列的次序无关紧要
• 关系运算:选择,投影,联接(自然联接)三.Visual FoxPro 系统概述
• 安装:资源管理器——>open CD-ROM——>setup.exe Visual FoxPro 的界面
• 菜单操作:鼠标操作,键盘操作,光标操作
• 命令窗口:是vf桌面上一个重要部件,自动保留已输入的命令,如再次执行此命令时只需把光标移至,然后按Enter即可,同时支持对命令的修改、删除、剪切等操作 • 命令窗口的显示和隐藏:
四.项目管理
• 项目管理器窗口:用图形化分类的方法来管理属于同一个项目的文件,是文件、数据、文档和对象的集合(*.pjx)• 各类文件选项卡:
• 使用项目管理器:添加文件,修改文件,移去文件 • 定制项目管理器:--移动、缩放、折叠、拆分、停放
• 设计器:是一个操作平台,是创建和和修改应用系统各种组件的可视化工具。
• 生成器:辅助设计 VF命令语句语法约定: [ ]
可选项
< >必选项
| 或
dimension <数组名>(<下标上限1>[,<下标上限2>]>)set century on|off 第二章.Visual FoxPro程序设计基础
VF中有四种形式的数据:常量、变量、表达式、函数 一.常量与变量
• 常量:一个具体的,不变的值。分类及描述:
N数值型常量: 常数,包括正负号 Y货币型常量:$常数
C字符型常量:用定界符
“ ” ,’ ’
[ ]
“”空串 “
”空格字符串 D日期型常量:用 {}作为定界符{^yyyy-mm-dd}严格日期格
T日期时间型常量:{ <日期>,<时间>} {^yyyy-mm-dd, [hh[:mm[:ss]]]} L逻辑型常量:.t.,.f.定界符必不可少,且常形式 •T•,•Y•,•F•,•N•
[]可选项
Set mark to
分隔符 Set date to
日期格式 Set century on|off 年份设置
Set century to <世纪值> rollover <年份参照值>
• 变量:随着程序等的运行会发生变化的量 分类:字段变量:表中的字段 表打开了就有字段变量 变量的值存在表中
内存变量:内存的一个存储区域 变量的值存储空间中
内存变量 简单内存变量
简单内存变量的定义及赋值: <内存名>=<达表式>
STORE <达表式> TO
<内存变量名表>
数组:一次定义多个变量,是内存中连续的一片存储区域
定义数组:DIMENSION|declare <数组名>(<下标上限1>[,<下标上限2>])赋值语句:<内存>=<达表式>
STORE<达表式>TO<内存变量名表>
可以用一维的方式访问二维数组
当内存变量与字段变量同名优字段变量 m.内存变量
m->内存变量
表达式值的显示:?,??(当前光标的下一行输出,当前光标处输出)
内存变量的显示: LIST MEMORY[LIKE<通配符>][TO FILE <文件>]
DISPLAY MEMORY
**list memory一次全显,display memory分屏显示
内存变量的清除:
clear memory 清除所有变量 release all 清除所有变量
release <变量名表> 清除某个变量 release all like <> ?*
表与数组之间数据传递:
将表当前的记录复制到数组:SCATTER [fields <字段名>] [memo] TO <数组名> 将数组数据复制到表的当前记录: GATHER FROM <数组名>
表达式:用运算符把运算对象连接起来的式字 数值表达式:运算优先级
+<日期/日期时间>+|-数值
d t <日期/日期时间>-<日期/日期时间>
n 关系表达式(大小比较式):比较两个表达式的大小,结果是逻辑型数据
<表达式1><关系运算符><表达式2> > < >=
<=
<>
#
!=
== 字符串精确比较符
$ 专用于字符串比较 <表达式1>$<表达式2> <表达式1>==<表达式2> <表达式1>=<表达式2> set collate to “ ”
machine
asc(<字符>)pinyin
a_z A-Z stroke
<字符串1>
$ <字符串2> <字符串>= =<字符串> 精确比较符
<字符串>= <字符串> set exact on|off <字符串>=<字符串>
设置字符排序次序:选项中,或set collate to “ ” 字符精确比较与设置:选项中,或set exact on/off
逻辑表达式:运算符为.NOT.非,.AND.与|且,. OR. 或;优先级;P68 not
and or <>AND<>
• 常用函数:是用程序来实现的一种运算或转换 |-5|
10%3
mod(10,3)
(4)**(1/2)<函数名称>(<参数>)分类:
数值函数:abs()求绝对值 sign()求符号 0-1,1 + ENDDO语句
格式:
DO WHILE <条件>
<循环体>
ENDDO DO WHILE<条件>
<语句序列1>
[LOOP] 向上循环
<语句序列2>
[EXIT]
强行退出循环
<语句序列3>
ENDDO
FORENDSCAN语句
格式:
SCAN
[<范围>][FOR<条件1>][WHilE<条件2>]
<循环体> ENDSCAN
7.多模块程序
1模块的定义
PROCEDURE|FUNCTION <过程名>
<命令序列>
[RETURN[<表达式>]]
[ENDPROC|ENDFUNC]
2模块的调用
模块调用的格式有两种。
(1)使用DO命令,格式如下。
DO<文件名>|<过程名>
(2)在名字后加一对小括号,格式如下。
<文件名>|<过程名>()
3打开过程文件
命令格式如下。
SET PROCEDURE TO[<含有过程的.prg文件>[,<过程文件2>,…][ADDITIVE]
4关闭过程文件
命令格式如下。
RELEASE PROCEDURE<过程文件1>[,<过程文件2>,…] &&主.子程序之间运行流程
8.参数传递
• 模块程序可以接收调用程序传递过来的参数。
(1)PARAMETERS<形参变量1>[,<形参变量2>,…]。
(2)LPARAMETERS<形参变量1>[,<形参变量2>,…]。• 调用参数调用模块程序参数的格式如下。
1. DO<文件名>|<过程名>WITH<实参1>[,<实参2>,…]
引用传
值传(实参变量)2. <文件名>|<过程名>(<实参1>[,<实参2>,…])
值传
(2)如果实参是变量。模块中参数的传递分为两种:按值传递(实参一般为常量和表达式)和引用传递(实参一般为变量)。参数的传递方式可以重新设置,格式如下。
SET UDFPARMS TO VALUE|REFERENCE 9.内存变量的作用域
1.公共变量(上级,本级,下级模块)
在任何模块中都可使用的变量称为公共变量,公共变量必须先定义后使用,格式如下。
PUBLIC <内存变量表> 1.命令窗口中直接定义的变量即公共变量
如果要在程序中定义公共变量,要使用如下语句:
PUBLIC <内存变量表>
2私有变量(本模块和下级模块)
private <变量名>
在程序中直接使用(没有预先声明),而由系统自动隐含建立的变量都是私有变量。
私有变量的作用域是建立它的模块及其下属的各层模块。
3局部变量(本模块)
局部变量只能在建立它的模块中使用,不能在上层或下层模块中使用。程序结束时,自动释放局部变量。格式如下:LOCAL <内存变量表>
第三章.Visual FoxPro数据库及其操作 本章学习内容概要
数据库的建立、修改、打开、关闭和删除 数据库表的建立、修改、打开、关闭和删除
库表索引的立和表之间的参照完整性的设置
自由表的相关操作
在多个工作区中打开表
设置表之间的临时关联
一.数据库 数据库的概念 数据库的文件类型及相关文件:.dbc 库的建立ဳ种方徏レ项目、菜单、命令 命令:create database [<数据库名>|?] 库的打开³种方式:项盾、菜单、命令 命令open data <文件名>|?][exclusive|share][noupdate] set data to [<文件名>] 修改库(3种):项目、菜单、命令 命令:modify database [<库名>|?][nowait][noedit] 关闭库:关闭设计器并没关库
close database [<库名>] 关当前库
close
all关所有的窗口
删除库的2种方法:项目中、命令 命令:delete database <库名>|? [deletetables][recycle]
库表 库表的概念 注意:建库表一定要有库打开 表的文件类型及相关文件:.dbf.fpt(表备注文件)表建立3种方式:项目、在库设计器中建、命令 表的设计包括:字段和记录 字段取名 字段类型和宽度 空值 “字段有效性”组框 命令:create [<表名>|?] 修改表结构(3种):库设计器中右击表,选择修改、命令 命令:modify structure 复制表:copy to <新表名>
(表要打开)复制表结构:copy structure to <新表名>
(表要打开)表的打开3种方式:项目、菜单、命令 命令:use [<表名>|?] 表浏览3种方式:项目、库中、命令 命令:browse 关闭表:use
close
table
all 关闭所有的表 delete
file
<文件名.扩展名> 表记录操作 追加记录: append append blank(ctrl+y)不进入编辑 追加空白记录
append from
<表名> append from
array
<数组名>
插入记录: insert [before] insert blank
修改记录: browse 直接定光标改
edit 和 change(交互式)replace [all] <字段名1>with <表达式1>,[<字段名2>with <表达式2>…][for <条件>] replace <字段名> with <表达式>,……
默认范围是当前记录
删除记录: 部分删
鼠标打上逻辑删除标记(ctrl+t),表——彻底删除 delete [for <条件>]
打上逻辑删除标记(默认范围是当前记录)pack
彻底删除那些打上逻辑删除标记的记录
全部删
打开表 zap
清空记录,保留表结构。不管有没有逻辑删除标记,全都物理删除
显示记录:
list|display
[for<条件>][off]
查询定位记录
go|goto n 绝对定位指针 skip
n
相对定位指针
locate for <条件>
continue
条件定位针指
seek
<表达式>
(专门根据索引定位)删除:
二.索引
概念: 记录指针构成的文件.cdx 索引的类型
按功能分_ 主索引(主关键字)_ 候选索引 ¬ _ 唯一索引
_ 普通索引
按文件扩展名分 _.idx
_.cdx 复合 索引的建立:(2种)表设计器:
单项索引:根据单个字段排列指针顺序
复合字段索引: 根据多个字段表达式排列指针顺序
命令: cdx index on <字段表达式> to <索引文件名> 生成.idx 文件
index
on
<字段表达式>
tag <索引标记名>
生成与表同名的.cdx 结构复合索引文件 [unique] 建立惟一索引 [candidate]建立候选索引
index on <字段> tag <索引标记名> of
<索引文件名> 生成与表不同名的.cdx 非结构复合索引文件
打开索引文件:
set index to<索引文件名> 指定当前索引:
set order to [tag]<索引名>[ascending|descending] 使用索引快速定位:
seek <字段值>[order <索引名>] 删除索引:
delete tag <索引名>[all]
三.数据完整性
实体完整性与主关键字 域完整性与约束规则
参照完整性和表之间的关联(两个相关之间记录相互约束)相关表建立索引:父表建主索引,子表建普通索引 相关表永久联系(关联)库的清理
设置参照完整性约:更新、删除、插入
四.自由表
自由表和数据库表的联系和区别 建立自由表 将自由表添加到数据库中 项目、数据库设计器、命令 命令:add table <表名> 从数据库中移去表 项目、数据库设计器、命令 命令:remove table <表名> 库表与自由表之间相互转换
五。多表的同时使用 工作区的使用
select 工作区号|别名|表别名 1,2,3……32767|a,b,c,d,e,f,g,h,I,j,w11,w12,……w32767
select 0
表之间的临时关联 作用:实现相关表指针的连动。相关表建立索引
打开表并使作索引(使用工作区打开各相关表)Set relation to <索引关键字段> into <表名>
排序 sort to <新表名> on <字段名>/[a/d][/c],……(打开现有的表,然后根据排序关键字生成新表)第四章.关系数据库标准语言SQL 本章学习内容:
SQL的数据查询功能
(select)
SQL的数据操纵功能
(insert、update、delete) SQL的数据定义功能
(create、drop、alter)查询功能: 不用打开表
简单查询:select <表达式> from <表名> [where <查询条件>]
*
distinct 运用 去掉重复值
字段取名: <表达式> as <名称>
或
<表达式>
<别名>
简单连接查询:(来自多个表的查询)等值连接
select <表达式> from <表名1> , <表名2>,… where <表名1>.<字段>=<表名2>.<字段> … [and<查询条件>]
表取别名: <表名> as <别名>
或<表名>
<别名>
简单嵌套:select <表达式> from <表名> where <字段>
in(子查询)not
in in 表示等于其中之一
使用量词和谓词的查询:in<子查询> , not in any|some <子查询> 满足其中之一
all <子查询> 满足其中所有
存在 exists
not exists
注意:嵌套只允许内外二层,不允许嵌套里面再嵌套
几个特殊运算符
<字段> between <表达式1> and <表达式2> <字符型字段> like < 字符串表达式 >
% _ SQL like(<* ?>,<>)
排序:order
by
<字段>
asc|desc[, <字段> asc|desc,……] 只对最终结果排序
简单计算:count()计数
sum(<>)求和
avg()平均
max()min()分组与计算查询:
group by <分组字段1>
[,<分组字段2>]…
[where <条件>] group by <分组字段1>,[<分组字段2>],…[having <表达式>]
Isnull()利用空值查询:<字段表达式 >
is
null
<>
is not null
别名与自连接查询:(一个表内部字段之间的连接)
<表名> as <别名>
内外层互相关嵌套查询:
select <表达式> from <表1 a> where <表达式> in(select <表达式> from <表2 b> where
in(子查询)
使用量词和谓词的查询:in<子查询> , not in
等于其中之一 any|some <子查询>
满足其中之一
工资> all(1220,1230)<字段> all <子查询> 满足其中所有
存在 exists
not exists
select <表达式> from <表1 a> where exists(select * from <表2 b> where
超连接查询:
内联接(等值联接)、左联接、右联接、全联接
select <表达式> from <表1> inner|left|right|full join <表2> on <表1.字段>=<表2.字段>[ where <条件>]
简单连接查询:(来自多个表的查询)等值连接
select <表达式> from <表名1> , <表名2>,… where <表名1>.<字段>=<表名2>.<字段> … [and<查询条件>]
表取别名: <表名> as <别名>
或<表名>
<别名>
集合的并运算:<查询>union<查询>
显示部分结果:top n [percent] ……order by <排序字段>
查询去向问题: 浏览
将查询结果存放在数组中:into array <数组名> 将查询结果存放在临时表中:into cursor <表名> 将查询结果存放在永久表中:into table|dbf <表名> 将查询结果存放在文本文件中:to file <文件名>.txt
操作功能:表记录
插入(insert),修改(update),删除(delete)插入
insert into <表名>[(字段名表)] values(<表达式1>,…)
insert into <表名>from array <数组名> 插入来自数组
insert into <表名>from memvar 插入来自同名的内存变量
insert
更新:
update <表名> set <字段名>=<表达式> [ where <条件>] 默认范围是所有记录,不要打开表操作
replace [all] <字段> with <表达式>
[for <条件> ] 默认范围是当前记录,而且一定要打开表操作
逻辑删除:
delete from <表名> [ where <条件>] 默认范围是所有记录
delete [for<>]默认范围是当前记录,而且一定要打开表操作
定义功能:新建表结构(create), 修改表结构(alter),删除表(drop)
表定义:
create table <表名>[free](字段名 <类型>(宽度)[<>],…)
表的删除:drop table <表名>
表结构的修改:
alter table <表名> ……(add drop alter rename)
alter table <表名> add [column] <字段名> <字型>(<宽度>)
为表增加字段
alter table <表名> add [column] <字段名> <字型>(<宽度>)check <逻辑表达式> [
为表增加字段并同时设置规则
alter table <表名> alter [column] <字段名> set check <逻辑表达式>[error<>] 为现有字段设置规则或修改规则
alter table <表名> alter [column] <字段名> set default <逻辑表达式> 为现有字段设默认值或修改默认值
alter table <表名>
rename [column ]<字段名> to <新字段名> 重命名字段
alter table <表名> drop [ column] <字段名> 删除字段
alter table <表名> alter [column] <字段名> <类型>(<宽度>)修改字段的类型或宽度
alter table <表名> add unique |primary key <索引表达式> tag <索引标签名> 为表增加主索引或候选索引
alter table <表名>drop primary key | unique tag <索引标签名> 为表删除主索引或候选索引
视图定义: 是库里面的对象,是表的虚拟窗口,是虚拟的表。在磁盘中不存在文件
open data <库名> create
view <视图名> as
<查询语句> 注意:打开库,然后执行定义命令
删除视图:drop view <视图名>
第五章.查询与视图 查询文件:*.qpr 查询概念
查询设计器的操作 查询文件的建立、使用 查询设计器的局限性
do <名称.扩展名>
视图 视图概念
视图建立、使用 视图与数据更新
第六章.表单设计与应用 面向对象的概念
对象:客观世界中的任何事物都可以看作是对象,对象可以是具体的事物,也可以是抽象的概念。
类:对一类相似对象的性质描述,这些对象具有相同的性质:相同的属性及方法
对象的属性、方法和事件
属性:用于描述对象特性称为对对象的属性
方法:是VF为对象内定的通用过程,指定对象执行的特定动作。
事件:由系统预定义而由用户或系统发出的动作 注:属性、方法可新建,而事件不可新建 继承与父类子类
(类)继承:指基于现有类创建新类时,新类继承了现有类的方法和属性
对象属性及对象方法调用的基本格式如下: <对象引用名>.<对象属性> = <表达式> <对象引用名>.<对象方法> 对象(容器与控件)
控件:是一个可以以图形的方式显示出来并能与用户进行交互的对象 容器:一种特殊的控件,它可包含其它的控件的控件 对象的引用方式:
this
当前对象
thisfrom 当前对象所在的(表单)窗口 parent 当前对象的直接容器
创建与管理表单 创建 向导 设计器
命令:create
form
<文件名> 运行:do
form
<文件名> 文件类型:*.scx 管理表单属性和方法 表单设计器环境 属性窗口 控件工具栏 数据环境: 布局 TAB盒 代码
常用的表单属性
alwaysontop atutocenter backcolor borderstyle caption closable maxbutton minbutton movable
scorllobars windowstate windowtype name 对象代码中的引用名(任何对象都有)caption 是标题文本
创建新属性、方法
常用事件和方法
运行时事件 load init(系统自动引发)load表单生成之前执行 init 表单生成之时执行 关闭时事件(系统自动引发)destroy释放事件
unload
交互时事件(一定要用户去响应)
gotfocus
click
rightclick
dbclick interactivechange(改变值事件)
交互时事件(用户引发的事件)
方法: release(释放)
refresh(刷新)
show(显示表单)
hide(隐藏表单)
setfocus(使对象获得焦点)
show hide(专门用于表单的显示或隐藏)
visible(表单中的其它控件显示或隐藏由该属性控制).t.,.f.常用表单控件
标签
caption name 对象引用名称
fontname 字体
fontsize字号
height 对象的高度
width 宽度
(任何对象都有)left对象的左边离表单左边的距离
top
backstyle
autosize
caption
标签上设置访问键(<字母)alignment 文本对齐方式
命令按钮
default(设置成确认,响应 enter)cancel(设置成取消按钮
响应esc)
enabled
设置是否能响应用户事件
visible 设置控件的显示隐藏.t..f.(任何对象都有)
文本框:
controlsource 绑定变量
存取某变量的值(字段变量或内存变量)
value
c
n d l
各种类型的数据,但默认字符串
passwordchar
占位符
inputmask
x
#
6个数字
编辑框: value(c)hideselection
readonly
scrollbars
selstart 返回被选文本的起始位置
sellength 返回被选文本的长度
seltext 返回被选文本的内容
复选框:
caption
value 返应复选框选中否
n(0,1)默认 L(.t.,.f.)controlsource
列表框: rowsourcetype数据源类型
rowsource 数据源rowsourcetype =0
只能在程序运行过程中用
<对象引用名>.additem(<字符串>)load 方法 来添加条目
init
移去条目的方法: <对象引用名>.removeitem(n)
值:手工添加条目
rowsourcetype =1
可在属性框中直接设置rowsource的值,或在 程序运行过程中 指定,格式是: <对象名>.rowsource=[one,two,three,four] 别名
rowsourcetype =2 一定要打开表 <对象名>.rowsource=[<别名>] SQL rowsourcetype =3
可在属性框中直接设置rowsource的值 <对象名>.rowsource=[
<对象名>.rowsource=[<查询文件名>] 数组
rowsourcetype =5
<对象名>.rowsource=[<数组名>] 字段的值作为数源
rowsourcetype =6
一定要打开表 <对象名>.rowsource=[<字段变量>] 文件作为数据源 rowsourcetype =7
<对象名>.rowsource=[*.dbf] 结构:表字段作为条目
rowsourcetype =8
一定要打开表
<对象名>.rowsource=[表名]
removeitem(n)
columncount
multiselect 是否是多重选择,默认单选.f.VAlue 单选 value 值就是选中的条目字符串 多重选择 value值不可用
c
n
当单选条目时, 返回是选中条的值;选中条目的条目序号
list(a,b)存取条目值
listcount
返回列表框的条目总数
n
selected(n)判断第N 条条目是不是被选中了.t..f.组合框: style 0(下拉组合),2(下拉列表框)
value c
没有多重选择(multiselect)
容器
命令按钮组:
buttoncount,buttons(i)
value n ,c 返回第几个按钮被选中了
注:容器内部编辑方法——右击容器——编辑
选项组控件:buttoncount, buttons(i)
value n , c
表格控件 : recordsoucetype数据类型
recordsource 数据源(字符型)0 表
<表名> 1别名(打开表的名称)
<表别名> 2提示
3查询文件
<查询文件名> 4 SQL 语句
caption
alignmet recordsoucetype=0
recordsource=[<表名>]
有表打开 recordsoucetype=1
recordsource=[<别名>]
recordsoucetype=4
recordsource=[
页框组控件: pagecount
pages(I)
tabs
tabstrech
activepage 页
计时器:timer 事件
计时器属性
interval
引发timer事件的时间间隔
微调器:spinnerhighvalue spinnerlowvalue
increment
value
第七章.菜单设计与应用
菜单类型:条形菜单和弹出式菜单
典型菜单系统由一个条形菜单和一组弹出式菜单组成 恢复系统设置:
set
sysmenu
nosave set sysmenu to
default 恢复到系统设置 下拉式菜单设计 基本过程
新建:create menu
<文件名> 修改:modify menu <文件名> 运行:do <文件名>
注:扩展名不能省略(访问键、分组、快捷方式、跳过、信息)显示菜单: 常规选项 菜单选项
为顶层表单添加菜单 5点
1.建立菜单
2.设置常规选项卡为:顶层表单,并生成程序 3.把表单的showwindow =2 4.在表单的 init 事件中运行菜单程序: do <文件名.扩展名> with this 5.在表单的destory 事件中
:release
menu <菜单名>
菜单如何引用表单对象:<表单文件名>.<对象名>.<属性|方法>
快捷菜单设计
为表单添加快捷菜单
2点
1.设计好快捷菜单并生成程序文件
2.在表单或其它控件的rightclick 事件 运行菜单程序
do
<文件名.mpr>
(4点)
快捷菜单如何引用表单对象
<表单文件名>.<对象名>.<属性|方法> <形参名>.<对象名>.<属性|方法>
.mnx.mpr
第八章.报表设计 文件类型:*.frx 报表主要包括:数据源和布局 所有表、查询、视图
布局分:列报表、行报表、一对多报表、多栏报表 创建报表: 向导 快速报表 设计器
create report <报表文件名>
报表工具 带区及作用 控件
分组报表的设计和多栏报表 报表预览:
report form <文件名> preview 第九章.应用程序开始生成 应用程序项目综合践 系统开发基本步骤 连编应用程序 主程序设计
使用应用程序生成器