重庆计算机VF二级试题真题

合集下载

重庆计算机VF二级试题真题

重庆计算机VF二级试题真题

重庆计算机VF二级试题真题<>必选项;[]可选项;…前面内容重复;I任选项1.*将任意一个三位数反向输出x=123x1=int(x/100)x2=int(mod(x,100)/10)x3=mod(x,10)x1+x2*10+x3*100 ~~~~~3212.x=123y=str(x,3) &&将数值转化为字符串right(y,1)+subs(y,2,1)+left(y,1) ~~~~~~3213.xb="女"iif(xb='男',1,iif(xb='女',2,3)) &&条件函数 ~~~~~~24.note () **或^ * / %(求余数) + -从高到低;==(精确等于),<>、#、!(不等于);Not and nor (依次降级)5.*查找姓“张”的学生at("张",姓名)=1;substr(姓名,1,2)=”张”;姓名=”张”&&非精确比较;left(姓名,2)=”张”;6.*20岁以下学生Date()-出生日期<=20*365;Year(date())-year(出生日期)<=20;7.*少数民族学生少数民族否;少数民族否=.T.;Iif(少数民族否,”少数民族”,”汉族”)=”少数民族”*use 学生&&这是vf语言首先需要做的,以下操作省略此条8~39 8.*显示第五条记录go 5display;list record 5;list for recn()=5;display for recn()=59.*显示记录号为偶数的记录list for mod(recno(),2)=0 &&recno()是记录号函数;list for recno()%2=0;list for int(recno()/2)=recno()/2;list for int(recno()/2)<>recno()/2 &&显示记录号为奇数的记录10.*显示汉族女学生的记录list for 少数民族否=.F. and 性别="女"list for !少数民族否 and 性别="女"11.*显示女学生的姓名、性别、年龄及简历list 姓名,性别,year(date())-year(出生日期),简历 for;性别="女"Use &&关闭表12.*表结构显示list/display structure;表结构修改modify structure;表记录显示list=display all;表记录修改edit/change/browse/replace··with··for/while··13.*将汉族学生数学成绩减少10分,并将外语成绩增加20分replace 数学 with 数学-10,外语 with 外语+20 for 少数民族否14.*将6号记录的出生日期修改为1983年9月7日go 6replace 出生日期 with {^1983/09/07};replace 出生日期 with {^1981/09/07} for recno()=615.*将汉族学生的数学成绩减少20分,将少数民族学生的外语成绩增加20分Replace 数学 with 数学-20 for 少数民族否=.F.Replace 外语 with 外语+20 for 少数民族否 &&必须用两条命令,因条件不同16.绝对定位 go top/bottom;相对定位skip17.* 插入记录Insert/insert blank18.*添加记录append &&用全屏方式进行添加记录append blank &&添加空白记录,在尾部19.*删除记录delete for recno()=3 or recno()=5 &&添加删除标志browset delete on &&做了删除标志的不参与运算recall &&取消删除标志pack &&物理删除记录zap=delete all 和 pack20.*复制表结构copy structure to 学生1 fields 学号,姓名,性别21.*复制表copy to new1 for 数学>=60use new1 &&显示表的记录必须先打开新表listcopy to new2 sdftype new2.txt &&查看新文本文件copy to new3 delimitedtype new3.txt &&查看新文本文件,若为字符型,带有""22.*从其他文件向表添加数据use 学生表copy stru to 学生2use 学生2list &&显示记录为空list struappend from 学生表 &&将学生表记录添加到学生2中list &&显示学生2表记录23.数据表文件的删除delete file new1.dbf &&扩展名不能省略erase 表1.dbf &&删除的文件必须关闭24.*表的排序* A(ascding 升序);D(descding 降序);C(加上忽略大小写),改变物理顺序USE 学生表sort on 数学/DC to sxuse sxlist next 525.*索引文件*种类:单索引文件:.idx;复合索引:.cdx;改变逻辑顺序*用表单设计器建立的索引号都是结构复合索引*To 单索引文件;tag 复合索引文件;compact 压缩的单索引文件*复合索引系统默认升序,单索引只能升序索引,默认普通索引*按年龄降序,年龄相同数学成绩升序(复合索引)index on str(year(date())-year(出生日期),2)+str(100-数学) tag xx desc *按数学降序(单索引)index on -数学 to su*按学号升序,不允许有编号相同的记录index on 学号 tag xh unique*按出生日期升序(非结构复合索引)index on 出生日期 tag cs of ss26.*打开索引文件*打开表后再打开索引文件set index to suset index to &&关闭当前单索引文件*表和索引文件同时打开Use 学生 index su27.*确定主控索引*go top/bottom指向逻辑顺序use 学生set index to su,nameset order to 2 &&设置name 为主索引list next 3set order to 1 &&设置su为主索引,或set order to sulist next 3set order to &&取消主索引28.*关闭索引文件,不能关闭结构索引;use 命令关闭当前表和相关索引close indexset index to29.*删除索引Delete file su &&删除单索引文件Delete tag all;delete tag cs &&删除复合索引文件索引标志30.*更新索引Reindex[compact]31.*顺序查询定位locate for !少数民族否 and 性别='男'disp 姓名,数学,year(date())-year(出生日期)continue &&继续查找下一个recno(),姓名,数学,year(date())-year(出生日期)found()32.*索引查询定位 &&继续查找下一个skipindex on 出生日期 tag sy4d={^1983/09/07}seek d &&内存变量,不加&dispindex on 姓名 tag xmfind 王大为 &&查找字符型,不需要加定界符dispseek '张大力' &&查找任意数据,需要加定界符disp33.*统计记录个数count for 性别='女' to x1count for 性别='男' to x2x1,x2/doc/0b1008458.html,e 学生aver year(date())-year(出生日期) to yy &&求表达式平均值sum 数学,外语 to a,ba,b &&求数学,外语总分calculate avg(数学),min(数学),max(数学) to x,y,zx,y,z &&avg,数值表达式平均值;max,数值,日期或字符35.*分类汇总*按性别、数学和外语成绩进行汇总index on 性别 tag xbhztotal on 性别 to hzuse hz &&先建立索引再分类汇总list在一个工作区只能打开一个表文件,且一个表文件也仅仅在一个工作区打开Select 0选择当前没有被使用的最小工作区为当前工作区36.*在1号工作区打开学生表并取别名use 学生 alias zg in 1;use 学生 alias zg in A &&1~10号别名A~J37.*表的逻辑关联Set relation to…into<工作区号>;选择additive建立一对多关系Set relation to 取消所有关联,取消后仍是两个表38.*表的物理联接Join with …to…for/fields…39.按性别对数学成绩和外语成绩汇总Index on 性别 tag cTotal on 性别 fields 数学,外语 to xbcj分别统计男女生平均年龄Average(date()-出生日期)/365 for 性别=’男’Average(date()-出生日期)/365 for 性别=’女’显示性别为女的学生数学成绩的总分,平均分,最高分和最低分Cal sum(数学),avg(数学),max(数学),min(数学) for 性别=’女’to x1,x2,x3,x4x1,x2,x3,x440.建立数据库文件:creat database 学生打开数据库:use 学生.dbc &&.dbc不能省略;open database…关闭数据库:close all/database修改数据库:modify database …删除数据库:delete database …41.建立数据库索引父表建立主索引,子表建立普通索引;清理数据库;编辑参照完整性42.数据库表设计器字段有效性规则:性别=’男’ or 性别=‘女’信息:’性别只能为男或者为女’默认值:’女’43.SQL命令动词数据查询:select数据操纵:insert update delete数据定义:creat drop alter44.*用SQL命令建立学生管理数据库,包括学生表、选课表、课程表*用creat建立数据库creat database 学生管理*建立学生表creat table 学生表(学号 c(5) primary key,姓名 c(8),性别 c(2),年龄 i, 数学 n(5,1) check (数学>0) error "成绩应该大于0!" defa 0,外语n(5,1)) *建立课程表creat table 课程表(课程号c(5) primary key,课程名c(10),学分n(1)) &&primary key 建立主索引*建立选课表creat table 选课(学号c(5),课程号c(5),成绩i check(成绩>=0 and 成绩<=100) error "成绩值范围0~100!" default 60,foreign key 学号tag 学号reference 学生,foreign key 课程号tag 课程号reference 课程号)&&reference 与 foreign key 成对出现,建立普通索引Creat table=creat dbf45.*删除表Open database 学生管理Drop table 课程46.*修改表结构*为课程表增加一个整数型的学时字段alter table 课程 add 学时 i check(学时>=16) error "学时应该大于16!" *讲课程表的课程字段名由10改为20alter table 课程 alter 课程名 C(20)*为学生表外语字段添加有效性规则alter table 学生 alter 外语 set check(外语>=0 and 外语 <=100) error "外语成绩应在0~100之间!"*删除学时字段的有效性规则alter table 课程 alter 学时 drop check*删除课程表中学时字段alter table 课程 drop column 学时*将学生表中数学字段改为数学成绩字段alter table 学生 rename column 数学 to 数学成绩*在学生表中定义学号和姓名为候选索引alter table 学生表 add unique 学号+姓名 tag ran*删除学生表候选索引ranalter table 学生表 drop unique tag ran47.*数据查询Select …from…where…order by/group by…into/to…Top与order by 连用,默认升序Into array:数组;into cursor:临时表;into dbf/table:数据表(先运行再加into)48.*简单查询*列出所有学生名单select * from 学生 &&*表示输出所有字段,以浏览方式显示*列出所有学生去掉重名select distinct 姓名 as 学生名单 from 学生select 姓名 from 学生 distinct*查询数学成绩在80~95分之间的学生select * from 学生 where 数学>=80 and 数学<=95*统计男学生人数select count(*) as 男生人数from 学生where 性别='男' &&count(*)求满足条件的数值*将所有学生数学成绩四舍五入,只显示学号,姓名,数学cjselect 学号,姓名,round(数学成绩,0) as 数学cj from 学生*求所有学生的数学平均成绩、最高分和最低分select avg(数学成绩) as 数学平均分,max(数学成绩) as 数学最高分,min(数学成绩) as 数学最低分from 学生49.*带有特殊运算符的条件查询Where 子句中的特殊运算符All:满足子查询中所有值的记录Any:满足子查询中任意一个值的记录Between:字段值在指定范围内Exists:测试子查询中查询结果是否为空,若为空,则返回.f.In:字段值是结果集合或子查询中的内容Like :对字符型数据进行字符串比较,通配符“-”代表一个字符;“%”代表0或多个字符Some:满足集合中某个值*查询数学成绩在80到95分之间的学生select 数学成绩 from 学生 where 数学成绩 between 80 and 95 *列出学号第二个字符为7的所有学生,注意学号字段类型为字符型select * from 学生 where 学号 like "-7%"select * from 学生 where left(学号,2)="7"*列出所有姓赵的学生名单select 学号,姓名 from 学生 where 姓名 like"赵%"select 学号,姓名 from 学生 where 姓名=’赵’50.*简单连接查询*等值连接与非等值连接*查询所有学生的成绩单,要求给出学号、姓名、课程号、课程名和成绩select a.学号,a.姓名,b.课程号,c.课程名,b.成绩from 学生表a,选课表 b,课程 c where a.学号=b.学号and b.课程号=c.课程号*查询男生的选课情况,要求列出学号,姓名,课程号,课程名和学分数select a.学号,a.姓名,b.课程号,c.课程名,c.学分 from 学生表 a,选课表 b,课程 c where a.学号=b.学号 and b.课程号=c.课程号 and 性别="男"*自连接查询*列出选修01102课的学生中,成绩大于学号为070410的学生该门课成绩的那些学号及成绩select a.学号,a.成绩from 选课表a,选课表b where b.课程号="01102" andb.学号="070410" and a.课程号=b.课程号 and a.成绩>b.成绩51.*嵌套查询*返回单值的子查询*列出选修“数据库原理”的所有学生的学号select 学号 from 选课表 where 课程号=(select 课程号 from 课程 where 课程名="数据库原理")*返回一组值的子查询*列出选修01101课的学生中期末成绩比选修01102课的最低成绩还要高的学生的学号和成绩select 学号,成绩from 选课表where 课程号="01101" and 成绩>any(select 成绩 from 选课表 where 课程号="01102") &&any运算符的用法*列出选修01101课的学生的成绩比选修01102课的最高还要高的学生的学号和成绩select 学号,成绩from 选课表where 课程号="01101" and 成绩>all(select 成绩 from 选课表 where 课程号="01102") &&all运算符的用法*列出选修“数据库原理”或“软件工程”课程的所有学生的学号select 学号 from 选课表 where 课程号 in(select 课程号 from 课程 where 课程名="数据库原理" or 课程名="软件工程") &&any运算符的用法in等价于=any52.*超连接查询Select…from…inner/left/right/full join…*内部链接*列出男生的学号、课程号及成绩select a.学号,b.课程号,b.成绩 from 学生表 a,选课表 b wherea.学号=b.学号 and a.性别='男'select a.学号,b.课程号,b.成绩 from 学生表 a inner join 选课表 b ona.学号=b.学号 where 性别="男"53.*排序*按性别顺序列出学生的学号、姓名、性别、课程名及成绩,性别相同的再按课程名排序,最后按成绩由高到低排序select a.学号,a.姓名,a.性别,c.课程名,b.成绩 from 学生表 a,课程 c,选课表 b where a.学号=b.学号 and b.课程号=c.课程号ord er by a.性别,c.课程名,b.成绩 desc*输出学生表中数学成绩最高的前5名学生的信息select * top 5 from 学生表 order by 数学 desc54.*查询结果输出Into array 数组;cursor 临时表;dbf/table 表To file 文本文件*输出学生表数学成绩最高的前五名保存到testselect a.学号,b.课程号,b.成绩 from 学生表 a,选课表 b;where a.学号=b.学号 and a.性别='男' to file test*输出合并*列出选修01101或01102的所有学生和学号select 学号 from 选课表 where 课程号="01101" union select 学号 from 选课表 where 课程号="01102"*分组统计查询与筛选*分别统计男女人数select 性别,count(性别) from 学生 group by 性别*分别统计男女学生中数学成绩大于85分的学生人数select 性别,count(性别) from 学生 group by 性别where 数学成绩>85&&where:分组前所有记录满足的条件错误:select 性别,count(性别) from 学生 group by 性别 having 数学>85 &&having:查询后的结果是否满足条件55.*插入记录*向学生表中添加记录insert into 学生表 values("231002","杨阳","男",87.0,88.0)insert into 学生表(学号,姓名) values ("231109","李兵")dimension a(5)a(1)="221013"a(2)="张阳"a(3)="女"a(4)=97.0a(5)=88.0insert into 学生表 from array a56.*删除记录*将学生表中所有男生的记录逻辑删Delete from 学生 where 性别=’男’*删除学生管理里学生表中所有少数民族的学生Delete from 学生管理!学生 where 少数民族否Delete from 无条件删除所有记录57.*更新记录*将学生表中姓名为杨阳的学生的外语成绩改为93分update 学生 set 外语=93 where 姓名="杨阳"*将所有男生的各科成绩加20分update 选课表set 成绩=成绩+20 where 学号in (select 学号from 学生表where 性别="男")update一次只能在单一表中更新记录58.*查询哪些仓库有工资多于1210元的职工Select distinet 仓库号 from 职工 where 工资>1210*给出在仓库WH1或WH2工作,并且工资少于1250元的职工号select 职工号 from 职工 where 工资<1250 and(仓库号="WH1" or 仓库号="WH2")*哪些城市至少有一个仓库的职工工资为1250元select dist a.城市 from 仓库 a,职工 b where 工资=1250 anda.仓库号=b.仓库号*找出和职工E4有相同工资的所有员工select * from 职工 where 工资=(select 工资 from 职工 where 职工号="E4") and 职工号!="E4"*找出供应商所在地数目select count(dist 地址) from 供应商*求所有职工的工资都多于1210元的仓库的平均面积select avg(面积) as 平均面积。

重庆计算机二级vf试题

重庆计算机二级vf试题

Visual FoxPro数据库程序设计(考试时间90分钟,满分100分)一、选择题(每小题2分,共70分)下列各题A),B),C),D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)程序流程图中指有箭头的线段表示的是[C]A)图元关系 B)数据流 C)控制流 D)调用关系(2)结构化程序设计的基本原则不包括[A]A)多态性 B)自顶向下 C)模块化 D)逐步求精(3)软件设计中模块划分应遵循的准则是[B]A)低内聚低耦合 B)高内聚低耦合C)低内聚高耦合 D)高内聚高耦合(4)在软件开发中,需求分析阶段产生的主要文档是[B]A)可行性分析报告 B)软件需求规格说明书C)概要设计说明书 D)集成测试计划(5)算法的有穷性是指[A]A)算法程序的运行时间是有限的 B)算法程序所处理的数据量是有限的C)算法程序的长度是有限的 D)算法只能被有限的用户使用(6)对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是[D]A)快速排序 B)冒泡排序C)直接插入排序 D)堆排序(7)下列关于栈的叙述正确的是[B]A)栈按“先进先出”组织数据 B)栈按“先进后出”组织数据C)只能在栈底插入数据 D)不能删除数据(8)在数据库设计中,将E-R图转换成关系数据模型的过程属于[C]A)需求分析阶段 B)概念设计阶段C)逻辑设计阶段 D)物理设计阶段(9)有三个关系R,S和T如下:B C Dh O k1R S TB C Da o k1b 1 n1B C Da o k1a 2 x1由关系R和S通过运算得到关系T,则应使用的运算为[D]A) 并 B) 自然连接 C)笛卡尔积 D)交(10)设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课程号,课名),选课SC(学号,课号,成绩),列表SC的关键字(键或码)为[C]A)课号,成绩 B)学号,成绩C)学号,课号 D)学号,姓名,成绩(11)在Visual Foxpro中,扩张名为mnx的文件是[D]A) 备注文件 B)项目文件 C) 表单文件 D)菜单文件(12)有如下赋值语句:a=”计算机”,b=”微型”,结果为”微型机”的表达式是[D]A)b+LEFT(a,3) B)b+RIGHT(a,1)C)b+LEFT(a,5,2) D)b+RIGHT(a,2)(13)在Visual Foxpro中,有如下内存变量赋值语句:[B]X={^2001-07-28 10:15:20PM}Y=.F.M=5123.45N=$123.45Z=”123.24”执行上述赋值语句之后,内存变量X,Y,M,N和Z的数据类型分别是A) D、L、Y、N、C B)T、L、Y、N、CC) T、L、M、N、C D)T、L、Y、N、S(14)下列程序的运行结果是[D]SET EXACT ONs="ni"+space(2)IF s=="ni"IF s="ni"?"one"ELSE?"two"ENDIFELSEIF s="ni"?"three"ELSEENDIFENDIFRETURNA) one B) two C)three D)four(15)如果内存变量和字段变量均有变量名“姓名”,那么引用引用内存变量的正确方法是[D]A)M.姓名 B)M->姓名 C)姓名 D)A)和B)都可以(16)要为当前表所有性别为“女”的职工增加100元工资,应使用命令[B]A)REPLACE ALL 工资 WITH 工资+100B)REPLACE 工资 WITH 工资+100 FOR 性别=“女”C)CHANGE ALL 工资 WITH 工资+100D)CHANGE ALL 工资 WITH 工资+100 FOR 性别=“女”(17)MODIFY STRUCTURE命令的功能是[B]A)修改记录值 B)修改表结构C)修改数据库结构 D)修改数据库或表结构(18)可以运行查询文件的命令是[A]A)DO B)BROWSEC)DO QUERY D)CREATE QUERY(19)SQL语句中删除视图的命令是[B]A)DROP TABLE B)DROP VIEWC)ERASE TABLE D)ERASE VIEW(20)设有订单表order(其中包含字段:订单号,客户号,职员号,签订日期,金额),查询2007年所签订单的信息,并按金额降序排序,正确的SQL命令是[A]A) SELECT*FROM order WHERE YEAR(签订日期)=2007 ORDER BY 金额 DESCB) SELECT*FROM order WHILE YEAR(签订日期)=2007 ORDER BY 金额 ASCC) SELECT*FROM order WHERE YEAR(签订日期)=2007 ORDER BY 金额 ASCD) SELECT*FROM order WHILE YEAR(签订日期)=2007 ORDER BY 金额 DESC(21)设有订单表order(其中包含字段:订单号,客户号,职员号,签订日期,金额),删除2002年1月1日以前签订的订单记录,正确的SQL命令是[C]A) DELETE TABLE order WHERE 签订日期<{^2002-1-1}B) DELETE TABLE order WHILE 签订日期>{^2002-1-1}C) DELETE FROM order WHERE 签订日期<{^2002-1-1}D) DELETE FROM order WHILE 签订日期>{^2002-1-1}(22)下面属于表单方法名(非事件名)的是 [B]A) lnit B)Release C)Destroy D)Caption(23)下列表单的哪个属性设置为真时,表单运行时将自动居中[A]A) AutoCenter B) AlwaysOnTop C)ShowCenter D)FormCenter(24)下列关于命令DO FORM XX NAME YY LINKED 的叙述中,正确的是[C]A) 产生表单对象引用变量XX,在释放变量XX时自动关闭表单B) 产生表单对象引用变量XX,在释放变量XX时并不关闭表单C) 产生表单对象引用变量YY,在释放变量YY时自动关闭表单D) 产生表单对象引用变量YY,在释放变量YY时并不关闭表单(25)表单里有一个选项按钮组,包含两个选项按钮Option1和Option2,假设Option2没有设置Click事件代码,而Option1以及选项按钮组和表单都设置了Click事件代码。

计算机二级vf笔试试题,三套,附答案

计算机二级vf笔试试题,三套,附答案

第一部分软件技术基础一、是非判断题1. 2. 3. 4. 5.6. 7. 8. 9. 10二、选择题1. 2. 3. 4. 5.第二部分一、单项选择题1.CBCAD6.DCBAC二、读程序题1.BB2.DD3.DA4.DCB5.ADD6.BDD三、程序填空题1. N<=19 INPUT N=N+12. XH CONTI UPPER LOOP3. 专业year(date())-year(出生年月)count(*)>3 成果数4. rowsourcetype 操作员.操作员passwordchar setfocus30次试题第一部分答案对错对对对对错错错对BDBCB第二部分答案1. D B C D B2. B B A A C(1) C A(2) D A D(3) A C(4) C C B(5) D D(6) C D C1、I<100 I/8 N=N+12、USE XS21 FOR NOT 性别N=N+13、ORDER TO TEMP.TEXT4、AVG(成绩)成绩.学号GROUP BY5、THISFORM.TEXT1.VALUE=“”THISFORM.RELEASETHISFORM.TEXT1.VALUE=TIME()CAPTION31次试题第一部分答案第二部分答案一、单项选择题1、BABDD 6、CBCAA 11、BBACA二、读程序题1、CDC2、CB3、DCA4、BC二、程序填空题1、选择、投影、连接2、CDX、主索引、远程3、*、PACK4、YEAR(出生日期)、N=N+15、X<=10、S=S+W6、INTO、VALUES7、ALTER、ADD8、.T.、READONLY、CLICK、VALUE33次试题第一部分错对对错错对对对错对BDCAD第二部分一。

选择题DDDAA DDCCD BCBCB二。

读程序题CC DAB BBC AB三。

填空1.数据库、DBMS主索引、更新选项卡浏览窗口、INTO TABLE2.100 INT(K/3)=K/3T=T+K3.EOF() >10 AND 数量<=50 SKIP4ALTER UPDATE课程.课程号=授课.课程号WHERE5NAME CAPTION READONLY YEAR(DATE())第三十次等级考试第一部分软件技术基础(共15分)一、是非判断题(每题1分,共10分)1、能影响中断响应次序的技术是中断优先级和终端屏蔽。

重庆市计算机二级vfp

重庆市计算机二级vfp

VIF考试复习资料下面的138道题目,在二级考试中命中率极高。

一、选择题(1) 下面叙述正确的是( )A. 算法的执行效率与数据的存储结构无关B. 算法的空间复杂度是指算法程序中指令(或语句)的条数C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止D. 以上三种描述都不对(2) 以下数据结构中不属于线性数据结构的是( )A. 队列B. 线性表C. 二叉树D. 栈(3) 在一棵二叉树上第5层的结点数最多是( ) 注:由公式2k-1得A. 8B. 16C. 32D. 15(4) 下面描述中,符合结构化程序设计风格的是( )A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B. 模块只有一个入口,可以有多个出口C. 注重提高程序的执行效率D. 不使用goto语句(5) 下面概念中,不属于面向对象方法的是( ) 注:P55-58A. 对象B. 继承C. 类D. 过程调用(6) 在结构化方法中,用数据流程图()作为描述工具的软件开发阶段是( )A. 可行性分析B. 需求分析C. 详细设计D. 程序编码(7) 在软件开发中,下面任务不属于设计阶段的是(D)A. 数据结构设计B. 给出系统模块结构C. 定义模块算法D. 定义需求并建立系统模型(8) 数据库系统的核心是(B)A. 数据模型B. 数据库管理系统C. 软件工具D. 数据库(9) 下列叙述中正确的是(C)A.数据库是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中,数据的物理结构必须与逻辑结构一致(10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A) 注:P108A. 内模式B. 外模式C. 概念模式D. 逻辑模式(11) 算法的时间复杂度是指(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数(12) 算法的空间复杂度是指(D)A. 算法程序的长度B. 算法程序中的指令条数C. 算法程序所占的存储空间D. 算法执行过程中所需要的存储空间(13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出A. 349B. 350C. 255D. 351(14) 结构化程序设计主要强调的是(B)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性(15) 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D) 注:即第一个阶段A. 概要设计B. 详细设计C. 可行性分析D. 需求分析(16) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。

2011年11月重庆市计算机二级VF真题及答案

2011年11月重庆市计算机二级VF真题及答案

重庆市计算机二级VF真题及答案笔试第一套一、单项选择题(每题一分,共三十分)1、在VF中,数据库文件的扩展名是()A PRGB 、DBF C、DBC D、FRM2、以下赋值语句正确的是:()A、STORE 8 TO X YB、STROE 8、9 TO X,YC、X=8+Y=9D、X=8<>93、在VF中,表文件中的字段是一种()A、常量B、变量C、运算符D、函数4、以下命令的输出是()X1=“1”X2=“3”X13=X2-X1?&X13-13A、13B、18C、31D、25、函数MOD(20,3)的值是()A、2B、-2C、1D、-16、以下关于数据库及数据表的描述,不正确的是()A、数据库表的字段或记录可以定义有效性规则B、数据库表的字段名可超过10个字符C、在数据库设计器中,既可以创建数据库表,又可以创自由表D、打开数据库之后,数据库被包含的表不一定被打开7、在定义表结构时,字段宽度是系统自动设置的有()A、字符型、货币型、数值型B、字符型、货币型、逻辑型C、备注型、逻辑型、数值型D、日期型、备注型、逻辑型8、用DIMENSION Y(2,3)命令定义数组Y后,对部份数组元素赋值:Y(1,3)=3,Y(2,1)=4,然后执行命令Y(2),Y(3),则显示的结果是()A、.f. 3B、.F. .F.C、3 4D、变量未定义的提示9、下列命令使用时不要求对数据表进行排序或索引的是:()A、SEEK,DELETEB、LOCATE,COUNTC、TOTAL,LISTD、FIND,APPEND10、设当前所使用的数据库表有10条记录,而当前记录指针指向第五条记录,则执行以下误句后,使记录指针指向第十条记录的语句是()A、LIST RESTB、LIST ALLC、LIST NEXT 6D、LIST RECORD 511、数据库表STUD.DBF中有成绩等字段,执行SQL命令“SELECT * FROM STUD INTO DBF XX ORDER BY 成绩”之后,将()A、会提示命令出错B、会生成一个按成绩字段升序排序的表文件XX.DBFC、会生成一个按成绩字段降序排序的表文件XX.DBFD、在屏幕的浏览窗口中显示一个按成绩字段排序的结果12、设已打开表文件A1.DBF,执行命令COPY STRUCRE TO B1 的作用是()A、仅将当前一条记录拷贝致表B1.DBF中B、将A1.DBF的全部记录拷贝致表B1.DBF中C、将A1.DBF和B1.DBF的内容连接后再存入B1.DBF中D、仅将表文件A1.DBF的结构复制到新建立的B1.DBF中13、表达式-3^2*2的结果为()A、18B、-18C、12D、-1214、一个逻辑表达式含三种运算符,并且未使用圆括号,该运算符的优先顺序是()A、AND NOT ORB、OR AND NOTC、NOT OR ANDD、NOT AND OR15、若要退出VF环境,可以选择菜单的“退出(X)”功能项,该菜单项属于()A、文件菜单B、编辑菜单C、工具菜单D、程序菜单16、以下关于查询的描述正确的是()A、不能根据自由表建立查询B、只能根据自由表建立查询C、只能根据数据库表建立查询D、可能根据数据库表和自由表建立查询17、职工工资数据据表按基本工资字段建立降序索引,然后执行GO TOP 命令,此时当前记录指针指向的记录是()A、1号记录B、基本工资最少的记录C、基本工资最多的记录D、不能确定18、对于学生数据表,包括学号,年龄,性别等字段,需要设计一条规则,把其中的年龄字段限制在18—23之间,则这条规则属于()A、实体完整性规则B、参照完整性规则C、域的完整性规则D、不属于以上任何一种规则19、表单运行时,在文本框中输入任何符号都显示为“#”,需要指定文本框的()属性。

计算机等级考试二级VF笔试真题及部分答案解析

计算机等级考试二级VF笔试真题及部分答案解析

计算机等级考试二级VF笔试真题及部分答案解析计算机等级考试二级VF笔试真题及部分答案解析1、下列叙述中正确的是A.对长度为n的有序的链表进行查找,最坏情况下需要的比较的次数为nB. 对长度为n的有序的链表进行对分查找,最坏情况下需要的比较的次数为n /2C. 对长度为n的有序的链表进行对分查找,最坏情况下需要的比较的次数为log2nD. 对长度为n的有序的链表进行对分查找,最坏情况下需要的比较的次数为nlog2n答案:A解析:最坏情况下全部逆序,所以要比较N次2、算法的时间复杂度是指A.算法的执行时间B.算法所处理数据和数据量C.算法程序中的语句或指令条数D.算法在实现过程中所需要的基本运算次数答案:D3、软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。

下面属于系统软件的是A.编辑软件B.操作系统C.教务管理系统D.浏览器答案:B解析:操作系统是最常见的系统软件4、软件(程序)调试的任务是A.针对和改进程序中的错误B.尽可能多的发现程序中的错误C.发的现并改正程序中的所有错误D.确定程序中错误的性质答案:A解析:B答案是程序测试的任务5、数据流程图(DFD图)是A.软件概要设计的工具B.软件详细设计的工具C.结构化方法的需求分析工具D.面向对象方法的需求分析工具的答案:C6、软件生命周期可分为定义阶段,开发阶段和维护阶段,详细设计属于A. 定义阶段B.开发阶段C.维护阶段D.上述三个阶段答案:B7、数据库管理系统中负责数据模式定义的语言是A.数据定义语言B.数据管理语言C.数据操纵语言D.数据控制语言答案:A8、在学生管理的关系数据库中,存取一个学生信息的数据单位是A.文件B.数据库C.字段D.记录答案:D9、数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的A.需求分析阶段B.逻辑设计阶段C.的概念设计阶段D.物理设计阶段答案:A10、有两个关系R和T如下:RA B Ca 1 2b 2 2c 3 2d 3 2TA B Cc 3 2d 3 2则由关系R得到关系T的操作是A.选择B.投影C.交D.并答案:A解析:从一个关系中选出某一行(几行)符合条件要求的记录,称为选择从一个关系中选出某一列(几列)符合条件要求的内容,称为投影11、在VisualFoxpro中,编译后的程序文件的扩展名为A.PRGB.EXED.FXP答案:D12、假设表文件TEST.DBF已经在当前工作区打开,要修改其结构,可使用的的命令A.MODI STRUB.MODI COMM TESTC.MODI DBFD.MODI TYPE TEST答案:A13、为当前表中的所有学生的总分增加十分,可以使用的命令是A.CHANGE 总分 WITH 总分+10B.REPLACE总分 WITH总分+10C.CHANGE ALL总分WITH总分+10D.REPLACE ALL总分WITH总分+10答案:D解析:记住修改记录用REPLACE14、在VisualFoxpro中,下面关于属性、事件、方法叙述错误的是A.属性用于描述对象的状态B.方法用于描述对象的行为C.事件代码民可以象方法一样被显示调用D.基于同一个类产生的两个对象的属性不能分别设置自己的属性值15、有如下赋值语句,结果为“大家好”的表达式是a=”你好”b=”大家”A.b+AT(a,1)B.b+RIGHT(a,1)C.b+LEFT(a,3,4)D.b+RIGHT(a,2)答案:D解析:一个汉字占两个字符,从a的右边取一个字符要用函数RIGHT(a,2)16、在VisualFoxpro中,“表”是指A.报表B.关系C.表格控件D.表单答案:B解析:VF中,一个表就是一个关系17、在下面的VisualFoxpro表达式中,运算结果为逻辑真的是A.EMPTY(.NULL.)B.LIKE(‘xy?’,'xyz’)C.AT(‘xy’,'abbcxyz’)D.ISNULL(SPACE(0))答案:B18、以下关于视图的描述正确的是A.视图和表一样包含数据B.视图物理上不包含数据C.视图定义保存在命令文件中D.视图定义保存在视图文件中答案:B19、以下关于关系的说法正确的是A.列的次序非常重要B.行的次序非常重要C.列的次序无关紧要D.关键字必须指定为第一列答案:C解析:行和列的次序都无关紧要20、报表的数据源可以是A.表或视图B.表或查询C.表、查询或视图D.表或其他报表答案:C21、在表单中为表格控件指定数据源的属性是A.DataSourceB.RecordSourceC.DataFromD.RecordFrom答案:B22、如果指定参照完整性的删除规则为“级联”,则当删除父表中的记录时A.系统自动备份父表中被删除记录到一个新表中B.若子表中有相关记录,则禁止删除父表中记录C.会自动删除子表中所有相关记录D.不作参照完整性检查,删除父表记录与子表无关答案:C23、为了在报表中打印当前时间,这时应该插入一个A.表达式控件B.域控件C.标签控件D.文本控件答案:B24、以下关于查询的描述正确的是A.不能根据自由表建立查询B.只能根据自由表建立查询C.只能根据数据库表建立查询D.可以根据数据库表和自由表建立查询答案:D25、SQL语言的更新命令的关键词是A.INSERTB.UPDATEC.CREATED.SELECT答案:B解析:A 插入 C 新建 D选择26、将当前表单从内存中释放的正确语句是A.ThisForm.CloseB. ThisForm.ClearC. ThisForm.ReleaseD. ThisForm.Refresh答案:C解析:纯粹送分,多次强调内容27、假设职员表已在当前工作区打开,其当前记录的“姓名”字段值为“李彤”(C型字段)。

计算机二级vf考试试题

计算机二级vf考试试题

计算机二级vf考试试题计算机二级VF考试试题一、选择题(每题2分,共20分)1. 在Visual FoxPro中,以下哪个命令用于创建新的数据库?A. CREATE TABLEB. CREATE DATABASEC. USE DATABASED. ADD DATABASE2. 以下哪个函数用于计算字符串的长度?A. LEN()B. LENGTH()C. STRLEN()D. TEXTLEN()3. 在Visual FoxPro中,要将一个数值型字段的值转换为字符型,应使用哪个函数?A. STR()B. VAL()C. CTOD()D. DTOC()4. 下列关于Visual FoxPro表单的叙述中,哪一项是错误的?A. 表单是Visual FoxPro中的一种对象B. 表单可以包含控件C. 表单可以独立运行D. 表单不能设置其属性5. 在Visual FoxPro中,要实现对表中数据的排序,应使用哪个命令?A. ORDER BYB. SORTC. INDEXD. SEARCH6. 以下哪个命令用于在Visual FoxPro中打开一个已经存在的表?A. USEB. OPENC. DISPLAYD. BROWSE7. 在Visual FoxPro中,以下哪个事件是用于表单加载时触发的?A. LOADB. INITC. ACTIVATED. DEACTIVATE8. 下列关于Visual FoxPro的数组,哪一项是正确的?A. 数组的大小是固定的B. 数组的索引从1开始C. 数组可以存储不同类型的数据D. 数组可以作为函数的参数传递9. 在Visual FoxPro中,要删除一个字段可以使用哪个命令?A. DELETE FIELDSB. REMOVE FIELDC. DROP FIELDD. ERASE FIELD10. 在Visual FoxPro中,以下哪个命令用于设置字段的默认值?A. DEFAULTB. SET DEFAULTC. SET TOD. DEFINE二、填空题(每题2分,共20分)11. 在Visual FoxPro中,使用________命令可以查看表的结构。

重庆计算机二级VF上机试题

重庆计算机二级VF上机试题

2007年第二次全国高等学校(重庆考区)非计算机专业计算机等级考试Visual Foxpro上机考试题(第一套)(共100分)1、建立一个学生食堂IC卡管理数据库,文件名为db721.DBC,并输入数据(40分)该数据库中有两个数据表:学生信息表(XS.DBF)和食堂消费数据表(XF.DBF)。

其数据形式如下:学生信息表(XS.DBF)食堂消费数据表(XF.DBF)要求:将数据库中的XS.DBF(父表)和XF.DBF(子表)以“IC卡号”建立一对多永久关系。

2、建立程序文件COM-SQL721.PRG,要求将完成下列各小题任务的VFP数据表操作命令或VFP-SQL命令写在该程序文件中。

在程序首行用注释语句注明考生姓名和准考证号,并用注释语句标注小题号。

(30分)(1)正确修改学生信息表XS.DBF中的“有效期”字段的值。

如果“IC卡号”的第4位的数值低于“4”(不包含),则有效期改正为“2008-12”;否则更改为“2009-7”;(2)利用学生信息表和食堂消费表的一对多关联,查询并显示学生姓名为“艾世平”的食堂消费明细,包括IC卡号、时间、类别和金额;(3)按“类别”汇总2007年11月份食堂消费金额;3、表单设计。

按以下要求设计程序界面,表单文件名为:FORM721.SCX(30分)设计如图所示一个表单,包括3个标签,1个文本框,1个命令按钮(各控件的主要属性参照图形尺寸自定)。

其中:①表单的标题要显示考生自己的姓名和考号;②文本框text1的显示初值为0;③该表单运行后,可以在文本框text1中反复输入数值,左键单击“累加”命令按钮,则由2个标签分别显示累加值(大号字)和输入次数(小号字)。

注意该2标签开始没有显示;④双击表单任意空白处结束表单程序的运行。

2007年第二次全国高等学校(重庆考区)非计算机专业计算机等级考试Visual Foxpro上机考试题(第二套)(共100分)1、建立一个图书借阅管理数据库,文件名为db722.DBC,并输入数据(40分)该数据库中有两个数据表:图书基本信息表(TUJ.DBF)和图书借阅情况表(JY.DBF)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

<>必选项;[]可选项;…前面内容重复;I任选项1.*将任意一个三位数反向输出x=123x1=int(x/100)x2=int(mod(x,100)/10)x3=mod(x,10)?x1+x2*10+x3*100 ~~~~~3212.x=123y=str(x,3) &&将数值转化为字符串?right(y,1)+subs(y,2,1)+left(y,1) ~~~~~~3213.xb="女"?iif(xb='男',1,iif(xb='女',2,3)) &&条件函数 ~~~~~~24.note () **或^ * / %(求余数) + -从高到低;==(精确等于),<>、#、!(不等于);Not and nor (依次降级)5.*查找姓“张”的学生at("张",姓名)=1;substr(姓名,1,2)=”张”;姓名=”张”&&非精确比较;left(姓名,2)=”张”;6.*20岁以下学生Date()-出生日期<=20*365;Year(date())-year(出生日期)<=20;7.*少数民族学生少数民族否;少数民族否=.T.;Iif(少数民族否,”少数民族”,”汉族”)=”少数民族”*use 学生 &&这是vf语言首先需要做的,以下操作省略此条8~39 8.*显示第五条记录go 5display;list record 5;list for recn()=5;display for recn()=59.*显示记录号为偶数的记录list for mod(recno(),2)=0 &&recno()是记录号函数;list for recno()%2=0;list for int(recno()/2)=recno()/2;list for int(recno()/2)<>recno()/2 &&显示记录号为奇数的记录10.*显示汉族女学生的记录list for 少数民族否=.F. and 性别="女"list for !少数民族否 and 性别="女"11.*显示女学生的姓名、性别、年龄及简历list 姓名,性别,year(date())-year(出生日期),简历 for;性别="女"Use &&关闭表12.*表结构显示list/display structure;表结构修改modify structure;表记录显示list=display all;表记录修改edit/change/browse/replace··with··for/while··13.*将汉族学生数学成绩减少10分,并将外语成绩增加20分replace 数学 with 数学-10,外语 with 外语+20 for 少数民族否14.*将6号记录的出生日期修改为1983年9月7日go 6replace 出生日期 with {^1983/09/07};replace 出生日期 with {^1981/09/07} for recno()=615.*将汉族学生的数学成绩减少20分,将少数民族学生的外语成绩增加20分Replace 数学 with 数学-20 for 少数民族否=.F.Replace 外语 with 外语+20 for 少数民族否 &&必须用两条命令,因条件不同16.绝对定位 go top/bottom;相对定位skip17.* 插入记录Insert/insert blank18.*添加记录append &&用全屏方式进行添加记录append blank &&添加空白记录,在尾部19.*删除记录delete for recno()=3 or recno()=5 &&添加删除标志browset delete on &&做了删除标志的不参与运算recall &&取消删除标志pack &&物理删除记录zap=delete all 和 pack20.*复制表结构copy structure to 学生1 fields 学号,姓名,性别21.*复制表copy to new1 for 数学>=60use new1 &&显示表的记录必须先打开新表listcopy to new2 sdftype new2.txt &&查看新文本文件copy to new3 delimitedtype new3.txt &&查看新文本文件,若为字符型,带有""22.*从其他文件向表添加数据use 学生表copy stru to 学生2use 学生2list &&显示记录为空list struappend from 学生表 &&将学生表记录添加到学生2中list &&显示学生2表记录23.数据表文件的删除delete file new1.dbf &&扩展名不能省略erase 表1.dbf &&删除的文件必须关闭24.*表的排序* A(ascding 升序);D(descding 降序);C(加上忽略大小写),改变物理顺序USE 学生表sort on 数学/DC to sxuse sxlist next 525.*索引文件*种类:单索引文件:.idx;复合索引:.cdx;改变逻辑顺序*用表单设计器建立的索引号都是结构复合索引*To 单索引文件;tag 复合索引文件;compact 压缩的单索引文件*复合索引系统默认升序,单索引只能升序索引,默认普通索引*按年龄降序,年龄相同数学成绩升序(复合索引)index on str(year(date())-year(出生日期),2)+str(100-数学) tag xx desc *按数学降序(单索引)index on -数学 to su*按学号升序,不允许有编号相同的记录index on 学号 tag xh unique*按出生日期升序(非结构复合索引)index on 出生日期 tag cs of ss26.*打开索引文件*打开表后再打开索引文件set index to suset index to &&关闭当前单索引文件*表和索引文件同时打开Use 学生 index su27.*确定主控索引*go top/bottom指向逻辑顺序use 学生set index to su,nameset order to 2 &&设置name 为主索引list next 3set order to 1 &&设置su为主索引,或set order to sulist next 3set order to &&取消主索引28.*关闭索引文件,不能关闭结构索引; use 命令关闭当前表和相关索引close indexset index to29.*删除索引Delete file su &&删除单索引文件Delete tag all;delete tag cs &&删除复合索引文件索引标志30.*更新索引Reindex[compact]31.*顺序查询定位locate for !少数民族否 and 性别='男'disp 姓名,数学,year(date())-year(出生日期)continue &&继续查找下一个?recno(),姓名,数学,year(date())-year(出生日期)?found()32.*索引查询定位 &&继续查找下一个skipindex on 出生日期 tag sy4d={^1983/09/07}seek d &&内存变量,不加&dispindex on 姓名 tag xmfind 王大为 &&查找字符型,不需要加定界符dispseek '张大力' &&查找任意数据,需要加定界符disp33.*统计记录个数count for 性别='女' to x1count for 性别='男' to x2?x1,x2e 学生aver year(date())-year(出生日期) to y?y &&求表达式平均值sum 数学,外语 to a,b?a,b &&求数学,外语总分calculate avg(数学),min(数学),max(数学) to x,y,z?x,y,z &&avg,数值表达式平均值;max,数值,日期或字符35.*分类汇总*按性别、数学和外语成绩进行汇总index on 性别 tag xbhztotal on 性别 to hzuse hz &&先建立索引再分类汇总list在一个工作区只能打开一个表文件,且一个表文件也仅仅在一个工作区打开Select 0选择当前没有被使用的最小工作区为当前工作区36.*在1号工作区打开学生表并取别名use 学生 alias zg in 1;use 学生 alias zg in A &&1~10号别名A~J37.*表的逻辑关联Set relation to…into<工作区号>;选择additive建立一对多关系Set relation to 取消所有关联,取消后仍是两个表38.*表的物理联接Join with …to…for/fields…39.按性别对数学成绩和外语成绩汇总Index on 性别 tag cTotal on 性别 fields 数学,外语 to xbcj分别统计男女生平均年龄Average(date()-出生日期)/365 for 性别=’男’Average(date()-出生日期)/365 for 性别=’女’显示性别为女的学生数学成绩的总分,平均分,最高分和最低分Cal sum(数学),avg(数学),max(数学),min(数学) for 性别=’女’to x1,x2,x3,x4?x1,x2,x3,x440.建立数据库文件:creat database 学生打开数据库:use 学生.dbc &&.dbc不能省略;open database…关闭数据库:close all/database修改数据库:modify database …删除数据库:delete database …41.建立数据库索引父表建立主索引,子表建立普通索引;清理数据库;编辑参照完整性42.数据库表设计器字段有效性规则:性别=’男’ or 性别=‘女’信息:’性别只能为男或者为女’默认值:’女’43.SQL命令动词数据查询:select数据操纵:insert update delete数据定义:creat drop alter44.*用SQL命令建立学生管理数据库,包括学生表、选课表、课程表*用creat建立数据库creat database 学生管理*建立学生表creat table 学生表(学号 c(5) primary key,姓名 c(8),性别 c(2),年龄 i, 数学 n(5,1) check (数学>0) error "成绩应该大于0!" defa 0,外语 n(5,1)) *建立课程表creat table 课程表(课程号 c(5) primary key,课程名 c(10),学分 n(1)) &&primary key 建立主索引*建立选课表creat table 选课(学号 c(5),课程号 c(5),成绩 i check(成绩>=0 and 成绩<=100) error "成绩值范围0~100!" default 60,foreign key 学号 tag 学号reference 学生,foreign key 课程号 tag 课程号 reference 课程号)&&reference 与 foreign key 成对出现,建立普通索引Creat table=creat dbf45.*删除表Open database 学生管理Drop table 课程46.*修改表结构*为课程表增加一个整数型的学时字段alter table 课程 add 学时 i check(学时>=16) error "学时应该大于16!" *讲课程表的课程字段名由10改为20alter table 课程 alter 课程名 C(20)*为学生表外语字段添加有效性规则alter table 学生 alter 外语 set check(外语>=0 and 外语 <=100) error "外语成绩应在0~100之间!"*删除学时字段的有效性规则alter table 课程 alter 学时 drop check*删除课程表中学时字段alter table 课程 drop column 学时*将学生表中数学字段改为数学成绩字段alter table 学生 rename column 数学 to 数学成绩*在学生表中定义学号和姓名为候选索引alter table 学生表 add unique 学号+姓名 tag ran*删除学生表候选索引ranalter table 学生表 drop unique tag ran47.*数据查询Select …from…where…order by/group by…into/to…Top与order by 连用,默认升序Into array:数组;into cursor:临时表;into dbf/table:数据表(先运行再加into)48.*简单查询*列出所有学生名单select * from 学生 &&*表示输出所有字段,以浏览方式显示*列出所有学生去掉重名select distinct 姓名 as 学生名单 from 学生select 姓名 from 学生 distinct*查询数学成绩在80~95分之间的学生select * from 学生 where 数学>=80 and 数学<=95*统计男学生人数select count(*) as 男生人数 from 学生 where 性别='男' &&count(*)求满足条件的数值*将所有学生数学成绩四舍五入,只显示学号,姓名,数学cjselect 学号,姓名,round(数学成绩,0) as 数学cj from 学生*求所有学生的数学平均成绩、最高分和最低分select avg(数学成绩) as 数学平均分,max(数学成绩) as 数学最高分,min(数学成绩) as 数学最低分from 学生49.*带有特殊运算符的条件查询Where 子句中的特殊运算符All:满足子查询中所有值的记录Any:满足子查询中任意一个值的记录Between:字段值在指定范围内Exists:测试子查询中查询结果是否为空,若为空,则返回.f.In:字段值是结果集合或子查询中的内容Like :对字符型数据进行字符串比较,通配符“-”代表一个字符;“%”代表0或多个字符Some:满足集合中某个值*查询数学成绩在80到95分之间的学生select 数学成绩 from 学生 where 数学成绩 between 80 and 95*列出学号第二个字符为7的所有学生,注意学号字段类型为字符型select * from 学生 where 学号 like "-7%"select * from 学生 where left(学号,2)="7"*列出所有姓赵的学生名单select 学号,姓名 from 学生 where 姓名 like"赵%"select 学号,姓名 from 学生 where 姓名=’赵’50.*简单连接查询*等值连接与非等值连接*查询所有学生的成绩单,要求给出学号、姓名、课程号、课程名和成绩select a.学号,a.姓名,b.课程号,c.课程名,b.成绩 from 学生表 a,选课表 b,课程 c where a.学号=b.学号and b.课程号=c.课程号*查询男生的选课情况,要求列出学号,姓名,课程号,课程名和学分数select a.学号,a.姓名,b.课程号,c.课程名,c.学分 from 学生表 a,选课表 b,课程 c where a.学号=b.学号 and b.课程号=c.课程号 and 性别="男"*自连接查询*列出选修01102课的学生中,成绩大于学号为070410的学生该门课成绩的那些学号及成绩select a.学号,a.成绩 from 选课表 a,选课表 b where b.课程号="01102" andb.学号="070410" and a.课程号=b.课程号 and a.成绩>b.成绩51.*嵌套查询*返回单值的子查询*列出选修“数据库原理”的所有学生的学号select 学号 from 选课表 where 课程号=(select 课程号 from 课程 where 课程名="数据库原理")*返回一组值的子查询*列出选修01101课的学生中期末成绩比选修01102课的最低成绩还要高的学生的学号和成绩select 学号,成绩 from 选课表 where 课程号="01101" and 成绩>any(select 成绩 from 选课表 where 课程号="01102") &&any运算符的用法*列出选修01101课的学生的成绩比选修01102课的最高还要高的学生的学号和成绩select 学号,成绩 from 选课表 where 课程号="01101" and 成绩>all(select 成绩 from 选课表 where 课程号="01102") &&all运算符的用法*列出选修“数据库原理”或“软件工程”课程的所有学生的学号select 学号 from 选课表 where 课程号 in(select 课程号 from 课程 where 课程名="数据库原理" or 课程名="软件工程") &&any运算符的用法in等价于=any52.*超连接查询Select…from…inner/left/right/full join…*内部链接*列出男生的学号、课程号及成绩select a.学号,b.课程号,b.成绩 from 学生表 a,选课表 b wherea.学号=b.学号 and a.性别='男'select a.学号,b.课程号,b.成绩 from 学生表 a inner join 选课表 b ona.学号=b.学号 where 性别="男"53.*排序*按性别顺序列出学生的学号、姓名、性别、课程名及成绩,性别相同的再按课程名排序,最后按成绩由高到低排序select a.学号,a.姓名,a.性别,c.课程名,b.成绩 from 学生表 a,课程 c,选课表 b where a.学号=b.学号 and b.课程号=c.课程号ord er by a.性别,c.课程名,b.成绩 desc*输出学生表中数学成绩最高的前5名学生的信息select * top 5 from 学生表 order by 数学 desc54.*查询结果输出Into array 数组;cursor 临时表;dbf/table 表To file 文本文件*输出学生表数学成绩最高的前五名保存到testselect a.学号,b.课程号,b.成绩 from 学生表 a,选课表 b;where a.学号=b.学号 and a.性别='男' to file test*输出合并*列出选修01101或01102的所有学生和学号select 学号 from 选课表 where 课程号="01101" union select 学号 from 选课表 where 课程号="01102"*分组统计查询与筛选*分别统计男女人数select 性别,count(性别) from 学生 group by 性别*分别统计男女学生中数学成绩大于85分的学生人数select 性别,count(性别) from 学生 group by 性别where 数学成绩>85&&where:分组前所有记录满足的条件错误:select 性别,count(性别) from 学生 group by 性别 having 数学>85 &&having:查询后的结果是否满足条件55.*插入记录*向学生表中添加记录insert into 学生表 values("231002","杨阳","男",87.0,88.0)insert into 学生表(学号,姓名) values ("231109","李兵")dimension a(5)a(1)="221013"a(2)="张阳"a(3)="女"a(4)=97.0a(5)=88.0insert into 学生表 from array a56.*删除记录*将学生表中所有男生的记录逻辑删Delete from 学生 where 性别=’男’*删除学生管理里学生表中所有少数民族的学生Delete from 学生管理!学生 where 少数民族否Delete from 无条件删除所有记录57.*更新记录*将学生表中姓名为杨阳的学生的外语成绩改为93分update 学生 set 外语=93 where 姓名="杨阳"*将所有男生的各科成绩加20分update 选课表 set 成绩=成绩+20 where 学号 in (select 学号 from 学生表where 性别="男")update一次只能在单一表中更新记录58.*查询哪些仓库有工资多于1210元的职工Select distinet 仓库号 from 职工 where 工资>1210*给出在仓库WH1或WH2工作,并且工资少于1250元的职工号select 职工号 from 职工 where 工资<1250 and(仓库号="WH1" or 仓库号="WH2")*哪些城市至少有一个仓库的职工工资为1250元select dist a.城市 from 仓库 a,职工 b where 工资=1250 anda.仓库号=b.仓库号*找出和职工E4有相同工资的所有员工select * from 职工 where 工资=(select 工资 from 职工 where 职工号="E4") and 职工号!="E4"*找出供应商所在地数目select count(dist 地址) from 供应商*求所有职工的工资都多于1210元的仓库的平均面积select avg(面积) as 平均面积。

相关文档
最新文档