还剩6页未读,继续阅读
文本内容:
最新电大数据技术参考资料小抄第一章 人类社会活动的三大要素是能源、物质和信息 信息是现实世界各种事物的存在特征、运动形态以及不同事物间的相互联系等诸要素在人脑中的抽象反映,进而形成概念是一个抽象的概念信息源于客观事物,而后通过人们加工处理再控制客观事物,从而达到认识世界,改造世界的目的数据本质上是对信息的一种符号化表示,即用一定的符号表示信息符号是由人为而定,在计算机中通常使用0和1这两个符号信息和数据,既有区别,又有联系,数据是信息的载体,用来载荷信息,信息是数据的内涵,数据处理本质上就是信息处理从已知数据出发,参照相关数据,进行加工计算,产生出一些新的数据,这些新的数据又表示了新的信息,可以作为某种决策的依据,这一过程就是数据处理过程数据处理的任务不是计算,而是管理数据数据处理本质上就是信息处理数据的收集、整理、组织、存储、查询、维护和传送等各种*作,是数据处理的基本环节,是任何数据处理任务必有的共性部分数据管理大体上可分为自由管理阶段、文件系统阶段和数据库系统阶段文件是*作系统管理数据的基本单位,文件可以命名,通过文件名以记录为单位存取数据,不必关心数据的存储位置若干记录的集合称为文件 描述事物性质的最小数据单位是数据项记录是若干数据的集合,一个记录能表达一个具体事物 在数据库系统阶段,数据库技术具有以下五个特点数据结构化、数据共享、减少了数据冗余、有较高的数据独立性和提供了方便的用户接口文件系统与数据库系统的最大区别是数据结构化 数据库系统由数据库、支持数据库运行的软硬件、数据库管理系统和应用程序等部分组成 DB是存储在磁盘等外部直接存取设备上的数据集合,是按一定的数据结构组织起来的,数据库是一个结构化的数据集合,主要是通过综合各个用户的文件,除去不必要的冗余,使之相互联系所形成的数据结构(结构化的、有联系的数据集合) 数据库系统中的硬件是数据库赖以存在的物理设备,包括CPU、存储器和其他外部设备 数据库系统中的软件是指数据库管理系统-用于数据管理的软件系统数据库管理系统简称DBMS,是是数据库系统的关键组成部分,是专门用于数据管理的软件任何数据*作,包括数据库定义、数据查询、数据维护、数据库运行控制等都是在DBMS管理下进行的DBMS是用户与数据库的接口,应用程序只有通过DBMS才能和数据库打交道 DBA是指数据库管理员,其职责是维护和管理数据库,使之始终处于最佳状态 UWA用户工作区,是用户程序与系统缓冲区交换数据的场所用户只能对UWA中的数据进行处理,其数据是DBMS根据用户的请求装进去的 DD数据字典,其中存放着数据库三级结构的描述以及各数据项的类型、值域和关键字等,从结构上对数据的语言和数值范围加以约束 计算机系统中任何软件必须在*作系统的支持下才能工作 1975年SPARC公布了数据库标准报告,提出了数据库三级组织结构,称SPARC分级结构,从内到外分三个层次描述,分别称为内模式、概念模式、外模式 概念模式,简称模式,是对数据库的整体逻辑描述,并不涉及物理存储,故称为DBA视图 内模式,又称存储模式,具体描述了数据是如何组织存储在存储介质上,是系统程序员用一定的文件形式组织起来的一个个存储文件和联系手段故称内模式为系统程序员视图只有内模式才是真正存储数据的 外模式通常是模式的一个子集,又称子模式,外模式面向用户,是用户眼中的数据库,称外模式为用户视图 数据库系统的三级结构中,总体观和存储观有一个,用户观有多个,一个应用对应一个用户观三级结构的关系,可以概括为模式是内模式的逻辑表示,内模式是模式的物理实现,外模式是模式的部分抽取 三个模式反映了对数据库的三种不同观点,模式表示了概念级数据库,体现了对数据库的总体观,内模式表示了物理级数据库,体现了对数据库的存储观,外模式表示了用户级数据库,体现了对数据库的用户观 数据库三个模式之间存在两种映射,一是外模式/模式间的映射,另一映射是模式/内模式间的映射 在数据库系统的组织结构中,模式/内模式映射把概念数据库与物理数据库联系起来,外模式/模式把用户数据库与概念数据库联系起来 映射技术的好处保证了数据的独立性、保证了数据共享、方便了用户使用数据库、有利于数据的安全和保密 应用程序员和终端用户是数据库的用户 DBMS通过DDL(数据描述语言)来定义三种模式,并将各种模式翻译成相应的目标代码 DML数据*纵语言实现对数据库的*作,基本*作有插入、修改、删除、检索 DBMS有两种类型的程序设计语言如FORTRAN、C等属于宿主(HL)型,FoxPro则属于自主(SCL)型 DBMS对数据库运行的控制主要是通过数据安全性控制、完整性控制、故障恢复和并发*作四个方面实现的关于信息和数据,下面的论述是正确的D (A)只有区别没有联系(B)信息是数据的载体(C)同一信息用同一数据表示形式(D)数据处理本质上就是信息处理 数据库是B(A)单用户独享的(B)多用户共享的(C)多用户(D)单用户 下面关于数据库管理系统的论述,是正确的B (A)数据库管理系统是用户与应用程序的接口(B)应用程序只有通过数据库管理系统才能和数据库联系 (C)数据库管理系统用DML来定义三级模式(D)数据库管理系统用DDL来实现对数据库的各种*作 数据库系统提供了多种语言,下面不是其中的一种(A)DDL(B)SCL(C)DML(D)HL2005第二章 数据模型是对客观事物及其联系的描述,是记录及其联系的集合,应具有描述数据和数据联系两方面的功能,采用形式化的描述方法表达数据和数据之间的联系数据模型表示的是数据库的框架,在该框架约束下填上具体数据才是数据库数据库类型根据数据模型划分数据的数据结构形式就是数据模型 为保证数据的完整性,数据模型对数据的描述应包括)模型中包含哪些记录类型,并对记录类型进行命名;指明各个记录类型由哪些数据项构成,并对数据项进行命名;每个数据项均需指明其数据类型和取值范围 对数据间联系的描述要指明各个不同记录类型间所存在的联系和联系方式 公式DM{R,L}是对数据模型的描述,其中R代表记录类型的集合,L代表不同记录类型联系的集合公式的含义是表示了数据模型具有描述数据和数据联系两方面的功能,R是对数据的描述,L是对数据间联系的描述 数据模型本质上是对“信息模型”的数据化表示,信息模型又称“实体联系模型”,是客观事物及其自然联系在人脑中所形成的概念 信息来自于三个领域现实世界、信息世界和数据世界 在信息世界中,不论是实际存在的东西,还是概念性的东西,或是事物与事物之间的联系,一律统称为实体不同实体是由其属性的不同而被区分的实体和属性都有“型”和“值”之分“型”是概念的内涵,而“值”是概念的实例“型”表达的是个体的共性,而“值”是个体的具体内容 “键”也称关键字,是指在实体属性中,可用于区分实体集中不同个体的那个或几个属性的组合当有多个属性可作为键而选定其中一个时,则称它为该实体的“主键”若在实体诸属性中,某实体虽非该实体的主键,却是另一个实体的主键,则称此属性为“外部键”实体中每个属性,都有一个取值范围,这叫做属性的“域” 实体间的联系分别是一对一联系
(11),一对多联系(1n),多对多联系(m n) E-R方法,又称为实体联系表示法 E-R图中所表示的实体及其联系,实际上是信息模型E-R图的三大要素属性、实体、联系 目前,成熟地应用于数据库系统中的数据模型有层次模型、网状模型和关系模型 层次模型用树结构表示记录类型及其联系结构特点有且仅有一个结点无父结点,其他结点有且仅有一个父结点在层次模型中,上一层记录型和下一层记录型之间的联系为1n.不能直接支持m n联系对于记录之间的m n关系,可以将其转换为1n联系 网状模型的结构是结点的连通图,特点是有一个以上结点无父结点且至少有一个结点有多于一个父结点典型代表是DBTG系统 目前,在微机上的数据库系统应用最广泛的数据模型是关系模型关系模型的本质是一张二维表,关系模型中,一张二维表就称为一个关系如果二维表中的数据有变化,则它的记录数改变,它的字段数相对固定 在文件系统中,一张二维表称为一个文件,表头行称为记录型,表中其他各行称为记录,而每一列中的各元素称为一个数据项通常在数据库中,二维表以文件的形式存储在磁盘上,一个关系就是一个文件(一张二维表) 从E-R图导出关系模型的时候,图中的每一个实体,都应转换为关系,其中应包括对应实体的全部属性,并应根据关系所表达的语义确定哪个属性(或哪几个属性组合)作为主键 E-R图方框表示实体,椭圆表示实体的属性,菱形表示联系 信息世界用语实体集、实体、属性、实体键,在数据世界中对应文件、记录、数据项(字段)、记录键 以下关于数据模型的描述,A不正确 (A)数据模型表示的是数据库本身 (B)数据模型表示的是数据库的框架 (C)数据模型是客观事物及其联系的描述(D)数据模型能够以一定的结构形式表示出各种不同数据之间的联系 下列关于实体的说法,不正确B (A)实体是指现实世界中存在的一切事物 (B)实体靠联系来描述 (C)实体所具有的性质统称为属性 (D)实体和属性是信息世界表达概念的两个不同单位 实体集中,各实体值相应的属性有着B的域(A)不同(B)相同(C)各自(D)固定 综合画E-R图,写出关系模型第三章 域是值的集合,域中数据个数叫做域的基数 R(D1,D2,…Dn)的含义是当且仅当R是D1×D2×…×Dn的一个子集,则称R是D1×D2×…×Dn上的一个关系其中,R是关系名,n是关系的度,Di是第i个域名在关系的定义中,n度的关系,必有n个域 一个关系就是一张二维表,表中的每一行对应关系中的一个元组,它对应于信息世界中的实体和计算机世界中的记录,表中的每一列就是关系中的一个域也称为属性,对应于计算机世界中的字段 关系与文件有许多相似之处,把关系看成文件时,则元组就是文件中的记录,属性就是记录中的数据项(字段) 不允许“表中套表”,即表中元组分量必须是原子的 二维表中的各列取自同一个域,因此一列中的各个分量具有相同性质 列的次序、行的次序可以任意交换,不改变关系的实际意义 表中的行叫元组,代表一个实体,因此表中不允许出现相同的两行 判断两个关系是否相等,与属性的次序无关,与元组的次序无关,与关系的命名无关 关系模式是指用关系数据描述语言描述后的关系,必须逐个对关系模型中的关系进行描述才能生成数据库概念模式对关系的描述实为定义关系模式关系数据描述语言实质是定义关系框架的,包括对域和关系进行描述 常用的关系数据描述语言(DDL)有问答式和语言描述式,常用的FoxPro属于问答式DBMS. 语言描述式有专门描述语言定义关系模式,包括关系名、组成该关系的各个域名、数据类型、长度和取值范围 域描述语句DOMAIN域名PICIS类型(长度)[RANGEIS数1THRU数2],通过DOMAIN定义域名、PIC定义数据类型和长度,RANGE定义取值范围 关系描述语句RELATION关系名(域名1,域名2,…)KEY=(域名i,域名j,…) 关系模式的三类完整性规则是实体完整性约束规则、引用完整性约束规则、用户定义的完整性约束规则 实体完整性约束是指关系中的“主键”不允许取空值引用完整性约束规则是限制引用不存在的记录 在关系的各种*作中,关系查询是核心,所以关系数据*纵语言DML语言,常被称为查询语言 DML特点*作对象与结果都是关系,非过程性强,语言一体化,有严密的数学工具 关系数据*作的最大特点是以关系为处理单位,处理后的结果是关系 关系DML查询,根据表达查询方式的不同,可分为两类用关系代数运算表达查询和用关系演算公式表达查询关系数据*作语言相应分为两种不同类型关系代数型和关系演算型 所谓单目运算就是对一个关系施加的运算,所谓双目运算就是对两个关系施加的运算选择、投影是单目运算,连接、关系笛卡儿积是双目运算 集合运算符∪并、∩交、-差、×迪卡尔积,关系运算符π投影、σ选择、|×|连接 比较运算符>、≥、<、≤、=、≠,逻辑运算符-非、∧与、∨或 并、交、差用于关系运算,要求参加运算的两个关系是相容的,即两个关系度数相同,相应属性取自同一个域 并由属于R或属于S或同时属于R和S的元组构成的集合,记为R∪S. 差由属于R而不属于S的所有元组组成的集合,记为R-S. 交由同时属于R和S的元组组成的集合,记为R∩S. 选择按给定条件从关系中挑选满足条件的元组组成的集合,记为σF(R) 投影从关系中挑选出指定的属性组成的新关系,记为πA(R)A是属性名表,R是关系名 关系R和S的笛卡儿积,它是由R的第一个元组依次与S的所有元组组合,然后是R的第二个元组,直到最后一个元组依次与S所有元组组合,形成新的关系记为R×S关系R和S的笛卡儿积k1+k2个元组 连接按给定条件,把满足条件的两关系的所有元组,按一切可能拼接后形成的新关系,相当于在两关系笛卡儿积上的选择记为R|×|S=σF(R×S)关系R和S的连接后的关系有≤k1×k2个元组 连接运算可以从乘积运算和选择运算中导出,自然连接运算可以从乘积运算、选择运算和投影运算中导出 自然连接是连接的一个重要特例,它要求被连接的两关系有若干相同的属性名记为R|×|S 连接运算JOIN关系1WITH关系2WHERE条件,按给定条件对两关系进行连接运算 五种基本运算并、差、选择、投影、连接 在关系中,当有多个属性可作为键而选定其中一个时,则称它为该关系的主键 在一个关系中,需要几个属性组合起来才能惟一标识元组时,则称这几个属性为该关系的联合键 凡在关系中可以用来惟一标识元组的属性或属性组叫做候选键 当关系中的某个属性或某一组属性并非主键,但却是另一个关系的主键时,称该属性为外部键 凡可作为侯选键的属性叫主属性,不能作为侯选键的属性叫非主属性 所谓函数依赖其实质是刻画关系中各个属性之间相互制约而又相互依赖的关系 函数依赖包括完全函数依赖、部分函数依赖、传递函数依赖满足最低要求的关系称它属于第一范式,在此基础上又满足了某种条件,则称它属于第二范式的关系,依此类推直到第五范式数据库一般使用3NF以上的关系满足较高条件者必满足较低范式条件 一个较低范式的关系,可以通过关系的无损分解转换为若干较高级范式关系的集合,这个过程叫做关系规范化 如果关系R的所有属性都是不可再分的数据项,称该关系属于第一范式1NF 第一范式缺点数据冗余大、修改麻烦、插入异常、删除异常 若关系R属于1NF,且它的每一非主属性都完全依赖于主键,则称R属于第二范式,2NF 若关系R属于2NF,且它的每一非主属性都不传递依赖于关键字,则称R属于第三范式,3NF 在关系规范化中,分解关系的两条基本原则是分解必须是无损的和分解后的关系要相互独立 关系规范化过程实质是对关系不断分解的过程,通过分解使关系逐步达到较高范式规范化是围绕函数依赖进行的在规范化过程中,消除部分依赖和传递依赖后,1NF变成3NF.1NF、2NF、3NF相互间是全包含关系以下说法正确的是A (A)一个关系就是一张二维表(B)在关系所对应的二维表中,行对应属性,列对应元组 (C)笛卡儿积中不允许有相同的域(D)关系的各属性名必须与对应的域同名 根据关系模式的完整性规则,一个关系中的“主键”.C (A)不能有两个(B)不能成为另一个关系的外部键(C)不允许为空(D)可以取空值 关系中的最高范式为.D(A)2NF(B)3NF(C)4NF(D)5NF 综合
1、计算并、差、交、选择、投影、关系笛卡尔积、连接、自然连接
2、范式关系规范化
3、写出关键字
4、确定范式等级第四章 数据库设计是数据库应用系统的核心部分,它包括两方面的内容结构特性设计和行为特性设计 在数据库的两方面设计中,结构特性是静态的,一旦形成轻易不再改变,行为特性是指用户的业务活动,这种活动体现在应用程序中结构特性设计是指数据库总体概念设计它应该是具有最小数据冗余的,能反映不同用户数据需求的,能实现数据共享的系统数据库设计中结构设计是关键 在数据库设计中,结构特性是在模式和子模式中定义的,而行为特性通过应用程序实现 数据库设计包括数据库系统的逻辑设计、物理设计、应用程序设计和系统的运行与维护等方面 数据库逻辑设计分为三个阶段,分别是收集和分析用户要求、建立E-R模型和数据库模式设计主要任务是创建数据库模式 数据库逻辑设计中的第一阶段收集和分析用户需求是按以下四步进行的分析用户活动,确定系统范围,分析用户活动所涉及的数据和分析系统数据 数据流图是一种从数据和对数据的加工两方面表达系统工作过程的图形表示法含有四种基本成分带箭头的线段表示数据及其流动方向,圆形框表示对数据的加工,卡片形框表示文件,方框表示 画数据流图应遵循由外向内、自顶向下原则进行 数据库系统的生命期可以分为五个阶段,依次是分析、设计、编码、测试、运行 所谓分析用户活动所涉及的数据就是以数据流图的形式表示出数据的流向和对数据所进行的加工 所谓分析系统数据就是对数据流图中的每一个数据流名、每个文件名、每个加工名,都要给出具体定义,都需要用一个条目进行描述描述后的产物是数据字典数据流图和数据字典结合在一起,加上必要的说明构成系统说明书数据字典是对数据流图中的四个成分(数据流、数据项、文件、加工)的描述 教材中所讲的数据库设计方法称为视图设计法,即从分析用户的活动入手,针对用户的局部视图,然后进行综合,用E-R图表示数据库的概念,进而转换为关系模式 逻辑设计第二阶段建立E-R模型分两步,首先应进行局部E-R模型设计,然后进行总体E-R模型的设计 逻辑设计第三阶段在数据库模式设计阶段分两步进行,第一步初步设计把E-R图转换为关系模型,第二步优化设计对模式进行调整和改善 优化是在性能预测的基础上进行的,一般用三方面指标来衡量
1、单位时间内所访问的逻辑记录个数要少,
2、单位时间内数据传送量要少;
3、系统占用的存储空间尽量要少 数据库物理设计包括选择存储结构、确定存取方法、选择存取路径、确定数据的存放位置主要解决选择文件存储结构和确定文件存取方法的问题在数据库中访问数据的路径主要表现为如何建立索引如要直接定位到所要查找的记录,应采用索引方法存取方法(索引表)顺序表只能从起点进去向后一个个访问记录数据库的物理实现取决于特定的DBMS,在规划存储结构时主要应考虑存取时间和存储空间,这两者通常是互相矛盾的,要根据实际情况决定 经过从概念设计→逻辑设计→物理设计,标志着数据库的框架搭设成功 一般程序设计方法均适用于应用程序设计,如自顶向下或结合由下而上灵活运用,程序按功能模块化,使模块便于组装和调试,追求程序可读性,不过多采用难以理解的技巧应用程序设计的依据数据库逻辑设计 老化就是对数据库施加各种*作,例如增、删、查、改 数据库投入运行标志着开发任务的基本完成和维护工作的开始所谓维护就是整理数据的存储 数据库维护工作包括日常维护(指对数据库中的数据随时按需要进行增、删、插入、修改或更新*作),定期维护(重构重组数据库),故障维护(当数据库遭到意外破坏时,把它恢复到破坏前的 以下关于数据库设计的说法,C不正确 (A)数据库设计是“反复探寻,逐步求精”的过程(B)数据库设计包括结构特性设计和行为特征设计两个部分 (C)数据库设计中行为特征设计是关键部分(D)数据库设计是数据库应用系统设计中的核心部分 数据库系统中的技术文档主要有系统说明书、技术说明书和使用说明书 以下程序调试方法,最为常用B (A)通读程序编码,发现错误的命令行(B)在程序中设置断点,观察断点处状态 (C)输入数据,进行人工检验(D)暂时删除无关语句,简化程序编码 以下观点中,错误的是.B (A)关系数据库中记录通常是按到来的先后顺序存放(B)DNMS通常只支持顺序存取方法 (C)数据库访问的路径对效率影响是很大的(D)数据库多半存放在磁盘、光盘或磁带上第五章 数据管理系统是管理数据库的系统软件,是用户与数据库之间的接口,提供*纵数据库的各种命令 数据库统是由用户、数据库管理系统和数据库构成的 Foxpro特点windows应用程序风格,非编程接口,多用户功能,提供了应用程序开发工具,快速查找机制,提供了真正的编译器,提供了与高级语言接口,提供了对SQL的支持 FoxPro提供了一个真正的编译器“DistributionKit”,可将FoxPro应用程序编译为直接在*作系统下运行的“exe”文件;提供了一个真正的外部程序接口“LibraryConstructionKit”,允许开发者用C语言创建FoxPro函数 在FoxPro中每一条记录最多可以有255个字段,最多可以有65000个内存变量 在FoxPro中,一个二维表即称为一个文件,二维表是以文件的形式存储在磁盘上的,一个关系就是一个文件,这样的文件称为数据库文件a$b测试字符串a是不是b的子串,a#b=ab Foxpro的各类文件及其扩展名 库文件dbf 备注文件fpt 备注后备文件tbk 后备文件bak 临时文件tmp 索引文件idx 复合索引文件cdx 查询程序文件qpr 编译查询程序文件qpx Foxdoc文件文件doc 屏幕文件scx 屏幕备注文件sct 屏幕程序文件spr 编译屏幕程序文件spx 配置文件config.fpw 菜单文件mnx 菜单备注文件mnt 菜单程序文件mpr 编译菜单程序文件mpx 资源文件foxuser.fpt 项目文件pjx 项目备注文件pjt 项目程序文件app 项目可执行文件exe 帮助文件foxhelp.dbf 格式文件fmt 编译格式文件frx 报表格式文件frx 报表备注文件frt 帮助备注文件foxhelp.fpt标签文件lbx 标签备注文件lbt 程序文件prg 编译程序文件fxp 可执行文件exe 视图文件vue 键盘宏文件fky 内存变量文件mem 编译记事文件log 编译出错记录文件err 文本文件txt 窗口文件win 菜单文件file编辑edit数据库database记录record程序program运行run文字text窗口window帮助help 在FoxPro菜单中,如果菜单右面带有省略号(…),表示选择菜单会弹出一个对话框窗口,如果菜单中某些项呈暗淡的灰色,表示该功能在当前状态下不能使用ALT或F10调用菜单 命令窗口的显示与隐藏可通过Window的“Command”和“Hide”选项来控制 FoxPro的数据类型有七种,它们的名字和简写字母是字符型C、数值型N、浮点型F、逻辑型L、日期型D、备注型M和通用型G,数据库中的字段变量可取其中的七种内存变量是字符型、数值型、逻辑型、浮点型、屏幕S数据,常量通常只有字符型、数值型、日期型和逻辑型四种数据类型 变量名不超过10个字母、数字和下划线组成,而且必须以字母开头,但系统变量一般以下划线开头 字符型字段的最大长度是254个字符长,一个汉字视作2个ASCII码字符,字符型数据可进行大小比较运算和字符连接运算数值或浮点数据最大宽度为
20.逻辑型字段固定的长度为1个字节,逻辑真值可用T.或Y.表示,逻辑假值可用F.或N.表示日期型数据宽度固定为8;可以与数值相加减,所得结果为另一个日期,两个日期型数据可以相减,结果为两个日期之间的天数备注、通用字段的宽度为10个字节,该字段中存放的是指向存放备注内容的地址指针,或指向图形、图像、声音等文件的地址指针在备注中,备注字段的每个数据,按大小为512个字节的数据块存放对常量而言,名和值是一致的,对变量而言,名和值是不一致的字符变量是“”、‘’或〔〕定界,日期变量用{}定界,逻辑常量用……定界FoxPro的变量有两种,单值的内存变量和多值的字段变量当字段变量与内存变量同名时,字段变量优先,可通过在内存变量名前加M.或M-来区别 从内存变量的组织形式上看,它可分为标量与数组,从内存变量的作用域上看,它可分为全局变量和局部变量 单个常量、变量或函数都是表达式的特殊形式之一表达式是指通过各种运算符连接的常量、字段变量、内存变量、函数等运算对象所构成的有意义的算式 Foxpro的运算符有算术、字符串、关系、逻辑比较运算会产生逻辑结果字符串运算符有+、-、==、$. FoxPro有200多条命令,它一般由命令动词开头,后跟一个或多个限定该动词的子句构成子句一般由动能短语和表达式构成FoxPro命令,常见的子句有三种,分别是是范围子句,条件子句,字段列表子句 命令名[表达式表][范围][FOR条件][WHILE条件][TOFILE文件名|TOPRINTER|TOARRAY数组表|TO内存变量][ALL[LIKE|EXCEPT通配符]][IN别名]][FIELDS字段列表]
①[FIELDS字段列表子句用于指定被*作数据库文件的字段,是对二维数组表格各列的*作,又称投影*作
②而[范围]子句、[FIELDS条件]子句或[WHILE条件]子句用于指定被*作记录的范围和被*作记录要满足的要求,对二维表格各行的*作,又称选择*作其中条件是一个逻辑表达式
③FOR条件[WHILE条件]这两个条件子句是有区别的,前者能对所有数据库中满足条件的记录*作,后者一旦遇到不满足条件的记录便停止*作 有个别的命令不是命令动词开头的,而是以特殊符号,例如命令?和@. FoxPro中,投影*作的子句是字段列表子句,选择*作的子句是范围子句和条件子句 当数据库一打开(如果不是空库)记录指针指向记录1的位置FoxPro共有225个工作区,工作区号为1-
255.其中前10个工作区也可命名为A-J.最近一交换选择的工作区称为当前工作区调用其它工作区的字段时应按工作区/别名-字段名“或”别名字段名格式 一个数组占1个内存变量名额,通过数组定义命令DIMENSION建立,赋值前数组各元素的初值为逻辑假值 进入FoxPro系统时,系统初始选中1号工作区在FoxPro命令行中同时使用的各个子句,其位置可以交换 在FoxPro中用户可以使用两种方式执行命令,即立即执行方式和程序方式 立即方式是一种交互方式好处是简单方便,缺点是工作量大,易出错,降低了计算机的使用效率 程序方式又称命令文件方式,这种方式要求用户事先根据任务编写程序好处是速度快,计算机使用效率高是Foxpro的主要使用方式缺点是要求用户学习和掌握程序设计方法 表示其后内容是注释,系统不执行 下列命令的语法规则中,非法的是D (A)命令动词可只写前四个字母(B)命令动词后的子句位置可交换 (C)命令动词大小写字母等价(D)各短语和参数要连续输入无空格 对内存变量的叙述,不正确的是D. (A)内存变量是独立于数据库的变量(B)内存变量有N、C、L、D、S类型 (C)内存变量用赋值语句定义(D)内存变量的形式只有标量 综合
1、变量赋值、表达式运算
2、内存变量赋值、释放、显示、输出、内存变量文件*作
3、函数
4、数组定义、赋值、与数据库文件交换数据 函数P75起数值函数
1、绝对值ABS(数值表达式)
2、取整INT(数值表达式)
3、最大值MAX(N1,N2,…)
4、最小值MIN(N1,N2,…)
5、平方根SQRT(数值表达式)
6、EXP(数值表达式)=eX
7、LOG(数值表达式)=LnX
8、正弦SIN(数值表达式)
9、余弦COS(数值表达式)
10、正切TAN(数值表达式)(*弧度表示)
11、0-1之间随机数RAND([数值表达式])(数值表达式为负,从当前时钟取种子数)
12、四舍五入ROUND(数值表达式1,保留位数)*保留位数为负表示其绝对值为整数部分四舍五入的位数 字符串函数
1、字符串长度LEN(字符表达式)
2、删尾部空格TRIM(字符表达式)
3、删头部空格LTRIM(字符表达式)
4、取子串SUBSTR(字符表达式,从第几个开始,[取几个字符])
5、首字母大写PROPER(字符表达式)
6、子字符串查找AT(字符表达式1,字符表达式2)返回式1在式2的开始位置,没找到返回0,区分大小写
7、子串替换STUFF(字符表达式1,数值表达式1,数值表达式2,字符表达式2)
8、大小变小写LOWER(字符表达式)
9、小写变大写UPPER(字符表达式)
10、空格SPACE(空格数量)
11、字符串复制REPLICATE(字符串,复制次数)
12、宏替换内存变量[,字符串] 日期和时间函数
1、取系统日期DATE()
2、取系统时间TIME()
3、取年份YEAR(日期表达式)
4、取日DAY(日期表达式)
5、取月份MONTH(日期表达式)
6、日期格式转换MDY(日期表达式)(月日年格式) 数据类型转换函数
1、字符转数值VAL(字符表达式)
2、字符转日期CTOD(字符表达式)
3、日期转字符DTOC(日期表达式[,1])带可选项“1”返回一个适于进行索引的日期字符串
4、数值转字符STR(数值表达式1[,返回字符串长度[,小数部分输出位数]]) 测试函数
1、数据类型测试TYPE(字符表达式)
2、测试文件尾EOF([工作区号|文件别名])
2、测试文件头BOF([工作区号|文件别名])
4、测试当前记录号RECNO([工作区号|文件别名])
5、测试库文件记录数RECCOUNT([工作区号|文件别名])
6、测试屏幕行列坐标ROW()、COL()
7、测试是否查找成功FOUND([工作区号|文件别名])
8、测试打印头坐标PROW()、PCOL() 命令 内存变量赋值
1、store表达式to内存变量表
2、内存变量=表达式
3、savescreento屏幕型内存变量restorescreenfrom屏幕型内存变量 内存变量释放
1、release内存变量表
2、releaseall[like|except通配符]
3、clearmemory
4、clearall 内存变量文件建立saveto内存变量文件名[all[like|except通配符]] 内存变量恢复restorefrom内存变量文件名[additive]无additive消除当前内存中变量,有additive保留变量 内存变量显示
1、listmemory[toprint]
2、displaymemory[toprint] 内存变量输出?|??[表达式表]?从当前光标所在行的下一行第0列开始显示,??从当前光标所在处开始显示数组定义dimension|declare数组名1(数值表达式1[,数值表达式2])[,数组名2(数值表达式3[数值表达式4])]…数组元素赋值
1、store表达式to数组
2、数组=表达式 数据库文件记录值传送到数组scatter[fields字段表]to数组[blank]memvar[blank] 数组中的数据传送到数据库文件gatherfrom数组|memvar[fields字段表] 建数据库文件结构create[文件名|?]追加记录append[blank]数据库文件打开use[库文件名|?][alias别名] 记录显示list|display[范围][fields字段名表][for条件][while条件][off][toprinter|file文件名] 范围recordn第n条记录*作,nextn下n条记录*作,all所有记录*作,rest当前到文件结束所有记录*作 off不显示记录关闭当前工作区数据库use关闭当前打开的所有数据库closedatabases关闭所有closeall 关闭索引文件closeindexes关闭格式文件closeformat关闭过程文件closeprocedure 关闭后备文本文件closealternate显示数据库结构list|displaystructure[toprinter|tofile文件名] 修改库结构modifystructure(生成bak和tbk文件,修改字段类型该字段数据丢失,不能同时修改字段名和宽度) 绝对移动go|goto[[record]记录号|top|bottom][in工作区号|文件别名](第一个记录键值最小的记录) 相对移动skip[移动记录数][in工作区号|文件别名]插入记录insert[before][blank]before前,blank空 逻辑删除delete[范围][for条件][while条件]恢复逻辑删除recall[范围][for条件][while条件] 物理删除pack物理删除所有记录zap编辑修改edit|change[范围][fields字段名表][for条件][while条件] 浏览编辑browse[范围][fields字段名表][for条件][while条件][freeze字段名][noappend][nodelete] [noedit][font字体[,字号]freeze字段名指定可修改的字段 替换修改replace[范围]字段1with表达式1[,字段2with表达式2…][for条件][while条件] 排序/a升序/d降序/c不区分大小写,关键字只能C、N、D型可包含相关联工作区文件字段别名-字段名 sortto文件名on字段1[/a][/c][/d][,字段2[/a][/c][/d]…][范围][fields字段表][for条件][while条件] indexon关键字表达式to索引文件名[for条件][compact][unique][additive]多字段索引必须是C型 compact压缩unique惟一性索引(若有多条记录具有相同关键字表达式,索引文件只包含第一条记录Additive不关闭先前打开的索引,新建索引文件成为主索引关闭索引文件
1、setindexto
2、closeindex 打开索引文件
1、use库文件名index索引文件名表
2、setindexto索引文件名表 指定主索引setorderto[索引文件名表中的顺序号|索引文件名]重建索引reindex[compact] 顺序查询locate[范围][for条件][while条件]继续查询continue(locate中用while语句,continue无意义) 索引查询find字符串|数值常量只能查字符串或数字字符串有前导空格须用引号,否则可不必使用定界符 seek表达式第六章 数据库的基本*作包括建立数据库文件的结构,数据的录入,数据库的维护,数据库结构的维护,对数据库文件进行排序或建立索引,数据查询,对数据库中的数据进行加工计算,数据的输出 数据库文件的编辑和处理都要打开数据库文件,打开数据库的含义是将数据文件由磁盘读入内存关闭数据库文件是将数据库文件从内存存到外存上,并释放该文件所占的内存和工作区一个工作区不能同时打开多个文件 建立数据库的结构是定义字段名、字段类型、字段宽度、小数位,打开数据库,记录指针指向第一条记录 数据库文件名不能用a-j单个字母,因为Foxpro已把a-j作为工作区代号使用了定义一个关系结构,应说明属性名,属性数据类型及位数go或goto是数据库记录指针绝对定位命令,skip则是数据库记录指针相对定位命令 插入记录命令是insert,加上Before子句规定在当前记录前插入记录,而blank子句则表示插入一条空记录 对数据库中的记录进行逻辑删除(加删除标记*号)的命令是,物理删除的命令则是PACK. FoxPro中有两种类型的索引文件一类称为单项索引文件,扩展名为idx,另一类称为组合索引文件,扩展名为cdx. 单项索引文件分为两类,一类是压缩索引,另一类是非压缩索引,组合索引文件分为两类,一类是结构组合索引,另一类是独立组合索引组合索引总是压缩的索引所基于的字段称索引项一个库文件可以建立多个索引,在*作中可以同时打开多个索引,但任何时刻只有一个索引起作用,这个索引称主索引利用索引文件快速检索的命令是seek和find,如要检索表达式则应该用二者中的seek命令,检索成功一般由found()或eof()函数测试 FoxPro用键盘为内存变量赋值的语句有accept、input、wait. FoxPro用命令public定义全局变量,用private命令定义局部变量 FoxPro中进行文本显示命令是TYPE,能显示FoxPro中的文本文件、命令文件或屏幕格式文件 use命令可以关闭当前工作区打开的数据库文件,closedatabases可以关闭所有工作区打开的数据库文件,closeall可以关闭所有工作区打开的所有类型的文件,clearall可以关闭所有工作区打开的所有类型的文件,同时释放内存变量,quit命令在退出FoxPro之前关闭所有文件 每个库文件的开始和结尾都存在一个标志,首记录前是开始标志,尾记录后是结束标志当前数据库文件的记录数为15,在未打开索引文件的情况下,先执行GOBOTTOM命令,再向下移动指针,此时,函数RECNO()的返回值是16,函数EOF()的返回值是T.,打开数据库,记录号为1,bof()为f.,skip–1后,bof()为t.当一条普通(非LOCATE)命令中的FOR子句执行完毕后,若范围为ALL或REST,那么记录指针指向末记录后或库文件结束标志,执行完LIST命令后,EOF()函数的值为T. 备注型字段数据的输入方法与其他字段不同,可把光标定位于memo字段,按Ctrl+PgUp、Ctrl+PgDn、或Ctrl+Home组合键进入FoxPro字处理编辑状态,此时可输入备注型字段内容,编辑结束后按Ctrl+W组合键退出 当备注字段的标识为Memo时,说明备注字段有内容;当备注字段的标识为memo时,说明备注字段没有内容 在修改数据库结构时,可用组合键Alt+I输入一个字段,可用Alt+D组合键删去一个已有的字段,修改完后按Ctrl+W组合键可以将数据结构磁盘 指针指向的记录称为当前记录工作区实质就是在内存中开辟的一块区域,用来存放库文件记录 关联是将两个或多个在不同工作区中打开的库文件联系起来,当一个工作区的记录指针发生变化时,与之关联的工作区记录指针也随之相应改变进行关联时,当前库文件称为关联库文件,其他工作区的称被关联库文件 SQL为结构化查询语言,为关系数据库标准语言 未经说明时,主索引文件是索引文件列表中的第一个索引文件;主标记是复合索引文件中最先建立的的标记 组合索引的每一个索引项称为一个索引标记(TAG),打开一个组合索引文件相当于打开多个单项索引文件 当对库文件进行增删等*作时,没有打开的索引文件不能反应库文件的实际内容,为此应对其重建索引 使用SEEK和FIND命令的前提条件是打开数据库文件及其相关的索引文件 要进行分类汇总的数据库文件必须按照适当的表达式进行索引或排序 FoxPro中用户定义的内存变量的类型是在后赋值确定的 每条记录的长度等于每个字段的长度加起来,再加上一个逻辑删除标记的固定长度
1. 变量被定义为全局变量后,没有被赋值前,默认为逻辑假值但fox和foxpro这两个特殊的变量默认为逻辑真值 SQL临时库文件,文件扩展名tmp,该文件一旦关闭,便被系统自动删除 SQL的数据查询命令主要由三个子句构成select、from和where.其中select子句和from子句是不可省略的 select命令可在命令窗口直接键入执行,也可通过RQBE交互窗口进行查询,进入方法是选择file菜单的new菜单项,在弹出的对话框中选择query.命令createquery[查询文件名]或modifyquery[查询文件名] 综合数据库*作第七章 foxpro采用编译方式运行程序,它将源文件编译成同名但扩展名为fxp的目标文件,然后执行该目标文件 命令文件编辑完成后,可按ctrl+w或ctrl+end键存盘并退出,按ctrl+q或esc键作废并退出 凡注释文件,foxpro既不检查也不执行注释文件可以单独成行,多行注释可以在行末用续行符;续行 Foxpro程序的三种基本结构是顺序结构、分支结构和循环结构 顺序结构程序是最简单,也是最基本的程序结构形式,特点是顺次、逐条地执行程序中的命令 一个完整的的程序总是包含输入数据、加工处理数据,输出数据三种成分 非格式化输入是指输入数据时,输入的数据只能显示在当前窗口光标处,不能控制数据的显示位置,也不能限制数值的范围和格式有三种形式accept、input、wait. 格式化输入是指在进行输入时,可以控制输入数据在屏幕上的显示位置、输入数据的类型和宽度,还可以规定输入数据的范围格式化输出是指在进行输出时,可以控制数据输出到屏幕或打印机的位置,并可指定数据显示或打印的宽度和格式格式化输入输出中,功能符控制整个数据,格式符仅控制数据中对应位置上的单个字符,格式符的个数决定数据的宽度格式化输入命令必须与read合用才能激活变量,一个read可激活多个变量 在if的命令序列中再含有if语句称if语句的嵌套If和endif必须配对出现,else总是和最靠近的if相匹配 具有控制循环机制的程序就称为循环结构程序若一个循环体中含有另一个循环,称二重循环第一层循环称为“外层循环”,第二层循环称为“内层循环”;或内层循环的循环体中又含有循环命令,称为三重循环 能够完成一个特定功能的程序段,就称为过程,实际上就是子程序过程文件是一个包含若干过程的命令文件 局部变量好处
一、节省内存空间,
二、可以避免重名变量被它所调用的程序修改其内容 自定义函数和过程不同过程是通过参数获得结果,自定义函数必须返回一个函数值,这是最大区别过程调用是用do命令实现的,自定义函数是通过函数名引用,在程序中只能用来组成表达式 参数传递有值传送和引用传递两种方式值传递方式只传递变量的内容,引用传递方式传递变量的地址 set命令组有两类一类是设置参数值,另一类是设置状态值 Foxpro工作环境的三个启动配置文件存放在c\windows目录下的文件是foxpro.ini,存放系统默认字体信息及主窗口大小、形状等存在c\的是config.sys,存在foxprow目录下的是config.fpw,专供用户配置自己工作环境设置语法参数名=参数值 使用窗口的一般过程定义、激活、使用、关闭 设计下拉菜单步骤定义水平菜单-定义PAD-定义PAD选中后执行的弹出菜单-定义弹出菜单-定义BAR-指定弹出菜单选项执行命令-激活菜单 综合数据库程序设计第八章 foxpro内含程序开发工具菜单生成器、屏幕生成器、报表生成器、项目管理器 建立菜单(屏幕)文件,出现mnx,mnt(scx,sct),生成菜单程序后,出现mpx,mpr(spx,spr),可删除 菜单设计过程是在菜单设计窗口定义各菜单项的过程菜单设计窗口每一行对应菜单中一个菜单项菜单项包括prompt定义提示信息result定义执行内容options定义其他信息定义热键是在作为热键的字母前加\. Result包括四选项command,padname/bar#,submenu,procedure.Options包括comment设定注释,shortcut定义激活菜单热键skipfor设定菜单是否可选条件Message,状态栏信息,padname/bar#设定菜单名或菜单号 Munu菜单项generaloptions(procedure建菜单程序通用过程,setup建立初始化代码,cleanup,建立结束代码),menubaroptions,tryit,insertitem,deleteitem,quickmenu.生成菜单、屏幕文件program-generate. 构成应用程序的任何可*作的实体都称为对象对象能够识别的动作称事件事件驱动是一种程序运行机制,它根据*作者的动作控制程序的运行,从而完成相应的功能屏幕生成器提供了14个工具 screen菜单项layout设置屏幕属性和输入屏幕代码片段 编译项目文件生成app文件,必须在foxpro环境下运行,生成exe文件,直接在windows环境下运行 综合开发工具运用附函数及命令 函数P75数值函数
1、绝对值ABS(数值表达式)
2、取整INT(数值表达式)
3、最大值MAX(N1,N2,…)
4、最小值MIN(N1,N2,…)
5、平方根SQRT(数值表达式)
6、EXP(数值表达式)=eX
7、LOG(数值表达式)=LnX
8、正弦SIN(数值表达式)
9、余弦COS(数值表达式)
10、正切TAN(数值表达式)(*弧度表示)
11、0-1之间随机数RAND([数值表达式])(数值表达式为负,从当前时钟取种子数)
12、四舍五入ROUND(数值表达式1,保留位数)*保留位数为负表示其绝对值为整数部分四舍五入的位数 字符串函数
1、字符串长度LEN(字符表达式)
2、删尾部空格TRIM(字符表达式)
3、删头部空格LTRIM(字符表达式)
4、取子串SUBSTR(字符表达式,从第几个开始,[取几个字符])
5、首字母大写PROPER(字符表达式)
6、子字符串查找AT(字符表达式1,字符表达式2)返回式1在式2的开始位置,没找到返回0,区分大小写
7、子串替换STUFF(字符表达式1,数值表达式1,数值表达式2,字符表达式2)
8、大小变小写LOWER(字符表达式)
9、小写变大写UPPER(字符表达式)
10、空格SPACE(空格数量)
11、字符串复制REPLICATE(字符串,复制次数)
12、宏替换内存变量[,字符串] 日期和时间函数
1、取系统日期DATE()
2、取系统时间TIME()
3、取年份YEAR(日期表达式)
4、取日DAY(日期表达式)
5、取月份MONTH(日期表达式)
6、日期格式转换MDY(日期表达式)(月日年格式) 数据类型转换函数
1、字符转数值VAL(字符表达式)
2、字符转日期CTOD(字符表达式)
3、日期转字符DTOC(日期表达式[,1])带可选项“1”返回一个适于进行索引的日期字符串
4、数值转字符STR(数值表达式1[,返回字符串长度[,小数部分输出位数]]) 测试函数
1、数据类型测试TYPE(字符表达式)
2、测试文件尾EOF([工作区号|文件别名])
2、测试文件头BOF([工作区号|文件别名])
4、测试当前记录号RECNO([工作区号|文件别名])
5、测试库文件记录数RECCOUNT([工作区号|文件别名])
6、测试屏幕行列坐标ROW()、COL()
7、测试是否查找成功FOUND([工作区号|文件别名])
8、测试打印头坐标PROW()、PCOL() 数据库基本*作 内存变量赋值
1、store表达式to内存变量表
2、内存变量=表达式
3、savescreento屏幕型内存变量restorescreenfrom屏幕型内存变量 内存变量释放
1、release内存变量表
2、releaseall[like|except通配符]
3、clearmemory
4、clearall 内存变量文件建立saveto内存变量文件名[all[like|except通配符]] 内存变量恢复restorefrom内存变量文件名[additive]无additive消除当前内存中变量,有additive保留变量 内存变量显示
1、listmemory[toprint]
2、displaymemory[toprint] 内存变量输出?|??[表达式表]?从当前光标所在行的下一行第0列开始显示,??从当前光标所在处开始显示 数组定义dimension|declare数组名1(数值表达式1[,数值表达式2])[,数组名2(数值表达式3[数值表达式4])]…数组元素赋值
1、store表达式to数组
2、数组=表达式 数据库文件记录值传送到数组scatter[fields字段表]to数组[blank]memvar[blank] 数组中的数据传送到数据库文件gatherfrom数组|memvar[fields字段表] 建数据库文件结构create[文件名|?]追加记录append[blank]数据库文件打开use[库文件名|?][alias别名] 记录显示list|display[范围][fields字段名表][for条件][while条件][off][toprinter|file文件名] 范围recordn第n条记录*作,nextn下n条记录*作,all所有记录*作,rest当前到文件结束所有记录*作 off不显示记录关闭当前工作区数据库use关闭当前打开的所有数据库closedatabases关闭所有closeall关闭索引文件closeindexes关闭格式文件closeformat关闭过程文件closeprocedure 关闭后备文本文件closealternate显示数据库结构list|displaystructure[toprinter|tofile文件名] 修改库结构modifystructure(生成bak和tbk文件,修改字段类型该字段数据丢失,不能同时修改字段名和宽度) 绝对移动go|goto[[record]记录号|top|bottom][in工作区号|文件别名](第一个记录键值最小的记录) 相对移动skip[移动记录数][in工作区号|文件别名]插入记录insert[before][blank]before前,blank空 逻辑删除delete[范围][for条件][while条件]恢复逻辑删除recall[范围][for条件][while条件] 物理删除pack物理删除所有记录zap编辑修改edit|change[范围][fields字段名表][for条件][while条件] 浏览编辑browse[范围][fields字段名表][for条件][while条件][freeze字段名][noappend][nodelete] [noedit][font字体[,字号]freeze字段名指定可修改的字段 替换修改replace[范围]字段1with表达式1[,字段2with表达式2…][for条件][while条件] 排序/a升序/d降序/c不区分大小写,关键字只能C、N、D型可包含相关联工作区文件字段别名-字段名 sortto文件名on字段1[/a][/c][/d][,字段2[/a][/c][/d]…][范围][fields字段表][for条件][while条件] indexon关键字表达式to索引文件名[for条件][compact][unique][additive]多字段索引必须是C型 compact压缩unique惟一性索引(若有多条记录具有相同关键字表达式,索引文件只包含第一条记录Additive不关闭先前打开的索引,新建索引文件成为主索引关闭索引文件
1、setindexto
2、closeindex 打开索引文件
1、use库文件名index索引文件名表
2、setindexto索引文件名表 指定主索引setorderto[索引文件名表中的顺序号|索引文件名]重建索引reindex[compact] 顺序查询locate[范围][for条件][while条件]继续查询continue(locate中用while语句,continue无意义) 索引查询find字符串|数值常量只能查字符串或数字字符串有前导空格须用引号,否则可不必使用定界符 seek表达式按指定范围统计满足条件的记录count[范围][for条件][while条件][to内存变量名] 求和sum[范围][数值表达式][for条件][while条件][to内存变量名表|toarray数组] 求平均值average[范围][数值表达式][for条件][while条件][to内存变量名表|toarray数组] 分类汇总totalon关键字表达式to分类库文件名[范围][fields字段名表][for条件][while条件] 库文件复制copyto库文件名[范围][fields字段名表][for条件][while条件] 库结构复制copystructureto新库文件名[fields字段名表]文件复制copyfile源文件名to目标文件名 库文件复制成文本数据文件sdf复制成标准格式(各记录定长,字符无分界符)delimited非标准格式数据文件,特点各记录不定长,每个记录以回车换行为结束标志,字段值之间用逗号分开,字符型数据用双引号括起来 copyto数据文件名sdf|delimited[with定界符|blank][范围][fields字段名表][for条件][while条件] 文本数据到库文件appendfrom数据文件名sdf|delimited[with定界符|blank][for条件][fields字段名表] 选择工作区select工作区号|别名删除关联setrelationto 建立文件关联setrelationto[关键字表达式|数值表达式into工作区号|别名][additive] 库文件连接joinwith别名to新库文件名[fields字段名表][for条件]库文件更新 updateon关键字段from别名replace字段名1with表达式1[,字段名2with表达式2…][random] 建立命令文件modifycommand[命令文件名|?][inwindow窗口名|screen]命令文件运行do命令文件名 命令文件注释
1、note注释
2、*注释
3、注释清屏命令clear返回命令return accept[字符表达式]to内存变量接受从键盘输入的字符型数据Input[字符表达式]to内存变量接受从键盘输入的数据,wait[字符表达式][to内存变量][window[nowait][timeout等待秒数]等待一个字符无字符表达式提示pressanykeytocontinue.window使提示信息显示在系统窗口中 格式化输出@行,列say表达式[picture“[@功能符串][格式符串]”][font字体[,字号]] 格式化输入@行,列[say表达式]get内存变量|字段[picture“[@功能符串][格式符串]”][range上界[,下界]][[open]window窗口名][enable|disable][valid逻辑表达式1][when逻辑表达式2] window指定编辑备注字段窗口(窗口须事先定义)disable|enable是否允许存取该变量 valid检查get数据正确性,只有逻辑表达式1为真时才能移到下一个get变量 定义文本编辑区@行,列edit内存变量size行数,列数font[字体[,字号]][scroll] read[cycle][save]cycle定义一个循环read,可通过tab、enter回到第一个对象,save使对象能被以后的read编辑功能符!小写变大写;B数值左对齐;D日期型按setdate格式;E日期型按日/月/年;Z数值为0时显示空格;$货币格式;只支持say(负数加括号;C正数后加CR;X负数后加DB.只支持get A只允许字母字符;J字符右对齐;K光标移到变量时自动删除原内容;T删除字符前后空格 格式符X允许任何字符;#显示正负号,只许数字、空格、正负号;!小写变大写;*第一个有效数字前0变*; 小数点位置;,隔三位插,;只支持say A数值型用A替换数字;Y逻辑型T变Y,F变N,数值型用Y替换数字;$数值型货币号,字符型$替代字符;9字符型只许0-9;只支持get A只允许字母;L只允许逻辑型;N只允许字母和数字;9只允许数字、正负号;$第一个有效数字前0变$; 清整个屏幕clear清屏幕局部区域@行1,列1[clear|clearto行2,列2] 分支语句if条件命令序列1[else命令序列2]endif多分支选择语句docasecase条件1 命令序列1case条件2命令序列2…case条件n命令序列n[otherwise命令序列n+1]endcase while循环语句dowhile条件命令序列1[loop]命令序列2[exit]enddo for(给定次数)循环语句for循环变量=初值to终值[step步长]命令序列[loop][exit]endfor scan循环scan[范围][for条件][while条件]命令序列[loop][exit]endscan 定义过程procedure过程名[parameters形参表]过程体return[tomaster]过程文件格式procedure过程名1过程体1returnprocedure过程名2过程体2return…procedure过程名n过程体nreturn 打开过程文件setprocedureto[文件名],关闭过程closeprocedure调用过程do过程名[with实参表] 定义全局变量public内存变量表 隐藏指定内存变量
1、private内存变量表
2、privateall[like通配符变量名]|except通配符变量名] 自定义函数function函数名[parameters形参表]函数体return表达式调用函数函数名([实参表]) 定义窗口definewindow窗口名1from左上角行号,列号to右下角行号,列号[double|panel|system|borderstring|shadow][inwindow窗口名2][title标题][font字体[,字号][close][float][grow][zoom][minimize] 边框样式double双线、panel粗线、system模拟命令窗口、默认单线borderstring字符串边框,shadow阴影 inwindow定义在指定的父窗口内[close关闭][float移动][grow改变大小][zoom最大化][minimize最小化] 激活窗口activatewindow窗口名1|allinwindow窗口名2休眠窗口deactivatewindow窗口名[all] 释放窗口releasewindow窗口名表显示、隐去窗口show/hidewindow窗口名表|all
1、定义水平菜单definemenu菜单名[inwindow窗口名][key热键]
2、定义菜单选项definepad选项名of菜单名prompt提示[at行,列][key热键]
3、设置菜单命令onselectionpad选项名of菜单名命令
4、激活菜单activatemenu菜单名
5、定义弹出菜单definepopup菜单名[from左上角行,列]
6、定义菜单选项definebar选项号of菜单名prompt提示[key热键]
7、设置菜单命令onselectionbar选项号of菜单名命令
8、激活菜单activatepopup菜单名
9、下拉菜单中定义PAD选中后执行的弹出菜单onpad选项名of水平菜单名activatepopup弹出菜单名
10、二级弹出菜单onselectionbar选项号of菜单名activatepopup二级菜单名 下拉菜单设计命令1,2,9
(3),5,6,7
(10),4(弹出菜单已经在水平菜单中激活) 建立createmenu|screen|report|project文件名(菜单文件|屏幕文件|报表文件|项目文件) 修改modifymenu|screen|report|project文件名(菜单文件|屏幕文件|报表文件|项目文件) 运行domenu|screen|report|project文件名(菜单文件|屏幕文件|报表文件|项目文件) 对象可以用showget变量名[enable|disable]激活或关闭showgets变量表enable 设置参数值set参数名to参数值设置状态值set参数名on|offsetprinton(off)打印机逻辑开关setdeletedoff(on)off时被逻辑删除的记录仍参与*作 setexacton(off)find查询是否精确匹配setdevelopmenton(off)是否自动重新编译、替代目标文件 settalkon(off)命令执行是否给出回应,setconsoleon(off)非格式化输入数据是否回显 setdevicetoscreen(print|file文件名)设置输出设备setudfparmsto[value|reference]设置传递方式 setdefaultto目录设置默认目录setsysmenuon(off)设置是否显示系统菜单 SQL语言 建库文件createtable|dbf库文件名(字段名1类型[(长度[,小数位])][,字段名2…])|fromarray数组 建临时库文件createcursor文件名(字段名1类型[(长度[,小数位])][,字段名2…])|fromarray数组 数据插入insertinto库文件名[(字段名1[,字段名2…])]value(表达式1[,表达式2…]) insertinto库文件名fromarray数组|frommemory数据删除deletefrom库文件名where条件 数据修改update库文件名set字段名1=表达式1[,字段名2=表达式2…][where条件] 数据查询select[all|distinct][别名.]检索项[,[别名.]检索项…]from库文件名[别名][,库文件名] [别名…][into目标]|[tofile文件名[additive]|toprinter|toscreen][where连接条件[and连接条件] [and|or过滤条件[and|or过滤条件…]]][groupby分组列[,分组列…]][having过滤条件] [union[all]select][orderby排序项[asc|desc][,排序项[asc|desc]…]] distince无重复的结果记录检索项主要是字段名,选中的字段可以和SQL函数一起使用 groupby将查询结果按某一列(或多列)的值进行分组having只与groupby配合使用,用于说明分组条件 union[all]select将两个查询结果合并在一起输出,无ALL重复记录被自动取消,有all表示结果全部合并Visa-freepolicybringsChengdubiztourismboost.MakingnationalheadlinesseveraltimesChengdus72-hourvisa-freepolicyhasattractedwideattentionfrombothChineseandforeignexpertsandbusinessmensinceittookeffectonSept1lastyear.Theprogrampermitscitizensfrom51countriesandregionsincludingtheUnitedStatesAustraliaCanadaandJapanwhohavevalidvisasandflightticketstoathirdcountrytospendthreedaysinthecity.ThecapitalofSichuanprovinceisthefirstcityinthewesternregionofChinatoofferforeigntouristsathree-dayvisaandthefourthnationwidetoadoptthepolicyfollowingShanghaiBeijingandGuangzhou.LiZhiyongdeputydeanofthetourisminstituteatSichuanUniversitysaidthemovecontributestoalargeincreaseinthenumberofoverseastouristsandraisesthecityslevelofinternationalization.ThepolicywillalsobringdirecteconomicrevenueLisaid.Chengduhasmanyculturallegaciesandisalsoaparadiseforpandaloverswiththeworldslargestbreedingandresearchcenter.Threedaysarelongenoughforforeignvisitorstovisitthoseiconictouristspotshenoted.ThecityishometotheremainsoftheJinshacivilizationthatdatesbackmorethan3000yearsaswellastheQingchengMountainsandtheDujiangyanirrigationsystem.QingchenghaslongbeenrecognizedasthebirthplaceofTaoismChinasancientindigenousreligionwhileDujiangyanisconsideredtobetheoldestfunctioningwater-controlprojectintheworld.Chengdurankedthirdintouristfacilitiesmanagementandservicesamong60Chinesecitiesinacustomersatisfactionsurveyreleasedlastyear.ButLiaddedthateffortsarestillneededtodevelopmoretourismproductsimproveEnglishservicesandprovideaccuratetranslationoftrafficsignsandscenicbillboards.ZhaoYunchairwomanofBritishChamberofCommerceSouthwestChinatoldChinaDailythathiscolleaguesfoundthepolicyveryconvenient.ABritishclientonceflewhereandstayedforjustonedaytocheckherorderedgoodsshesaid.ZhaowasborninShanxiprovincebutshehaslivedinChengduformorethan10years.Mylifewaslikearunningracemovingfromplacetoplace.IalsolivedinBeijingandShanghaibeforeshesaid.ButChengduisaplacethatyouneverwanttoleaveoncesettlingdown.Itisnowmysecondhometownshesaid.Iftheenvironmentisfurtherimprovedthecitywillattractmorepeopletovisitandlivewiththe72-hourvisa-freepolicyandcompellingconditionsintransportationcultureclimateandcuisinehesaid.Foreignersalsogavepositivefeedbackonthepolicy.AspokesmanfromDellIncsaidthecompanyhasaglobalhubofoperationinChengdusothethree-dayvisahasanimmediateandpositiveinfluenceonthecompanysbusinessdevelopment.RudyButtignolpresidentofthepublicbroadcastingcompanyinBritishColumbiaCanadasaidhisworkrequiresfrequenttraveltoChengduandthepolicymakesthetripseasier.Datafromthecityspublicsecuritybureaushowssome100foreignvisitorsenjoyedthe72-hourpolicybytheendofMarchmostofthemfromtheUnitedStatestheUnitedKingdomandGermany.Chengdualsoreportedrobustgrowthinitsoveralltouristindustrylastyear.Officialstatisticsshowthatitreceivedsome150milliontouristslastyearanincreaseof28percentfrom
2012.Around
1.7millioncamefromabroadanincreaseof12percent.Totalrevenuefromtourismsurpassed133billionyuan$
21.7billion.DuringhisvisittoKazakhstaninSeptemberChinesePresidentXiJinpingproposedthatChinaandCentralAsiajoinhandstobuildaSilkRoadeconomicbelttoboostcooperation.TheideahasbeenwidelyechoedinCentralAsiancountriesbecominganencouragingblueprintforChineseareasalongtheSilkRoadthathaslinkedAsiaandEuropeformorethan2000years.InthenextthreeweeksChinaDailyreporterswilltravelthroughthebeltinChinaandinKazakhstanUzbekistanandTurkey.Theywillshowtheprogressandexpectationsofthecountriesbusinessesandpeoplesontheroute.Shaanxi-thestartoftheancientSilkRoad-haspositioneditselfasthenewstartingpointforthedevelopmentoftheSilkRoadEconomicBeltwhichwillstrengthenChinascooperationwithCentralAsiancountriesaseniorofficialsaid.ShaanxiGovernorLouQinjiansaidtheprovinceisfreshrichanduniqueasitwaswhenitanchoredoneendoftheancientSilkRoad.ItisthebestoptionforaccommodatingindustrialtransfersfromEastChinaortheworldatlargehesaidonWednesdayinXian.Louheldajointinterviewwith27mediaincludingChinaDailythefirstinaseriesofinterviewsentitledChineseMediaAlongtheSilkRoad.TheinterviewswillbeinShaanxiandGansuprovincesandtheXinjiangUygurautonomousregionaswellasKazakhstanUzbekistanandTurkey.ThemediagroupheldthefirstinterviewonWednesdaymorninginXianthestartingpointoftheancientSilkRoadatradechannelestablishedmorethan2000yearsagolinkingChinaCentralAsiaandEurope.。