1练习一一、单项选择题1.用数据二维表来表示实体以及实体间联系的数据模型为A)实体-联系模型B)层次模型C)网状模型D)关系模型2.数据库DB、数据库系统DBS、数据库管理系统DBMS三者之间的关系是A)DBS包括DB和DBMSB)DBMS包括DB和DBSC)DB包括DBS和DBMSD)DBS就是DB、也就是DBMS3.数据库系统的核心是A)数据库B)操作系统C)数据库管理系统D)文件4.在visualfoxpro中显示与隐藏命令窗口的错误操作是A)单击常用工具栏上的“命令窗口”按钮B)退出系统再重新打开C)分别按CTRL+F4和CTRL+F2组合键D)通过窗口菜单下的“命令窗口”选项切换5.项目管理器中的“数据”选项卡用于显示和管理A)数据库、自由表和查询B)数据库、视图和查询C)数据库、自由表、查询和视图D)数据库、表单和查询6.要想将日期型或日期时间型数据中的年份用4位数字显示,应当使用设置命令A)SETCENTURYONB)SETCENTURYOFFC)SETCENTURYTO4D)SETCENTURYOF47.在下面的visualfoxpro表达式中,不正确的是A){^2001-05-0110:10:10AM}-10B){^2001-05-01}+date()C){^2001-05-01}-date()D){2001-05-01}+[1000]8.设D=56,命令vartype(D)的输出值是A)LB)CC)ND)D29.表达式VAL(SUBS(“奔腾586”,5,1))*LEN(“visualfoxpro”)的结果是A)63.00B)64.00C)65.00D)66.0010.连续执行以下命令后,最后一条命令的输出结果是SETEXACTOFFX=”A”?IIF(X=”A”,X-“BCD”,X+”BCD”)A)AB)BCDC)ABCDD)ABCD11.以下关于自由表的叙述,正确的是A)全部是用以前版本的FoxPro(foxbase)建立的表B)可以用VisualFoxPro建立,但不能把它添加到数据库中C)自由表可以添加到数据库中,但数据库表不可以从数据库中移出称为自由表D)自由表可以添加到数据库中,数据库表也可以从数据库中移出称为自由表12.在visualfoxpro中以下叙述错误的是A)关系也被称为表B)一个表被存储为一个文件C)表文件的扩展名是.dbfD)多个表存储在一个文件中13.要想删除表中的所有记录,只留下表结构,应该A)从“表“菜单中选择”彻底删除“B)从“表“菜单中选择”删除记录“C)在“命令“窗口中使用PACK命令D)在“命令“窗口中使用ZAP命令14.在浏览方式或编辑方式查看表记录时,选择“显示“菜单中的可以输入记录。A)输入记录B)插入记录C)追加方式D)浏览15.创建表可以使用以下哪个命令A)createformB)createtableC)createdatabaseD)createfile二、填空题1.数据模型不仅表示反映实体本身的数据,而且表示【1】2.用二维表的形式来表示实体之间联系的数据模型为【2】3.退出visualfoxpro程序的命令是:【3】4.visualfoxpro不允许在主关键字字段中有重复值或【4】5.要想清除主窗口屏幕,应使用命令【5】36.项目管理文件的扩展名是【6】7.要显示名字以MY开头的所有内存变量,应当使用命令LISTMEMORY【7】8.执行下列操作后,屏幕的显示结果是【8】X=”迎接2008年北京奥运会”?AT(“0”,X)9.执行下列操作后,屏幕的显示结果是【9】SETCENTURYOFFB=DTOC(DATE())?”今天是:”+SUBSTR(B,7,2)+”年”10.执行下列操作后,屏幕的显示结果是【10】X=”双核处理器”Y=”个人计算机”?LEN(X),LEFT(X,4)+Y11.关系模型中特殊的关系运算指的是【11】【12】【13】这三种运算。12.表达式?Round(337.2007,3)的执行结果是【14】13.要将数组XYZ中的数据复制到表的当前记录中,并且包含备注型字段,应使用命令【15】三、写出表达式的显示结果1.?AT(“人民”,”中华人民共和国”)?VAL(SUBSTR(‘668899’,5,2))+1?SUBSTR(‘668899’,3)–‘1’2.DD=DATE()?STR(YEAR(DD),4)+”年”+STR(MONTH(DD),2)+”月”+STR(DAY(DD),2)+’日’4练习二1.教师表”中有“职工号”、“姓名”和“工龄”字段,其中“职工号”为主关键字,建立“教师表”的SQL命令是()。A)CREATETABLE教师表(职工号C(10)PRIMARY,姓名C(20),工龄I)B)CREATETABLE教师表(职工号C(10)FOREIGN,姓名C(20),工龄I)C)CREATETABLE教师表(职工号C(10)FOREIGNKEY,姓名C(20),工龄D)D)CREATETABLE教师表(职工号C(10)PRIMARYKEY,姓名C(20),工龄I)2.下列与修改表结构相关的命令是()A)INSERTB)ALTERC)UPDATED)CREATE3.对表SC(学号C(8),课程号C(2),成绩N(3),备注C(20)),可以插入的记录是()A)('20080101','cl','90',NULL)B)('20080101','cl',90,'成绩优秀')C)('20080101','cl','90','成绩优秀')D)('20080101','cl','79','成绩优秀')7.在VisualFoxPro中,下列关于SQL表定义语句(CREATETABLE)的说法中错误的是()A)可以定义一个新的基本表结构B)可以定义表中的主关键字C)可以定义表的域完整性、字段有效性规则等D)对自由表,同样可以实现其完整性、有效性规则等信息的设置8.假设有student表,可以正确添加字段“平均分数”的命令是()A)ALTERTABLEstudentADD平均分数F(6,2)B)ALTERDBFstudentADD平均分数F6,2C)CHANGETABLEstudentADD平均分数F(6,2)D)CHANGETABLEstudentINSERT平均分数6,29.设有订单表order(其中包含字段:订单号,客户号,职员号,5签订日期,金额),删除2002年1月1日以前签订的订单记录,正确的SQL命令是()A)DELETETABLEorderWHERE签订日期{^2002-1-1}B)DELETETABLEorderWHILE签订日期{^2002-1-1}C)DELETEFROMorderWHERE签订日期{^2002-1-1}D)DELETEFROMorderWHILE签订日期{^2002-1-1}10.设有关系SC(SNO,CNO,GRADE),其中,SNO、CNO分别表示学号和课程号(两者均为字符型),GRADE表示成绩(数值型),若要把学号为“S101”的同学,选修课程号为“C11”,成绩为98分的记录插入到表SC中,正确的语句是()A)INSERTINTOSC(SNO,CNO,GRADE)VALUES(′S101′,′C11′,′98′)B)INSERTINTOSC(SNO,CNO,GRADE)VALUES(S101,C11,98)C)INSERT(′S101′,′C11′,′98′)INTOSCD)INSERTINTOSCVALUES(′S101′,′C11′,98)11.“图书”表中有字符型字段“图书号”,要求用SQLDELETE命令将图书号以字母A开头的图书记录全部打上删除标记,命令是()A)DELETEFROM图书FOR图书号LIKEA%B)DELETEFROM图书WHILE图书号LIKEA%C)DELETEFROM图书WHERE图书号=A*D)DELETEFROM图书WHERE图书号LIKEA%12.SQL语句中修改表结构的命令是()A)ALTERTABLEB)MODIFYTABLEC)ALTERSTRUCTURED)MODIFYSTRUCTURE1.为“成绩”表中“总分”字段增加有效性规则:“总分必须大于等于0并且小于等于750”,正确的SQL语句是:TABLE成绩ALTER总分总分=0AND总分=75062.金牌榜.dbf:国家代码C(3),金牌数I,银牌数I,铜牌数I获奖牌情况.dbf:国家代码C(3),运动员名称C(20),项目名称C(30),名次I国家.dbf:国家代码C(3),国家名称C(20)“金牌榜”表中一个国家一条记录;“获奖牌情况”表中每个项目中的各个名次都有一条记录,名次只取前3名1.为表“金牌榜”增加一个字段“奖牌总数”,同时为该字段设置有效性规则:奖牌总数=0,应使用SQL语句:ALTERTABLE金牌榜add奖牌总数Icheck奖牌总数=0。2.将金牌榜.dbf中的新增加的字段奖牌总数设置为金牌数、银牌数、铜牌数三项的和,应使用SQL语句:update金牌榜set奖牌总数=金牌数+银牌数+铜牌数7练习三1.学生表中有“学号”、“姓名”和“年龄”三个字段,SQL语句“SELECT学号FROM学生”完成的操作称为()。A)选择B)投影C)连接D)并2.使用索引的主要目的是()A)提高查询速度B)节省存储空间C)防止数据丢失D)方便管理3.以下关于“查询”的正确描述是()A)查询文件的扩展名为prgB)查询保存在数据库文件中C)查询保存在表文件中D)查询保存在查询文件中4.若SQL语句中的ORDERBY短语中指定了多个字段,则()A)依次按自右至左的字段顺序排序B)只按第一个字段排序C)依次按自左至右的字段顺序排序D)无法排序5.SQL的SELECT语句中,“HAVING条件表达式”用来筛选满足条件的()A)列B)行C)关系D)分组6.在SQLSELECT查询中,为了使查询结果排序应该使用短语A)ASCB)DESCC)GROUPBYD)ORDERBY7.关于视图和查询,以下叙述正确的是()A)视图和查询都只能在数据库中建立B)视图和查询都不能在数据库中建立C)视图只能在数据库中建立D)查询只能在数据库中建立8.设有订单表order(其中包含字段:订单号,客户号,职员号,签订日期,金额),查询2007年所签订单的信息,并按金额降序排序,正确的SQL命令是()A)SELECT*FROMorderWHEREYEAR(签订日期)=2007ORDERBY金额DESCB)SELECT*FROMorderWHILEYEAR(签订日期)=2007ORDERBY金额ASCC)SELECT*FROMorderWHEREYEAR(签订日期)=2007ORDERBY金额ASC8D)SELECT*FROMorderWHILEYEAR(签订日期)=2007ORDERBY金额DESC9.在SELECT语句中,下列关于HAVING短语的描述中正确的是()A)HAVING短语必须与GROUPBY短语同时使用B)使用HAVING短语的同时不能使用WHERE短语C)HAVING短语可以在任意的一个位置出现D)HAVING短语与WHERE短语功能相同10.在VisualFoxPro中,下列关于查询的描述中正确的是()A)不能用自由表建立查询B)只能用自由表建立查询C)不能用数据库表建立查询D)可以用数据库表和自由表建立查询11.假设“订单”表中有订单号、职员号、客户号和金额字段,正确的SQL语句只能是A)SELECT职员号FROM订单GROUPBY职员号HAVINGCOUNT(*)3ANDAVG_金额200B)SELECT职员号FROM订单GROUPBY职员号HAVINGCOUNT(*)3ANDAVG(金额)200C)SELECT职员号FROM订单GROUPBY职员号HAVINGCOUNT(*)3WHEREAVG(金额)200D)SELECT职员号FROM订单GROUPB