二级Vf教材.doc_第1页
二级Vf教材.doc_第2页
二级Vf教材.doc_第3页
二级Vf教材.doc_第4页
二级Vf教材.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

全国计算等级考试等级考试 二级visual foxpro第一章 数据库基础与VF系统概述1.VF是一个32位的关系模型的数据库管理系统2.数据库:存放在计算机硬件中的数据集合,database 简写DB3.数据库管理系统:DBMS DB:database M:management S:system在数据库中起核心作用。4.数据库系统(DBS)的组成:数据集合,硬件,数据库管理系统及其相关软件 数据库管理员(DBA)用户DBS包括DE 和DBMS5数据库系统特点:(1).提高了数据的独立性 (2).将少数据冗余,实现数据共享(3).采用了特定的数据模型 (4).每种数据库都具有统一的数据控制功能6.数据管理:发展阶段人工管理阶段 文件系统阶段 数据库系统阶段数据库系统阶段与文件系统阶段的最大区别? 数据冗余 建立数据库的目的?实现共享数据库设计的根本目的?实现共享7.DBMS所支持的数据模型? 层次模型 网状模型 关系模型8.关系模型:用一个二维表结构来表示实体或实体间联系的模型 二维表既平面表9.实体:客观存在,并且可以相互区别的事情 实物 抽象概念(NBA 世界杯)10.实体之间通过特点来进行区别叫属性 属性:用于描述实体之间特点11.实体间联系:一对一(1:1) 一对多(1:n)多对多(m:n)没有多对一关系数据库:若干张关系(二维表)组成12.关系:一张二维表,每一个关系有一个关系名(等价概念位二维表)13.属性:垂直列成为属性,每一个属性有一个属性名(属性等价为字段)14.元组:可以表示一条记录的水平行(元组等价成为记录)15.关键字:用来标识一条记录的属性或属性的组合 主关键字:主键 候选关键字:候选键区别:候选关键字可以有若干个,主关键字一张表中只能有一个,并且不允许为空值16.空值:没有值,缺少值或未确定值 数字0或者空格不予空值等价17.外部关键字:起表之间连接作用 18.域:属性的取值范围19.关系模型格式:关系名(属性名1,属性名2)20.关系特点:(1)必须规范化表中不能有表(二维表) (2)关系的行和列的次序无关紧要(3)关系的记录不能重复,属性名不允许重复21.关系运算:传统集合运算和专门关系运算 传统集合运算:交 并 差例如:既包含在A又包含在B的关系运算是交 A-B 包含在A但是不包含B专门运算关系:投影 选择和联系选择:从一张二维表中的行的运算角度,抽取表中的满足条件的记录投影:从一张二维表中的列的角度抽取表中字段或字段中的值进行运算:联接:从多个表中进行数据抽取命令短语:Quit 退出VF界面 ?或?在后面加上表达式多个表达式之间用,隔开表达式值在工作区中显示的结果是通过空格隔开的 ?/?”表达式”?与?都是用来显示表达式的值?加表达式,首先是在工作区中换行,下一行显示表达式值 ?在当前位置直接显示表达式的值22.VF有三种操作方法 菜单操作方法 命令操作方法 程序操作方法23.VF的设计工具有 设计器 向导 生成器 主要设计工具是设计器第二章数据与数据运算1.每种常量的组成及定界符 数值型N 货币型Y 字符型C 日期型D 日期时间型T 逻辑型 L2.数值型:由小数点、数字、+/组成的整数或实数 例如:-12/85 1/2不是数值型而是运算式子 1,-12.35,12,-1 是数值型数据3.货币型:数值部分与数值型部分常量组成相同常量之间区别靠定界符$shift+412.31(N) $12.31(Y)特点:每一个货币型常量在计算机中占8个字节,在显示色时候货币型常量采用4位小数显示不够用0代替多的四舍五入4.字符型:由字符型常量定界符所包含的数据就是字符型常量。定界符” 例如:”123”,good”你好”*&注:如果在一个字符常量内包含字符常量中的一种,那么在为这个定界符定界的时候必须使用另外两种中的一种定界符的符号必须在英文输入法状态下输入 例如显示中国中国中国5.逻辑型:逻辑真和逻辑假定界符 逻辑真 .T. .Y. .t. .y. true and yes 逻辑假 .F. .N. .f. .n. fause and no6.显示常量的方法 ?/?在显示数据输出时,首先先换行然后显示结果(在下一行显示结果)?数据输出显示时,在当前位置直接显示7.日期型:由年月日和分隔符组成分割定界符包括:/(默认) -;空格:句点定界符 其中的输入不是任意的8.日期时间型常量:表达形式:日期,hh:mm:ss,A/P 时间部分可以缺省例如2001年10月1日,下午3点5分 ?2001,10,1 03:56p9.日期型数据的输出格式(1)传统格式:mm/dd/yy mmmonth ddday yyyear年份为两位或者是四位例如 :10/16/2008 10-16-2008(2)严格格式(默认):yyyy/mm/dd 例如2008/10/16特点:内的第一个符号是;年份必须是4位,年月日的顺序不可以颠倒或缺省A取消日期输入格式检查set stictdate to 0/10代表取消格式检查 1代表只允许用严格式输入B.设置输出日期的世纪值 set century on/offOn年份四位输出 Off年份二位输出?2008-10-16 显示“2008*10*16”D设置日期的输出格式Set date (to) 日期格式名称 set date to YMD10. 变量:内存变量和字段变量11. 组成:变量名,变量值和变量类型变量命名规则:(1)字母、数字、下划线或汉字 (2)内存变量:开头字符不允许是数字字段变量:开头字符不允许是数字或下划线 (3)变量名最长位128个字符(4)避免使用保留字 变量的类型与变量值类型,变量类型可以随时变化12. 内存变量建立(赋值)(1)store 表达式 to 变量名1,变量名2给一个人或多个变量赋相同的值(2)变量名=表达式只能给一个变量赋值X,y,z=good store good to x,y,zOr x=”good” Y=”good” Z=”good” 13. 数组变量(1)先定义后使用,定义命令词:dimension declare一维数组:数组名(下标) 二维数组:数组名(行标,列标)例如:数组名A含有3个元素的一维数组表示为: A(3)元素表示为A(1),A(2),A(3)数组名为B含有2行3列元素的二维数组表示 B(2,3)元素表示方法,元素个数行数列数 B(行, 列)B(1,1)B(1,2)B(1,3) B(2,1)B(2,2)B(2,3)(2)建立数组后,数组元素的初值位.F.(逻辑假)(3)数组中元素赋值的方法与内存变量的赋值方法相同例如:B(1,3)=15Store “你好”to array1(2)(4)位数组名赋值表示给数组的所有元素赋值显示一个内存变量的方法?/? 变量名1,变量名2 使命命令格式List memory/display memory 显示所有内存变量x;x1;xa;y;y1;array(1);array(2)在list memory/display memory后加like通配符 *代表任意字符 ?代表任意0个或单个字符Display memory like x* 显示变量名的开头字符为X的变量:x;x1;xa1Display memory like x? :x,x114. 变量清除(1)clear memory 清除所有内存变量(2)release 变量名 指定清除某一个或某一些变量(3)releae all 基本等于clear memory 清除所有内存变量 releae all like x?*当字段变量与内存变量同名时 首先表现的是字段变量,如果希望显示内存变量值那么在变量名前加m.或m15. 表达式:表达式是常量、变量、函数的运算 表达式的优先级及运算符的优先级(1)算术表达式:( )最高,-取反,*或(乘幂符号),*乘号,/除号,%求余,+,-(加,减)按优先级以此降低*或代表次幂 2*3=23=23=8%求被除数与除数的余数作结果 被除数%除数=余数 设被除数与除数同正时余数值为M同号:余数的值为M,符号与除数相同异号:首先、M的符号与被除数相同,所得结果再与除数相加,最后得到的值为求余结果10%3=1 -10%-3=-1 -10%3=2 10%-3=-2 25%7=4 25%-7=3 -25%-7=-4 -25%7=3Mod(被除数,除数)-求余函数mod(25,7)=4 25%7=4(2)字符表达式:+,-(连接) 运算对象:字串符,结果:字符串“+”将两个字符串中的字符串顺次连接在一起“-”将两个字符串中的字符连接在一起,但是,第一个字符串的末尾是空格,则空格移到第二个字符串末位显示例如:“good_”+”girl”=”good_girl” “good_”+”girl”=”goodgirl-“good”+”girl”=”goodgirl” “good”-“girl”=”goodgirl”Len(字符表达式)求字符表达式的长度,函数返回值的类型:数值型Lenlength(长度) 例如:len(”123”)=3 len(“中国”)=4space(数值)空格字符串生成函数 len(space(3)-space(2)=_B.5A.1 B.5 C.15 D.无正确结果 题中的减号为连接符号不是减号(3)日期表达式:+,运算对象:日期型,日期时间型,数值型结果:数值,日期,日期时间日期和日期或日期时间与日期时间只能相减,不能相加2001/10/25-2001/10/05=20 2001/10/25,02:25:20p-2001/10/25,02:25:20p=10日期+/-数值(天数) 例如:2001/10/01+10=2001/10/11日期时间+/-数值(秒数) 例如:2001/10/02,02:20:20+10=2001/10/02,02:20:30(4)关系表达式:运算对象,类型相同即可 ,=,=,= 结果:逻辑型数值(#,!=,) 不等于 =恒等于 $取子串 =:只有两个数据完全相同的时候结果才成立.T.例如:”123”$”1234”.T.“123”$”4321”.F.逻辑真一定大于逻辑假 例如:.T.F.日期型比较,日期越早值越小,例如:2001/12/31”A.T.C.汉字比较:按汉语拼音顺序对应比较例如:“星”“王”.F. XING WANG(5)逻辑表达式.NOT. 非 .AND. 与 .OR. 或 非与或运算对象和结果:逻辑型 NOT.F.-.T.非真即假,非假即真.t. and .f.-.f.运算对象都为真.T. and 的结果才为真.T. 否则为假.F. .T. OR .F.-.T. 运算结果都为.F.or 的结果为.F.否则为.T.(6)算术表达式:字符表达式的优先级相同 高于关系表达式高于逻辑表达式16.常用函数:绝对值和符号函数,平方根函数,圆周率函数,求整函数第三章 数据库操作数据库和表1.数据库:由若干张二维表组成的一个文件 扩展名.dbc2.建立: 文件新建数据库新建(输入) Creat database 文件名打开:open database 文件名 关闭:close database 关闭当前打开的数据库Close all关闭当前VF窗口内打开的所有文件 删除:delete database文件名指定删除某一个处于关闭状态的数据库 修改:modify database文件名表文件:分为自由表和数据库表 区别:数据库表属于一个数据库,监理师首先打开数据库;自由表不属于任何护具库,在建立时必须关闭当前数据库 表文件扩展名.dbf1.建立:create 表文件名 2.关闭:use关闭当前打开的表 close all3.打开:use 表文件名 打开表文件打开方式exclusive在表名后是以独占方式打开 可修改Noupdate只读 Shared共享4.转换:数据库表自由表 自由表数据库表方法一:使用数据库设计器 方法二:使用命令自由表数据库表1)打开数据库 add table表文件名2)打开要添加的数据库的设计器用鼠标右键单击数据库设计器空白处,在弹出的快捷菜单中选择添加表在打开的窗口内选定表、单击确定数据库表自由表1) 打开数据库 remove table 表文件名2)打开要移去的数据库的设计器 在弹出的另外一个窗口选择“是”用鼠标右键单击要转移的表,在弹出的快捷菜单中选择“删除”,在弹出的窗口内选择“移去”,若选择的是“删除”,此表从磁盘中删掉5.删除(1)自由表: Delete file(文件)表名.dbf(2)数据库表 Remove table 表名delete6.修改 ,Modify structure修改当前打开的表设计器表设计器:字段选项卡字段名:汉字、数字、字母、下划线组成,其中不允许以数字或下划线开头数据库表字段名最长可以是128个字符,自由表最长是10个字符类型:只能出现在字段中的类型 整型(I), 备注型(M),通用型(G),浮动型(F)统统行存放的是图形数据M,G字段值在保存的时候并没有保存在.dbf文件内,而是保存在与表同名的扩展名为.fpt的备注文件内宽度:系统自定,I,M,G4,D,T,Y8,L1,C最大长度254个字符,N最大长度20个字符Null:字段值允许为空,如果一个字段允许为空,null下面的后面的按钮上必须有一个对号数据库表设计器中具有的显示组框,组成包括格式,输入掩码,标题字段有效性组框:规则,信息,默认值(1)规则:限制字段中输入的数据有效范围-规则表达式 规则表达式:逻辑表达式(2)信息:提示错误的字符串字符型(3)默认值:预先设定的数据默认值的类型与字段类型相同规则的设置步骤:(1)打开表设计器,首先选定字段(2)按照考题的要求将表达式输入在规则框内(规则表达式最外层不必加字符定界符)默认值为null时设置步骤(1)打开表设计器,选定字段(2)在字段最右侧null按钮上点击一下使其上出现对号(3)在默认框内输入.null.表记录操作:首先打开表 追加 删除 替换 显示 追加:append/inert向表尾追加Append:向表尾追加一条或多条记录,记录的内容可以立即输入Append blank向表尾追加一条空记录,记录内容需要浏览表时添加Append from 表文件名 从一张表向当前打开的表追加记录向当前表中前后追加记录Insert:向当前记录追加一条或多条记录,记录内容可以立即输入Insert before:向当前记录前添加一条记录Insert blank :向当前记录后追加一条空记录指针定位(1)直接定位:go/goto +记录号(2)相对定位:skip 数值(正数指针下移 负数指针上移)删除记录的操作分两步:第一步 逻辑删除(置删除标记)delete -可恢复性删除取消删除标记的命令:recallDelete 只删除当前记录 Delete for 条件表达式记录前的删除标记位占一个字节,所以记录在内存中所占的空间计算方法字段的总长度+1第二步:物理删除 不可恢复性删除Pack 只能物理删除有删除标记的记录物理删除全表记录(不可恢复性删除) zap1.替换(更新)字段值(1)replace 字段名1,with 表达式1,字段名2 with 表达式2只能更新当前记录中的字段(2)replace all 字段名1 with 表达式(3)replace(all-可省)字段名1 with 表达式1,for 条件表达式for 条件表达式更新表中满足条件的记录的表达式2.显示记录(1) 浏览记录:browse(2) 编辑记录:edit(3) 显示 list/display区别:list 显示当前表中的所有记录 ,Display 显示当前表中的当前记录,范围:all全表范围Next数值=从当前记录开始(含)以下的“数值”条记录 例如next1当前记录Next2(当前记录为第2条)2,3 List next1=displayRest从当前记录开始(含)以下的所有记录 Display all =list3.查询定位:locatefor 条件表达式只能将当前表中记录的指针定位在第一个满足条件的记录,如果无满足条件的记录了指针指向标文件尾,表文件尾指向的是表中最后一条记录下一条函数:eof()测试表文件尾函数 如果函数返回值为.T.,当前指针指向文件表Continue将指针向下下移到其他满足条件的记录上 Locate for 条件Eof()到文件尾 do while not eof()4.排序(1)物理排序将当前打开的表中的记录按照一个或多个字段顺序进行排列,排列结果保存在一个新的表文件内。Sort to 新的表名 on 字段名1/A(不要空格) 升序, 字段名2 /D 降序5.复制:只能复制当前表(1)复制表结构:copy structure to 新表名 (2)复制表 copy to 新表名【for条件】6.索引:提高查询效率,并不是越多越少(1)索引文件类型A.单索引文件:只存在一个索引字段,只能是升序 扩展名.IDX B.复合索引文件 扩展名.CDXA) 结构复合索引文件:建立可以使用表设计器命令文件名是系统规定的,与表明相同随着表的打开而打开,随表的关闭而关闭B) 非结构复合索引文件:简历及使用只有命令形式,文件名是用户定义的(2)索引类型主索引 候选索引 唯一索引 普通索引【类似于主关键字】主索引:A.不允许有重复值或空值B.一张表中只有一个索引C.只有数据表中存在D.不能使用 index命令进行 E.只存在于结构复合索引文件候选索引:A.不允许有重复值或空值,可以有若干个候选索引B.数据库表和自由表都可以存在 C.使用index命令可以建立存在于复合索引文件唯一索引: A.允许表中的字段有重复值B.数据库表和自由表都可以存在,使用命令可以建立C.在索引文件内唯一索引项中的值不重复 D.可以存在于但索引文件中或复合索引文件中普通索引:(3)索引的建立表设计器如果给一个字段建立索引没有告诉索引名或表达式的时候字段就是索引名或表达式命令建立索引:(1)建立结构复合索引文件Index on 索引表达式 tag 索引名类型 ascending 升序 Clescening降序普通索引(默认类型) Unique唯一索引 Candidate候选索引(2)建立非结构复合索引文件Index on 索引表达式tag 索引名 of 文件名(类型) A/D(3)建立单索引文件Index on 索引表达式to 文件名 无候选索引 candidate 只能是升序索引文件使用1.打开索引文件: set index to 文件名 首先打开表2.关闭索引文件:set index to3.删除索引文件:(1)单索引文件 delete file 文件名.idx(2)复合索引文件 delete tagDelete tag 索引名 指定删除某一个索引字段索引应用1.建立永久永久关联(永久联系):功能实现表中数据同时操作建立永久关联的方法步骤必备条件:(1)两个表必须都有索引,而且一张表中必须有主索引(2)两个表同属于一个数据库,且打开数据库设计器方法:用鼠标选择索引,按住鼠标左键拖动鼠标到另外一张表中的相关索引为止,放开鼠标,出现的连续(永久联系)2.数据完整性实体完整性 域完整性 参照完整性 实体完整性:用于保存表中唯一的特征主关键字 候选关键字 主索引 候选索引域完整性:用来描述表结构特征 包括:字段名,类型,有效性参照完整性:多表之间数据描述包括更新规则 删除规则 插入规则更新,删除规则: 级联限制 忽略 插入规则:限制忽略限制参照完整性的步骤必备条件:具备永久关联步骤:(1)选择永久关联:用鼠标右键单击永久关联,在弹出的快捷菜单中选择“编辑参照完整性”(2)在弹出的“参照完整性生成器”内按照考题的要求进行修改(3)修改结束后必须单击“确定”,在确定之后出现的对话框一律选择是注意:如果执行第一步后出现“清理”窗口,用鼠标单击“确定”选择菜单条中的数据库菜单项下的“清理数据库”命令项即可。然后更新执行第一步之后的内容。3.索引查询:(1)设置当前索引(主控索引) set order toA.单索引文件 set order to 文件名 B.复合索引文件 set order to tag(2)索引查询:Seek 数据第一个满足条件的记录4.临时关系(表关联)(1)条件多表操作(2)工作区:在VF窗口内共有32767个工作区,每一个工作区内只能打开一个表,在VF窗口只有一个当前工作区(3)表示工作区的方法A数字代表工作区号132767 最小工作号为1B.字母代表工作区号 只能用AJ前是个字符代表110,10个工作区(4)选择工作区的方法 A.select 工作区号/表别名例如:1号工作区打开职工表 Select 1 回车 Use 职工 回车B.use 表名 in 工作区号 use 职工 in 1(5)临时关联:实现有关联的表之间的指针联动,主表指针移动会影响子表移动,否则不成立一对一:必备条件 多表操作必须要有索引,目前当前生效索引建立一对一临时关联的临时关联的命令:set relation toSet relation to 当前表的当前索引 into 另一张表 工作区号取消临时关联:A.set relation to B.select 00:未使用的工作区中工作区号最小的工作区5.项目文件(1)控制中心,控制数据:数据库,自由表,查询 控制文档:包括表单,报表,标签类,代码:包括程序文件(2)其他:包括菜单,文本文件 建立命令:create project 文件名扩展名.PJX(3)按钮:新建,添加,移去,连编第四章 关系数据库标准语言SQL1.SQL:structure query language结构化查询语言2.SQL语言的核心功能:数据查询3.sql语言功能:数据查询、数据定义、数据操作、数据控制4.VF中sql语句:除了数据控制功能可以实现数据查询,select-查询结果(只能出现字段名或字段名的变形)(字段名1,字段名2) from 表名查询结果所在的表 基本语句引导条件词:where 条件表达式不可使用,限制查询结果需要满足的条件 order by 字段名 排序(条件与条件之间不可以使用逗号分隔)命令词:1.betweenand 介于和之间 sql语句中%与_取代*/?2.like匹配:字段名like字符串(没有通配符的话,like和=可以互换)通配符:%-代表任意字符_-0个或任意单个字符 例如: where 西鄙人 like “%电子%”3.通配符:*代表表中所有的字段名 Order by 字段名(默认排列序为)升序 asc(升序,默认) Desc(降序)字段名2-查询结果排列输出:order by后有多个排序字段,结果从左到右进行排序,如果出现order by 2 desc 数字2代表select后的第二个字段进行排列 此句表示按照select 后第二个字段的降序排列输出结果4.top数值 显示查询结果的前几条 top数值percent 显示查询结果的百分之多少注意:top语句必须与order by 连用5.sql语句的函数:求平均值函数:avg(字段名),求最大值:max(字段名)求最小值:min(字段名),求和值:sum(字段名)计数:count(*)给查询的结果起别名:as 别名Group by字段名 查询结果分组表示Select avg(年龄) as 平均年龄from student group by 班级号Having条件表达式-限制分组字段Having必须与group by 连用,不能单独使用Having与where可以连用查询去向,保存查询结果保存表:into table/(dbf表扩展名)保存临时表中:into cursor 表名保存数组中:into array 数组名保存文本文件:to file 文件名屏幕:to screen打印:to printer注意:sql语句中的函数不可作为where的条件第二层的函数可以在where子句内出现命令短语:All-写在子查询前,表示子查询结果的所有值例如:下述短语是等价Select * from student where 年龄(select max(年龄)from studentwhere 班级号=“01”)=select * from student where年龄all(select 年龄from student where 班级号=“01”)Any写在子查询前表示子查询结果中的其中一个值例如:select * from tudent where 年龄any(select 年龄from student where 班级号=“01”)From 表1 inner join 表2 表示表1和表2要内联接on 联接条件on后只能写联接条件,而且只能有一个联接条件除联接条件外的其他条件写在where后Where 其他条件内联接inner join:查询结果中只含有满足联接条件的记录左联接left join:查询结果中联接词左侧的表(左表)中无论是否满足联接条件都会被查询连接用右侧的表(右表)中只有满足条件的被查询右联接:right join:查询结果中,左侧只有满足连接条件的被查询,右表中无论是否满足联接条件都会被查询全联接full join:两个表中无论是否满足联接条件都会被查询联接查询的特点:(1) 如果使用内联接查询,内联接查询有两种书写方式A. from 表1 inner join 表2 on 联接条件 where 其他条件B. from 表1,表2 表一与表二内联接 where 联接条件 and 其他条件注意:如果from 后表之间通过连接词联接,联接条件一定要写在on 后面,如果from后表之间通过逻辑连接,连接条件一定要写在on后面,如果from后表之间通过逻辑联接,连接条件一定要写在where后(2) 在查询语句中要使用的字段是重复的,必须要指定字段所属于的表(3) 超级链接from 后的中间的表一定要是中介表,from后如果表之间是通过连接词联系的,on后面的连接条件的书写顺序与from后表的顺序正好相反例如 from s inner join c inner join tOn t.2=C.2ON C.1=S.1多表嵌套查询In属于(not in不属于)特点:(1) 如果子查询结果中有多个值,必须使用in/not in 进行嵌套 如果子查询中只有一个;使用in可以,=也可以(2) In进行嵌套,in前面一定是一个字段名 in后面的字查询的结果也一定是一个字段值,且是相同字段名(3) Exists存在(not exists不存在) exists的前面没有字段名,exists后面的子查询的结果一定是*将两个查询的结果并在一起称为集合并运算,特点是查询结果和表是相同的 集合并运算命令词是union查询结果扩展名 .qpr 查询文件必运行建立查询文件 create query文件名 建立查询设计器修改查询文件 modify query 文件名运行查询文件 do 文件名. QPR使用运行命令运行查询文件文件名后必须加扩展名建立方法:(1) 查询向导使用查询向导建立one.qpr文件,查询student表中性别为“男”的学生记录,将查询结果按照年龄的升序排列显示Select * from student where 性别=”男” group by 年龄(2) 查询设计器A. 选项卡与sql语句命令词的对应关系字段选项卡中的选定字段Sql中常用词Select, inner join,where,order by,group by,having,distinct视图文件:一张虚拟的表,必须依赖于数据库而存在,建立或使用首先打开数据库,更新视图文件其实更新的是与其相关的源表数据建立视图方法1. 使用sql语句建立视图 create view 视图名 as select 查询语句2. 使用查询设计器建立命令 create view 回车删除视图命令:drop view 视图名注意:建立完成一个视图文件,视图文件的使用相当于一张表注意:视图设计器比查询设计器多了一个“更新条件”选项卡视图文件与查询文件的区别和联系(1) 最大区别:视图可以更以更新源表中数据,查询不可以(2) 视图必须依赖于数据库存在,查询是一个独立文件(3) 视图只能以表的形式存在,查询有多种输出去向(4) 视图的相关表可以是本地是本地的也可以远程,查询的相关表必须是本地表联系可以查询视图中的数据,当视图存在时 distinct 去掉查询中的重复值查询文件 扩展名.qpr建立:create query 文件名 建立设计器修改:modify运行:do 文件名.QPR1. 数据定义使用sql命令语句对表结构进行操作(1) 建立表 create table 表名1 字段A 数型(宽度,小数位数) 限制条件在字段后 primary key/unique 主索引 唯一,候选索引Null /not null 数据/表Check 规则表达式 error 出错时显示信息Default 显示数值 字段号 类型注意:(1) 在字段名和类型之间一定要加空格,符号为英文(2) 掌握命令语句中单词含义(2)修改表Alter table 表名 add columu 字段名 类型宽度 小数位数-添加字段Alter table 表名Drop column 字段名-删除字段Alter table 表名 新名Rename column 原名to -重命名Alter table 表名 alter column 字段名 新类型/(修改)Set check 新规则/表达式/set default 新默认值/drop check第五章 程序设计基础程序文件:用于存放一组命令语句的文件,扩展名.PRG建立程序文件(命令文件)的命令Modify command 文件名(1) 如果磁盘内含有此文件修改(2) 盘内不含有此文件建立(1) 以note * &符号开头的语句成为注释语句,起到解释说明的作用,可以增加程序的可读性,但在程序的运行时不参加运行(2) Set talk off 命令关语句 程序开头Set talk on 命令开语句 程序结尾1. 程序结构:顺序结构,选择结构,循环结构2. 接收键盘命令输入的数据命令例如:编写程序one.prg 计算任意三角形的面积Input 字符串 to 一个内存变量特点:可以使用input 命令接收 N,C,D,T,L,Y等任意数据类型(数值,字符,日期,时间日期,逻辑,货币)Accept 字符串 to 一个内存变量名特点:只能接受键盘输入的字符型数据输入的字符串可以省略定界符Wait暂停程序执行,显示提示信息“按任意键继续” 直到按任意键为止程序继续运行字符串window timeout 数值3. 选择结构(1) 二分支结构选择If 条件表达式判断语句组1-条件成立时Else语句组2条件不成立时Endif语句m特点:(1) if 和endif 必须成对出现,else及其后语句可以省略不写(2) if 语句的执行流程,首先判断条件,条件成立执行if 后的语句接下来执行endif 以下的语句,条件不成立时执行else后的语句,接下来执行endif以下的语句(2)多分枝选择结构Do caeeCase 条件表达式1语句组1-条件成立时擦色条件表达式2语句组2-条件2成立时Case 条件表达式n-1Otherwise语句组nEndcase语句m特点:(1) do caseendcase 应成对出现 otherwise 可以省略(2) 执行流程:首先判断 第一个case 条件 条件成立执行语句组1 接下来执行endcase后的语句 条件粗成立,判断第二个case 条件,以此类推直到endcase为止(3) 当有多个case后条件表达式成立时,那么执行第一个满足条件的case后的语句循环结构:重复结构,首先判断循环条件,条件成立,执行循环语句(循环体)一遍,返回条件重新判断循环条件,条件仍然不成立,继续执行循环体语句,条件不成立接下来执行循环结束后的语句(1) do while循环形式:do while 条件表达式循环条件控制条件循环体(循环语句)Enddo语句m特点:(1) do while必须与enddo成对出现 适用于任何一个循环题(2) 执行流程:首先判断do while后的条件,条件不成立执行循环体一遍,然后返回do while 重新判断条件仍然成立继续执行循环体,以此类推,直到条件不成立跳转到enddo 以后运行For循环形式:for循环变量=初值 to 终值 step 步长值循环体Endfor/next特点:(1) forendfor /for-next必须成对出现(2) 循环变量在for 循环中控制循环的for适用于循环次数已知(3) 执行流程:首先初值赋给循环变量判断循环变量是否超过终值

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论