____________联系。
25.LEFT(″123456789″,LEN(″数据库″))的计算结果是_______。 26.“将实数x保留两位小数,第三位小数进行四舍五入处理”的VFP表达式为_______。 27.执行以下命令后变量c 的值为_______。 m=3 n=5
c=m>n or m 42.已知a的值是长度大于1的字符串,b的值是一个字符,at(b,a)=0 or b $ a的值为 43.数据库表上字段有效性规则是一个______表达式。 44.在数据库的两个表间建立永久联系时,要求两个表的索引中至少有一个是______。 45.视图具有查询的特点,又可以更新______。 46.在Visual FoxPro中,利用DELETE命令可以 _______删除数据表的记录,必要时可以利用_______命令进行恢复。 28.一般情况下,一行只能写一条命令,若命令代码过长,可在行尾使用续行符____分行。 29.执行以下命令共输出____行数据。 store 0 to a,b,c,d ? a ?? b ?? c ?d 30.用dimension a(7,6) 定义的数组a 中可容纳 个元素。 31.在DO WHILE??ENDDO循环结构中,若要终止循环,将控制转移到本循环结构ENDDO后面的第一条语句继续运行,应执行_________命令。 32.实体之间的联系有3种,分别是一对一联系、一对多联系和_______。 33.执行以下命令后变量c 的值为_______。 a=3 b=5 c=str(val(str(a,1)+str(b,1))+val(\ 34.将字符串x中的小写字母转换为大写字母的VFP表达式为_______。 35.分支结构语句和循环结构语句中的条件表达式,其值一定是________。 36.在Visual FoxPro中,字段值为空值(NULL)表示字段 。 37.用二维表表示的实体及实体之间联系的数据模型的为 。 38.表达式:round(3+15%2**2/-3,0) 的值为 。 39.字段变量可以与内存变量同名,若没有指明是哪种形式的变量,系统默认为是 。 40.在上、下各级程序中都有效的内存变量为________。 41.day(ctod('10/30/09')+2) 的值为 。 47.修改表结构的命令是___________________。 48.索引查询定位一般使用________命令。 49.Visual FoxPro在SQL方面支持数据查询、数据定义和_________3种功能。 50.通过Visual FoxPro的视图,不仅可以查询数据库表,还可以___________数据库表。 51.每个数据库表可以建立多个索引,但是 索引只能建立1个。 52.在定义字段有效性规则时,在“信息”框中输入的表达式类型是_________。 53.在SQL语句中,为了避免查询到重复记录,可使用__________短语。 54. 关闭所有数据库的命令是_______。 55. 命令只能使记录指针指向表中满足条件的第一个记录。 56.在Visual FoxPro中,数据库表中的通用型字段的内容将存储在 文件中。 57. 要想通过视图中的数据的修改来修改源表中的数据,必须选定______复选框。 58.在Visual FoxPro中,在当前打开的表中物理删除带有删除标记记录的命令是 。 59.利用SQL语句删除当前文件夹中一个名为temp的自由表文件的命令为 。 60.以随表的打开而自动打开的索引是 。 61.在Visual FoxPro中,为了建立参照完整性,首先必须建立表之间的 。 62.打开数据库设计器的命令是_____________。 63.在SQL SELECT中,字符串匹配运算符用 _________表示。 64.当索引文件打开的状态下,使记录指针移到首记录的命令为 。 65.在Visual FoxPro中,视图是从一个或多个数据库表导出的_______。 66.ZAP命令可以删除当前表中的全部记录,但仍保留表________________。 67.对于____________,可在表设计器中建立索引。 68.使用USE命令打开表时,USE命令中的ALIAS子句(短语)的作用是为打开的表指定________。 6 69.SQL的CREATE TABLE语句中,为属性说明取值范围(约束)的是_____短语。 70.令LIST FOR YEAR(出生日期)<=1965的功能为________。 71.前工作区是指最后执行__________命令所选择的工作区。 72.VFP中,执行TOTAL命令之前,必须对表文件进行索引或__________。 73.询设计器的“排序”排序依据选项卡对应于SQL SELECT语句的 短语。 74.Visual FoxPro中,在运行表单时最先引发的表单事件是______事件。 75.isual FoxPro表单中,用来确定复选框是否被选中的属性是______。 76表单中确定控件是否可见的属性是_______。 77.文本框内是显示用户输入的字符还是显示占位符的属性是_______。 78.在报表中加入一个文字说明,应该在适当的带区中插入一个______控件。 79.于在程序运行过程中可以更新和修改的文件,应将它们设置成_______状态。 80.释放并关闭表单的命令是___________。 81.主要包括两部分内容:数据源和____________。 82.程序运行过程中不需要更新的项目,在项目管理器中应将它们设置成_____状态。 83.定列表框内的某个条目是否被选定,应使用属性是_________。 84.对于表单及控件的绝大多数属性,其类型通常是固定的,通常Caption属性只用来接收___________数据。 85.Visual FoxPro中有两种对象的引用方式,分别为绝对引用和_________。 86.用菜单设计器生成的菜单必须经过________,建立的菜单程序才能被执行。 87.果已对报表进行了数据分组,报表会自动包含组标头和________两个带区。 88.利用数据环境,将表中字符型字段拖曳到表单中,将产生一个 。 89.让指定控件获得焦点的方法是 。 90.快捷菜单只有弹出式菜单,没有 菜单。 91.了在报表中显示一个表达式的值,首先应该在报表中加入一个_______控件。 92.始化系统环境主要是指用__________命令设置环境变量的值或状态。 93.在Visual FoxPro中, 是预先定义好的、能够被对象识别的动作。 94.isual FoxPro中,为了将表单从内存中释放(清除),可将表单中退出命令按钮的Click事件代码设置为 。 95一个控件的 属性决定了控件是否允许被操作。 96.在“报表设计器”中设计报表时,带区的作用是控制数据在页面上的_______。 97 isual FoxPro中,创建表单一般有两种途径,使用 和表单向导创建。 98表框的__________属性指明列表框中条目的数量。 99单设计时要对菜单项分组,常见一条分隔线,应该在菜单名称栏中输入 。 100.对于页标头带区,系统将在________打印一次该带区所包含的内容。 101.在Visual FoxPro中,表单运行时,先引发表单的 事件。 102.文本框的______属性指定文本框控件内是显示用户输入的字符还是占位字符。 103.要使计时器控件每隔半秒就触发1次Timer事件,则Interval属性应设置为______ 。 104.将系统菜单恢复为缺省设置的命令是 。 105.为了保证分组中数据的正确,报表数据源中的数据应该事先按照某种顺序索引或________。 106.要想使一个选项按钮组包含5个按钮,可将____________属性设置为5。 107.在属性窗口中,有些属性的默认值在列表框由以斜体显示,其含义是这些属性在设计时是________。 108.指定表格控件的的列数的属性是____________。 109.Visual FoxPro支持两种类型的菜单:条形菜单和 。 110.为了保证分组中数据的正确,报表数据源中的数据应该事先按照某种顺序索引或________。 111. 对于在程序运行过程中不需要更新的项目,在项目管理器中应将它们设置成________状态。 112.一般用于显示固定不变的文本信息的控件是____________。 113.在属性窗口中,有些属性的默认值在列表框由以斜体显示,其含义是这些属性在设计时是_______。 114.设置“表格”控件中显示数据来源的类型属性是____________ 115.创建报表的命令是________。 116.一个项目管理器中,只能设置______主文件,设置为主文件的文件名将以黑体显示。 117.如果焦点不在命令按钮上时,按__________键,可激活“默认”按钮,并执行“默认”按钮的Click事件。 118.假设要为列表框的(List1)中增加“计算机网络”选项,加入到第3项,则使用的代码为____________。 119.将页框(PF1)的第二个页面的Caption属性修改为“课程表”,其代码为____________。 120.报表向导提供了两种选择:单一报表和 。 7 三、针对提供的表,写出实现下列操作的命令 (一)、假设student表中有15条记录,其表结构如下: student(学号C(8),姓名C(8),性别C(2),出生日期 D,籍贯 C(8),少数民族否 L, 入学成绩N(5,1)) 1.显示第3号至第8号学生记录。 2. 将student表结构及记录复制为xuesh.dbf。 3. 建立一个结构复合索引文件,要求记录按出生日期降序排列,索引标识为CSRQ。 4. 建立一个结构复合索引,要求先按系部升序,再按职称升序,索引标识为XBZC。 5.按“教师编号”建立单索引文件jsbh.idx。 6. 在3号记录之前插入一条空记录。 7. 物理删除teacher表中记录号能被3整除的学生记录。 8.显示职称为“教授”,系部是“中文系”的教师记录。 9.统计所有教师的平均年龄。 (四)、假设订单表order中有100条记录,其表结构如下: 4.显示入学成绩最高的学生记录。 5. 显示年龄最小的学生记录。 6. 统计女学生的人数并存入变量women中。 7. 建立一个结构复合索引,要求先按性别升序,再按入学成绩降序,索引标识为XBCJ。 8.按学号建立单索引文件,文件名为xh.idx。 9.显示入学成绩在550到600之间的学生记录。 10. 查找并显示第一位姓“王”的学生记录。 11. 将student表复制为xuesh.dbf,包括学号,姓名,籍贯和入学成绩。 12. 将少数民族的学生的入学成绩上调20分。 13.查找并显示第一位“山东”籍的学生记录。 14. 物理删除student表中记录号为奇数的记录。 (二)、假设选课表中有50条记录,其表结构如下: 选课(学号C(8),课程号C(5),成绩N(4,1) ) 1.显示课程号为“10002”的全部选课信息。 2.统计选修课程号为“10001”的选课人数。 3. 恢复选课表中逻辑删除的所有记录。 4. 建立一个结构复合索引文件,要求记录先按课程号升序,再按成绩降序排列,索引标识为kchcj。 (三)、假设teacher表中有10条记录,其表结构如下: teacher(教师编号C(5),姓名C(8),性别C(2),出生日期D,电话 C(11),职称 C(6),系部 C(10), 工资N(6,1)) 1.将职称为“教授”的教师工资上调350元。 2. 逻辑删除1949年01月01日之前出生的教师记录。 3. 查找并显示电话为“13705347518”的教师记录。 order(订单号C(5),客户号C(6),职员号C(4),签订日期D,金额N(8,1)) 1.在5号记录之后插入一条空记录。 2. 物理删除2008年01月01日以前签订的订单记录。 3. 建立一个结构复合索引,要求先按职员号升序,再按金额降序,索引标识为ZYJE。 5.显示金额大于10000元的记录。 6.求2008年金额的平均值并存入变量pj中。 7. 显示金额大于等于50000元且签订日期在2009年01月01日至2009年06月30日之间的订单信息。 四、SQL命令操作题 (一)、本题使用课程数据库中的3个数据表:学生、课程和成绩,其结构分别如下: 学生(学号 C(8),姓名 C(8),性别 C(2),出生日期 D,院系 C(8)) 课程(课程编号 C(4),课程名称 C(10),开课院系C(8)) 选课(学号 C(8),课程编号 C(4),成绩 I) 1.查询年龄大于20岁的学生记录。 2.查询所有选课学生的姓名、课程编号及成绩。 3.按出生日期的降序列出学生的学号、姓名及出生日期。 4.分别统计男女生人数,并将查询结果存入temp.dbf表中。 5.插入一条记录到“选课”表中,学号、课程编号和成绩分别是\、\和80。 6.查询学生表中的学生来自哪些系,去掉重复系名。 7.列出中文系或计算机系的性别为“男”的学生记录。 8. 查询所有选修了“计算机基础”课程的学生成绩,查询字段包括学生姓名和成绩,并按成绩由高到低的顺序排列。 8 9.查询所有学生的姓名、性别和年龄并存入永久表temp中。 10. 先按性别排序,性别相同的按照出生日期的降序列出全部学生信息。 11. 查询选修课程平均成绩大于80分的学生的学号和平均成绩。 12. 删除选修课程编号为“1008”的学生记录。 13.用SQL命令创建“课程”表。 14.查询所有姓“李”的学生的学号和姓名。 15. 按年龄降序列出前5条学生的记录。 16. 查询选课人数不少于10人的课程编号和选课人数。 17. 将课程编号为“1002”的成绩提高5分。 18.查询每类职称教师的平均工资。 19. 查询每位教师的姓名及所授课程的课程名。 20. 查询所有课程的信息,结果按学时降序排列。 21.查询学时大于80的课程信息。 22. 查询所授课程门数为2的教师号 23.统计职称为“教授”的人数。 24.统计教师号为“T1101”的教师授课的门数。 25. 按职称升序排序列出前10条记录并将查询结果存放到临时表temp中。 26.查询会计系的学生人数。 27.查询每个学生所选课程的平均成绩,要求得到的信息包括学号,平均成绩。28.用SQL语言创建“学生”表,要说明主码为学号. (二)、本题使用仓库管理数据库中的3个数据表:仓库、职工和订购单。 仓库(仓库号C(4)、城市C(8)、面积 I) 职工(仓库号C(4)、职工号C(4)、工资 N(6,1)) 订购单(职工号C(4)、供应商号C(5)、订购单号 C(5)、订购日期 D) 1. 查询工资在1500到2000元之间的职工信息。 2. 查询工资多于1000元的职工号和他们所在的城市。 3. 先按仓库号升序,再按工资降序排序输出全部职工信息。 4. 求每个仓库的职工的平均工资并存入永久表temp中。 5. 查询订购日期在2009年1月1日之后的所有记录并输出到永久表temp中。6. 查询不在北京或上海的全部供应商信息。 7. 查询工作在面积大于400的仓库的职工号以及这些职工工作的城市。 8. 按职工工资值升序查询出前5条记录。 五、分析程序运行结果 1. 执行下列程序,显示的结果是 。 one=\water\two=\a=len(one) i=a do while i>=1 two=two+substr(one,i,1) i=i-1 enddo ?two 2. 假设学生表中有10条记录,依次执行下列命令后,表中记录个数为 。 use 学生 go 3 insert before blank skip 2 delete next 3 pack ?reccount() use 3. 假设学生表中有10条记录,依次执行下列命令后,显示结果为 。 use 学生 skip 6 ?recno() skip -4 ?recno() go top skip -1 ?recno(),bof() 4. 执行下列程序,显示的结果是 。 x=12345 y=0 9 do while x>0 y=y+x x=int(x/10) enddo ?y 5. 针对第三题选课表,下列程序段完成的功能是 。 use 选课 locate for 课程号=\do while not eof() if found() display endif continue enddo use 6.针对第三题选课表,下列程序段完成的功能是 。 use 选课 n=0 sum=0 do while not eof() if 课程号=\ n=n+1 sum=sum+成绩 endif skip enddo use ? sum/n 7. 针对第三题的student表,下列程序完成的功能是_________。use student go bottom n=3 do while n>=1 display skip -1 n=n-1 enddo use 8. 执行下列程序后的输出结果是______。 cj=75 do case case cj<60 ?\不及格\ case cj>=60 ?\及格\case cj>=70 ?\中\case cj>=80 ?\良\ case cj>=90 ?\优\endcase 9. 针对第三题的student表,下列程序完成的功能是____________。 use student scan for 籍贯=’山东’ or 籍贯=’山西’ display endscan use 10. 针对第三题的student表,下列程序段完成的功能是 。use student list next 5 wait go bottom skip -3 10