第3章 数据库与表的创建及使用(修改)答案
- 格式:doc
- 大小:627.00 KB
- 文档页数:6
第3章习题解答1.选择题(1)表设计器的“允许空”单元格用于设置该字段是否可输入空值,实际上就是创建该字段的(D)约束。
A.主键B.外键C.NULL D.CHECK(2)下列关于表的叙述正确的是(C)。
A.只要用户表没有人使用,则可将其删除B.用户表可以隐藏C.系统表可以隐藏D.系统表可以删除(3)下列关于主关键字叙述正确的是( A )。
A.一个表可以没有主关键字B.只能将一个字段定义为主关键字C.如果一个表只有一个记录,则主关键字字段可以为空值D.都正确(4)下列关于关联叙述正确的是( C )。
A.可在两个表的不同数据类型的字段间创建关联B.可在两个表的不同数据类型的同名字段间创建关联C.可在两个表的相同数据类型的不同名称的字段间创建关联D.在创建关联时选择了级联更新相关的字段,则外键表中的字段值变化时,可自动修改主键表中的关联字段(5)CREATE TABLE语句(C )。
A.必须在数据表名称中指定表所属的数据库B.必须指明数据表的所有者C.指定的所有者和表名称组合起来在数据库中必须唯一D.省略数据表名称时,则自动创建一个本地临时表(6)删除表的语句是(A)。
A.Drop B.Alter C.Update D.Delete (7)数据完整性不包括(B )。
A.实体完整性B.列完整性C.域完整性D.用户自定义完整(8)下面关于Insert语句的说法正确的是(A )。
A.Insert一次只能插入一行的元组B.Insert只能插入不能修改C.Insert可以指定要插入到哪行D.Insert可以加Where条件(9)表数据的删除语句是( A )。
A.Delete B.Inser C.Update D.Alter (10)SQL数据定义语言中,表示外键约束的关键字是(B )。
A.Check B.Foreign Key C.Primary Key D.Unique2.填空题(1)数据通常存储在表中,表存储在数据库文件中,任何有相应权限的用户都可以对之进行操作。
第三章表的创建与使用复习1. 执行下列命令后,被打开的表文件是_____。
X="XS.DBF/CJ.DBF/JS.DBF"Y="/"L=AT("/",X)+1F=SUBSTR(X,L,2)USE &F2. 已知教师表JS.DBF的表结构如下:若要求按如下条件更改基本工资(JBGZ):工龄在10年以下(含10年)者基本工资加200工龄在10年以上(不含10年)者基本工资加400可用如下命令来完成:UPDATE JS ______ JBGZ=IIF(__________,JBGZ+200,JBGZ+400)。
3. 设教师表JS.DBF的表结构如下:要删除教师表中年龄在60岁以上(不含60岁)的教师记录,可使用命令:Delete From JS Where _________4. 为了选用一个未被使用的编号最小的工作区,可使用命令________。
5. 下列程序段用于显示XXDA表中所有类型为字符型的字段的字段名:USE XXDAFOR n=1 TO ________IF TYPE(FIELD(n))=________? FILED(n)ENDIFENDFORUSE6. 有一个表文件XSDA,含有一个学号字段(XH,C,8)。
利用ALTER TABLE xsda_____________COLUMN xh C(10)命令,可以将学号字段的宽度修改为10。
7. 学生表(XS.DBF)的表结构为:学号(XH,C,8),姓名(XM,C,8),性别(XB,C,2),班级(BJ,C,6),用Insert命令向XS表添加一条新记录,记录内容为:下列命令中正确的是___23___。
A. INSERT INTO XS VALUES("10","李小平","男","984461")B. INSERT TO XS VALUES("10","李小平","男","984461")C. INSERT INTO XS(XH,XM,XB,BJ) VALUES(10,李小平,男,984461)D. INSERT TO XS(XH,XM,XB,BJ) VALUES("10","李小平","男","984461")8. 学生表(XS.DBF)的表结构为:学号(XH,C,8),姓名(XM,C,8),性别(XB,C,2),班级(BJ,C,6),并且按XH字段设置了结构复合索引,索引标识为XH,如果XS表不是当前工作表,则下列命令中___29___可以用来查找学号为“96437101”的记录。
第三章表的创建和使用3.1 表结构1. 表的概念表(数据表):是指存放在磁盘文件中的一张二维表。
自由表:不属于任何数据库的表。
数据库表:包含在一个数据库中的表,只属于一个数据库。
表文件名:表名可以由字符、数字或下划线组成,但不可用A-J中的单个字母作文件名,系统自动给出的扩展名为.DBF。
备注文件名:当表中有备注型或通用型字段时,系统自动生成与所属数据表的表名相同、扩展名为:.FPT的文件名。
表结构:存储表记录的公共结构。
(就是指一张表的表头结构,即字段的属性)。
字段:表中的一列。
它规定了数据的特征。
记录:表中的一行。
它是多个字段的集合,同一张表的每个记录都有相同的字段。
关系型数据表的特点:(1)每一个字段不可再分解,也不能有名字相同的字段;(2)每一列中的数据都有相同的数据类型;(3)表中没有内容完全相同的行(记录)。
(4)表中任意两行或两列都可以任意交换。
2. 字段的基本属性字段的属性包括:字段名、数据类型、字段宽度、小数位数、空值支持◆字段名:即每个字段的名字,必须以字符开头,可由字符、数字、下划线组合而成,字母大、小写无区别,但其中不许有空格或其它字符。
自由表的字段名最多由10个字符组成,数据库表的字段名支持长名,最多可达128个字符。
如果从数据库中移去一个表,那么此表的长字段名将被截短成10 个字符。
VFP允许长字段名和长表名,但使用长名称对于跨平台的操作可能遇到难以预料的结果。
◆数据类型:指该字段的数据特征。
◆字段宽度:指该字段所能容纳数据的最大字节数。
◆小数位数:指数值型数据将保留几位小数。
此时的字段宽度= 整数位数+1+小数位数。
◆NULL 值(空值):用来指示记录中的一个字段有或没有数据的标识,NULL不是一种数据类型或一个值,NULL不等同于零或空格。
一个NULL 值不能认为比某个值(包括另一个NULL 值)大或小,相等或不同。
VFP 6.0表中字段的数据类型字段类型代号说明字段宽度使用示例字符型 C字母、汉字和数字型文本每个字符为1个字节,最多可有254 个字符学生的学号或姓名,"8199101" 或'李立'货币型Y 货币单位8 个字节工资,$1246.89日期型 D 包含有年、月和日8 个字节出生日期,的数据 {02/25/2000}日期时间型 T 包含有年、月、日、时、分、秒的数据 8 个字节 上班时间,{02/25/2000 9:15:15 AM}逻辑型 L“真”或“假”的布尔值 1 个字节课程是否为必修课,.T. 或 .F.数值型 N 整数或小数 在内存中占 8 个字节;在表中占 1 至20个字节 考试成绩, 83.5通用型 G OLE 对象 在表中占 4 个字节图片或声音备注型 M 不定长度的一段文字 在表中占 4 个字节学生简历3. 表结构的创建创建表结构其实就是设计字段的基本属性。
一.选择题1.下列关于数据库、表和视图操作的叙述中,正确的是______A_______ 。
A. 关闭一个数据库,将自动关闭其所有已打开的数据库表B.打开一个数据库表,不能自动打开其所有对应的数据库C.关闭一个视图所对应的基表,将自动关闭该视图D.关闭一个视图,自动关闭其所对应的基表(在使用视图时,自动打开的本地基表并不随视图的关闭而自动关闭,必须单独关闭)2.有如下一段程序:CLOSE TABLES ALLUSE XSSELE 3USE JSUSE KC IN 0BROW上述程序执行后,浏览窗口中显示的表及当前工作区号分别是_____C________ 。
A.KC 、2B.KC 、3C.JS 、3D.JS 、23表(table)是存储数据的容器。
在下列有关VFP表的叙述中,错误的是_D___。
A.每个表最多只能包含200多个字段B.新建一个表后,一般会生成1~3个文件(.dbf,.fpt,.cdx)(如果表中有备注型字段或通用型字段,则自动产生与表名相同但扩展名为.fpt的备注文件,如果建立索引,则自动生成与文件名相同的结构复合索引文件。
)C.自由表与数据库表在数据存储功能上是相同的,但在数据管理与控制功能上有差别D.自由表添加到数据库中变成数据库表,而数据库表移出数据库则变成自由表**此题答案基本都正确,D选项考虑表移出数据库有可能被删除,所以勉强选D4.在VFP中,对于数据库表来说,如果将其移出数据库(变成自由表),则该表原设置或创建的__A__仍然有效。
A.候选索引B.长表名C.记录有效性规则D.触发器5.在创建表索引时,索引表达式可以包含表的一个或多个字段。
在下列字段类型中。
不能直接选作索引表达式的是_D____。
A.货币型B.日期时间型C.逻辑型D.备注型(不能基于备注型和通用型字段建立索引)6.表( table )是存储数据的容器.在下列有关 VFP 表的叙述中,错误的是 DA.系统默认的表文件扩展名为. dbfB.利用表设计器创建表结构时,系统默认的字符型字段宽度为 10C.自由表的索引功能与数据库表有区别D.表文件名在命名时只要遵循操作系统的规定 ,VFP 本身无任何新的限定(不可使用A-J中的单个字母作文件名,文件名及存取路径最好不使用空格)7. 数据库( database )是许多相关的数据库表及其关系等对象的集合.在下列有关 VFP 数据库的叙述中,错误的是 BA.可用命令新建数据库B.从项目管理器中可以看出,数据库包含表、视图、查询、连接和存储过程(不包含查询)C.创建数据库表之间的永久性关系,一般是在数据库设计器中进行D.数据库表之间创建"一对多"永久性关系时,主表必须用主索引或候选索引8.在下列有关 VFP 表索引的叙述中,错误的是 cA.通过创建表的索引,不仅可以对记录数据进行排序,而且可以实现记录的筛选B.对于数据库表来说,可以创建 VFP 系统支持的所有类型的索引C.在表打开时,系统会自动地将默认的第一个索引作为主控索引(必须显式的指定,p99)D.表的唯一索引并不能控制字段数据输入时的重复9.数据库表可以设置字段有效性规则,字段有效性规则属于 DA.实体完整性范畴(字段的数据完整性和记录的数据完整性)B.参照完整性范畴(相关表数据的一致性)C.数据一致性范畴 D.域完整性范畴(域完整性指列的值域的完整性。
如数据类型、格式、值域范围、是否允许空值等。
)10.函数是程序设计语言中重要的语言成分.在下列 VFP 系统函数中,其返回值不为字符型数据的是 BA. TYPEB. DOW ()C. CHR ()D. TTOC ()11.利用命令 DIMENSION x(2,3) 定义了一个名为X的数组后,依次执行三条赋值命令X(3)=10 ,X(5)=20,X=30 ,则数组元素x(1,1),X(1,3),X(2,2) 的值分别是 A 用一个语句为所有元素赋相同的值。
A. 30,30,30B. .F.,10,20C. 30,10,20D. 0,10,20注:数组元素定义后,默认值为逻辑值.f.,x=30相当于为数组中所有元素赋值为3012.在下列函数中,返回值为字符型的函数是____C________。
A.DOW()B.AT()C.CHR()D.V AL()注:Dow(date()) 1 A T(‘2’,’1234’) 2 CHR(99) C V AL(‘23’)+V AL(‘32’)13.函数SELECT(0)的返回值为____A________。
A.当前工作区号B.当前未被使用的最小工作区号C.当前未被使用的最大工作区号 D.当前已被使用的最小工作区号注:SELECT 0 选择当前未使用的最小工作区Select(1) 返回未使用工作区的最大编号Select(ctablealias) 返回其所在工作区编号14.若当前“项目管理器”中有一个查询CX和一个视图ST,且包含视图的数据库已打开,则运行查询或打开视图时,下列命令中语法正确的是 DA.DO cx B.DO QUERY cx(do cx.qpr)C.USE VIEW st D.USE st15、下列有关表及其字段的叙述中,错误的是____A__________。
A、每个表最多有100多个字段(最多255个)B、每个数据库表只能属于一个数据库C、自由表的字段名最多由十个字符组成(除了自由表的字段名,表的索引标识符至多只能有10个字符外,其余名称的长度可以是1-128个字符)D、字符型字段的默认宽度为1016、备注型、日期型、和逻辑型字段的宽度是固定的,它们分别是______D________。
A、4、8、2B、8、8、2C、4、4、1D、4、8、1备注、通用4字节,逻辑1字节,日期与日期时间型、货币型8字节。
17、在下列有关表索引的叙述中,错误的是___A___________。
A、数据库表可以有结构符合索引,但自由表不可以B、结构复合索引文件随着表的打开而自动打开C、数据库表可以创建主索引,但自由表不可以D、一个数据库表可以有多个候选索引,但只能有一个主索引18、在“项目管理器”窗口中选择一个表,然后单击“修改”或“浏览”按钮,则指定的表将被打开(假设该表在这之前未被打开)。
下列有关该表所在工作区的叙述中,正确的是___B____。
A、在1号工作区中打开B、在当前工作区中打开C、在当前工作区的想下一个工作区中打开,且该工作区被设置为当前工作区D、在当前未被使用的最小工作区中打开,且该工作区被设置为当前工作区19、数据库表的主索引(及候选索引)的设置可以实现_____B_________。
A、域完整性C、参照完整性B、实体完整性D、用户自定义完整性20、函数SELECT(1)的返回值是_______D_______。
A、当前工作区号C、当前未被使用的最小工作区号B、当前工作区的下一个工作区号D、当前未使用的最大工作区号21、在下列关于数据库和临时表(Cursou)的叙述中,正确的是_____C_________。
A、数据库表随其所在的数据库的打开而打开,也随着其所在的数据库的关闭而关闭B、基于数据库表创建的临时随着数据库的打开而打开,也随着数据库的关闭而关闭C、用BROWSE命令可浏览数据库表,也可以浏览临时表D、临时表被关闭后,可使用USE命令再次将其打开(将查询结果存储在一个命名的临时只读表中,临时表只存在于内存中,当临时表被关闭时,该临时表从内存中删除。
)22、设某数据库中的学生表(XS.DBF)已在2号工作区中打开,且当前工作区为1号工作区,则下列命令中不能将该XS表关闭的是_______D_______。
A、CLOSE TABLEB、CLOSE DATABASE ALLC、USE IN 2D、USE解析:本题目考察的是第三章3.2表的打开与关闭。
选项A是关闭所有的表,选项B是关闭所有的数据库,选项C是关闭第二个工作区中的表,选项D是关闭当前工作区(根据题意,也就是第一个工作区),工作区的试题是每年常考的一个题型。
23、首先执行CLOSE TABLES ALL命令,然后执行______B________命令,可逻辑删除JS(教师)表中年龄超过60岁的所有记录(注:csrq为日期型字段,含义为出生日期)A、DELETE FOR YEAR(DATE()-YEAR(csrq))>60(格式对,但表没打开)B、DELETE FROM js WHERE YEAR(DATE())-YEAR(csrq)>60 (P94页,固定格式)C、DELETE FROM js FOR YEAR(DATE()-YEAR(csrq))>60D、DELETE FROM js WHILE YEAR(DATE())-YEAR(csrq)>6024.已知数值型变量X=1,Y=2,以下返回值为"!3!"的表达式是A。
A."!"+STR(X+Y,1)+"!"B."!"+"X+Y"+"!"C."!"+VAL("X+Y")+"!"D."!"+X+Y+"!"25.以下几组表达式中,返回值均为.T.(真)的是 D 。
({},0,space(n),“”,.null.) P63A.EMPTY({})、ISNULL(SPACE(0))、EMPTY(0)B.EMPTY(0)、ISBLANK(.NULL.)、ISNULL(.NULL.)C.EMPTY(SPACE(0))、ISBLANK(0)、EMPTY(0)D.EMPTY({})、EMPTY(SPACE(5))、EMPTY(0)26.JS(教师)表中有XG(性格,备注型)等字段,使用 __A___命令可以直接浏览,输出所有记录的XG字段的具体内容(即备注中的信息)。
E jsLIST OFF xgB.SELECT xg FROM jsE jsBROWSE FIELD xgE js27.XS(学生)表中有XM(姓名,字符型)和XB(性别,字符型)等字段。
如果要将所有男生记录的姓名字段值清空,则可以使用命令 ___B____。
A.UPDATE XS SET xm=””WHERE"xb"=男B.UPDATE XS SET xm=SPACE(0)WHERE xb="男" P92C.UPDATE XS SET xm=SPACE(0) FOR xb="男"D.UPDATE XS SET xm=”” FOR "xb"=男28.在Visual FoxPro系统中,数据库表的字段默认值保存在 B 。