阅读下列说明,回答问题1至问题5。【说明】某工厂的仓库管理数据库的部分关系模式如下所示:仓库(仓库号,面积,负责人,电话)原材料(编号,名称,数量,储备量,仓库号)要求一种原材料只能存放在同一仓库中。“仓库”和“原材料”的关系实例分别如表22-7和表22-8所示。根据上述说明,用SQL定义“原材料”和“仓库”的关系模式如下,请在空缺处填入正确的内容。create Table 仓库 (仓库号 Char (4),面积 Int,负责人 Char(8),电话 Char(8),(a));//主键定义Create T

题目

阅读下列说明,回答问题1至问题5。

【说明】

某工厂的仓库管理数据库的部分关系模式如下所示:

仓库(仓库号,面积,负责人,电话)

原材料(编号,名称,数量,储备量,仓库号)

要求一种原材料只能存放在同一仓库中。“仓库”和“原材料”的关系实例分别如表22-7和表22-8所示。

根据上述说明,用SQL定义“原材料”和“仓库”的关系模式如下,请在空缺处填入正确的内容。

create Table 仓库 (仓库号 Char (4),

面积 Int,

负责人 Char(8),

电话 Char(8),

(a));//主键定义

Create Table 原材料 (编号 Char (4) (b),//主键定义

名称 Char (16),

数量 Int,

储备量 Int,

仓库号 (c),

(d));//外键定义


相似考题
更多“阅读下列说明,回答问题1至问题5。【说明】某工厂的仓库管理数据库的部分关系模式如下所示:仓库(仓库号,面积,负责人,电话)原材料(编号,名称,数量,储备量,仓库号)要求一种原材料只能存放在同一仓库中。“仓库”和“原材料”的关系实例分别如表22-7和表22-8所示。根据上述说明,用SQL定义“原材料”和“仓库”的关系模式如下,请在空缺处填入正确的内容。create Table 仓库 (仓库号 Char (4),面积 Int,负责人 Char(8),电话 Char(8),(a));//主键定义Create T”相关问题
  • 第1题:

    工厂的仓库管理数据库的部分关系模式如下所示:

    仓库(仓库号,面积,负责人,电话)

    原材料(编号,名称,数量,储备量,仓库号)

    要求一种原材料只能存放在同一仓库中。“仓库”和“原材料”的关系实例分别如表2-1和表2-2所示。

    根据上述说明,用SQL定义“原材料”和“仓库”的关系模式如下,请在空缺处填入正确的内容。

    CREATE TABLE 仓库(仓库号CHAR(4),

    面积 INT,

    负责人 CHAR(8),

    电话 CHAR(8),

    (a)); //主键定义

    CREATE TABLE 原材料(编号 CHAR(4) (b), //主键定义

    名称 CHAR(16),

    数量 INT,

    储备量 INT,

    仓库号 (c),

    (d)); //外键定义


    正确答案:(a) PRIMARY KEY 仓库号 (b) PRIMARY KEY 或 NOT NULL UNIQUE 或NOT NULL PRIMARY KEY (c) CHAR (4) (d) FOREIGN KEY 仓库号REFERENCES 仓库(仓库号)
    (a) PRIMARY KEY 仓库号 (b) PRIMARY KEY 或 NOT NULL UNIQUE 或NOT NULL PRIMARY KEY (c) CHAR (4) (d) FOREIGN KEY 仓库号REFERENCES 仓库(仓库号) 解析:本问题考查应试者对SQL数据库定义语言的掌握。通过给出的关系模式及关系实例,完成数据库定义语句中的主键及外键的定义部分。主码的定义可以有3种:在列级约束中用NOT NULL UNIQUE或PRIMARY KEY指定;在表级约束中用PRIMARY KEY主键,的方式定义。前两种方法只适用于单一属性作主码的情况,后一种适用于任何情况。参照完整性的指定使用FOREIGN KEY外键>REFERENCES被参照关系>(《被参照属性>)的方式定义,参照关系的域应和被参照数据的域相同。

  • 第2题:

    仓库管理数据库的订购计划关系模式为:订购计划(原材料编号,订购数量)。采用下面的触发器程序可以实现“当仓库中的任一原材料的数量小于其储备量时,向订购计划表中插入该原材料的订购记录,其订购数量为储备量的三倍”的功能。请将该程序的空缺部分补充完整。

    CREATE TRIGGER ins_order_trigger AFTER (1) ON 原材料

    REFERENCING NEW ROWAS nrow

    FOR EACHROW

    WHEN nrow.数量<arow.储备量

    INSERT INTO 订购计划VALUES

    ((m),(n));


    正确答案:(1) UPDATEINSERT (m) nrow编号 (n) nrow.存储量*3
    (1) UPDATE,INSERT (m) nrow,编号 (n) nrow.存储量*3 解析:本问题考查应试者对触发器程序编写的掌握。空(1)处要求填入的是触发操作 (INSERT、UPDATE或DELETE),空(m),(n)处填入的是欲插入的值。本题的关键是读懂程序。

  • 第3题:

    ● 某超市的商品(商品号,商品名称,生产商,单价)和仓库(仓库号,地址,电话,商品号,库存量)两个基本关系如表1和表2所示。

    a. 仓库关系的主键是 (37) ,该关系没有达到第三范式的原因是 (38) ;

    b. 查询联想生产的激光打印机的总库存量的SQL语句如下:

    SELECT 商品名称, (39)

    FROM 商品,仓库

    WHERE (40) AND (41) ;

    c. 若仓库关系的地址不能为空,请将下述仓库关系SQL语句的空缺部分补充完整

    CREATE TABLE 仓库(仓库号CHAR(2),

    地址 CHAR(20) (42) ,

    电话 CHAR(20),

    商品号 CHAR(5),

    库存量NUMERIC(5),

    (43) ,

    (44) ) ;

    (37)

    A. 仓库号

    B. 商品号,地址

    C. 仓库号,地址

    D. 仓库号,商品号

    (38)

    A. 没有消除非主属性对码的部分函数依赖,如:仓库号→电话

    B. 没有消除非主属性对码的部分函数依赖,如:地址→电话

    C. 只消除了非主属性对码的部分函数依赖,而未消除传递函数依赖

    D. 只消除了非主属性对码的传递函数依赖,而未消除部分函数依赖

    (39)

    A. NUMBER(库存量)

    B. SUM(库存量)

    C. COUNT(库存量)

    D. TOTAL(库存量)

    (40)

    A. 生产商=联想

    B. 仓库. 生产商=联想

    C. 生产商='联想'

    D. 仓库. 生产商='联想'

    (41)

    A. 商品名称=激光打印机 AND 商品.商品号=仓库.商品号

    B. 商品名称='激光打印机' AND 商品.商品号=仓库.商品号

    C. 商品名称=激光打印机 OR 商品.商品号=仓库.商品号

    D. 商品名称='激光打印机' OR 商品.商品号=仓库.商品号

    (42)

    A. NOT NULL

    B. UNIQUE

    C. NOT NULL UNIQUE

    D. PRIMARY KEY

    (43)

    A. PRIMARY KEY(仓库号)

    B. PRIMARY KEY(仓库号,商品号)

    C. PRIMARY KEY(商品号,地址)

    D. PRIMARY KEY(仓库号,地址)

    (44)

    A. FOREIGN KEY(仓库号)REFERENCES 仓库号

    B. FOREIGN KEY(仓库号)REFERENCES 仓库(仓库号)

    C. FOREIGN KEY(商品号)REFERENCES 仓库(商品号)

    D. FOREIGN KEY(商品号)REFERENCES 商品(商品号)


    正确答案:D,A,B,C,B,A,B,D

  • 第4题:

    ● 某公司的商品(商品号,商品名称,生产商,单价)和仓库(仓库号,地址,电话,商品号,库存量)两个实体之间的关系如表1和表2所示。

    商品关系的主键是 (42) ;仓库关系的主键是 (43) ;仓库关系 (44) ,为了解决这一问题,需要将仓库关系分解为 (45) 。

    (42)

    A. 商品号

    B. 商品名称

    C. 生产商

    D. 单价

    (43)

    A. 仓库号,地址

    B. 仓库号,电话

    C. 仓库号,商品号

    D. 地址,电话

    (44)

    A. 无冗余、无插入异常,但存在删除异常

    B. 无冗余,但存在插入异常和删除异常

    C. 存在冗余,但不存在修改操作的不一致

    D. 存在冗余、修改操作的不一致,以及插入异常和删除异常

    (45)

    A. 仓库1(仓库号,地址)和仓库2(仓库号,电话,商品号,库存量)

    B. 仓库1(仓库号,地址,电话)和仓库2(商品号,库存量)

    C. 仓库1(仓库号,电话)和仓库2(仓库号,地址,商品号,库存量)

    D. 仓库1(仓库号,地址,电话)和仓库2(仓库号,商品号,库存量)


    正确答案:A,C,D,D

  • 第5题:

    阅读下列说明,回答问题1至问题5。

    【说明】

    某工厂的信息管理数据库的部分关系模式如下所示:

    职工(职工号,姓名,年龄,月工资,部门号,电话,办公室)

    部门(部门号,部门名,负责人代码,任职时间)

    关系模式的主要属性、含义及约束如表22-1所示,“职工”和“部门”的关系示例分别如表22-2和表22-3所示。

    根据上述说明,由SQL定义的“职工”和“部门”的关系模式,以及统计各部门的人数C、工资总数Totals、平均工资Averages的D_S视图如下所示,请在空缺处填入正确的内容。

    Create Table 部门 (部门号 Char(1) (a)

    部门名 Char(16),

    负责人代码 Char(4),

    任职时间 DATE,

    (b) (职工号));

    Create Table 职工 (职工号 Char(4),

    姓名 Char(8),

    年龄 NUMDER(3),

    月工资 NUMDER(4),

    部门号 Char(1),

    电话 Char(8),

    办公室 Char(8),

    (a) (职工号),

    (c) (部门号),

    CHECK( (d) ));

    Create View D_S(D,C,Totals,Averages) As

    (Select 部门号, (e)

    from 职工

    (f)


    正确答案:a. Primary Key b. Constraint FK_DEPT Foreign Key(负责人代码) References 职工或Foreign Key(负责人代码)References 职工 c. Constraint FK_PERDEPT Foreign Key(部门号)References 部门或Foreign Key(部门号)References 部门 d.月工资Between 500 And 5000或月工资>=500 And 月工资=5000 e.Count(*)Sum(月工资)
    a. Primary Key b. Constraint FK_DEPT Foreign Key(负责人代码) References 职工或Foreign Key(负责人代码)References 职工 c. Constraint FK_PERDEPT Foreign Key(部门号)References 部门或Foreign Key(部门号)References 部门 d.月工资Between 500 And 5000或月工资>=500 And 月工资=5000 e.Count(*),Sum(月工资) 解析:SQL语言包括数据定义、数据查询和数据操纵,其中数据定义有表、视图和索引的定义。
    数据库完整性包括实体完整性、参照完整性和用户自定义完整性约束。用户自定义完整性写在列级完整性约束条件中。定义实体完整性通常采用“Not Null”,“Unique”,“Constraint主键约束名Primary Key(属性组)”等。其中:
    .“Not Null”表示该列的属性不能为空,定义时紧跟数据类型的后面;
    .“Unique”表示该列的属性是唯一标识的(即不能取重复值),定义时可以紧跟数据类型的后面,也可以放在最后面,这时的格式是:Unique(列名,[列名]...);
    .“Constraint主键约束名Primary Key(属性组)”表示该属性组是表的主键,能唯一标识记录。
    定义参照完整性通常采用:
    Constraint参照约束名Foreign Key参照表(属性组)References被参照表(属性组)定义用户自定义完整性通常采用:
    Constraint自定义约束名Check(条件)
    例如:某表R1(a1,a2,a3),其中a1,a2,a3都是int型。现约束要求a1+a2100,则用户自定义完整性定义是:
    Constraint C1 Check(a1+a2100)
    其中“Constraint约束名”可以省略。
    关于定义视图的一般格式如下:
    Create View视图名>[(列名>[,列名>]...)]
    Aa子查询>
    [with Check Option]
    注意:
    (1)其中的查询可以是任意复杂的Select语句,但通常不允许含有Order by子句和Distinct短语。
    (2)With Check Option表示对视图进行Update,Insert和Delete操作时要保证更新、插入或删除的行满足视图定义中的谓词条件(即子查询中的条件表达式)。
    对视图的查询、更新操作,它的执行过程是首先把这个SQL语句与定义这个视图的SQL语句合并起来,转换成一个新的SQL语句,然后才真正的执行。
    SQL语言还提供了一些常用的统计函数,如:Count用来统计元组个数,Sum用来计算一列值的总和,Avg用来计算一列值的平均值,Max用来求一列值中的最大值, Min用来求一列值中的最小值,等等。
    SQL语言的查询优化在数据库系统中有着非常重要的地位,同时也是考试的一个难点,能反映出考生能否比较熟练地掌握SQL语言,做这种类型的题目有一些技巧。一般来说,如果查询中采用了查询嵌套,特别是自我连接的那种类型,优化的原则是尽量采用不嵌套的的SQL语句来实现相同的功能;当有选择运算时,应尽可能让它先做:在执行连接前注意对关系做适当的预处理,比如在联接的属性上建立索引和对关系排序,然后再执行联接。
    [问题1]
    从试题描述可以看出,在“部门”关系中,“部门号”是唯一标识记录的,是该关系的主键,可采用(部门号Char(1)Primary Key)来定义。在“职工”关系中,“职工号”是唯一标识记录的,因此它是主键,可以定义为:UNIQUE(职工号)或Constraint PF PER Primary Key(职工号)。
    显然,“负责人代码”是“部门”关系的外键,通过“负责人代码”等于“职工号”来关联“职工”关系的,定义为:Constraint FK_DEPT Foreign Key(负责人代码)References职工(职工号)。同时“部门号”是“职工”关系的外键,定义为:Constraint FK_PERDEPT Foreign Key(部门号)References部门(部门号)。
    由于表22-1中告诉我们在“职工”关系中的月工资有个约束:500元≤月工资≤ 5000元。它属于用户自定义完整性约束,可以定义为:Check(月工资Between 500 And 5000)。
    通过对题目分析,建立该视图,要采用到集函数和记录分组语句,采用Count来计算部门的人数,用Sum来计算工资总数,用Avg来计算平均工资。然后用“Group by部门号”来对不同部门进行分组。创建D_S视图的SQL语句如下:
    Create View D_S(D,C.Totals,Averages) AS (Select 部门号,Count (*),sum (月工资),Avg(月工资)From 职工Group by部门号)

  • 第6题:

    某企业的数据库系统中有如下所示的员工关系和仓库关系,每个仓库可有多名员工,但只有一名负责人。

    员工关系(employee):

    仓库关系(warehouse):

    则创建仓库表结构的SQL语句为(58)。

    A.CREATE TABLE (employee ID CHAR(2)NOTNULL UNIQUE, name CHAR(30)NOT NULL, address CHAR(40), principal ID CHAR(3));

    B.CREATE warehouse(warehouse ID CHAR(2)PRIMARY KEY, name CHAR(30), address CHAR(40), principal ID CHAR(3));

    C.CREATE TABLE warehouse(warehouse ID CHAR(2)PRIMARY KEY, name CHAR(30)NOT NULL, address CHAR(40), principal ID CHAR(3), FOREIGN KEY(principal ID)REFERENCES employee(employee ID));

    D.CREATE TABIE warehouse(warehouse ID CHAR(2), name CHAR(30)NOT NULL, address CHAR(40), principal ID CHAR(3), PRIMARY REY(warehouse ID), FOREIGN KEY(employee ID)REFERENCES employee(employee ID));


    正确答案:C

  • 第7题:

    以下四题使用如下的仓库表和职工表。

    仓库表仓库号所在城市

    A1北京

    A2上海

    A3天津

    A4广州

    职工表职工号仓库号工资

    M1A12000.00

    M3A32500.00

    M4A41800.00

    M5A21500.00

    M6A41200.00

    检索在广州仓库工作的职工记录,要求显示职工号和工资字段,正确的命令是 ______。

    A.SELECT职工号,工资FROM职工表; WHERE仓库表.所在城市;“广州”

    B.SELECT职工号,工资FROM职工表; WHERE仓库表.仓库号;职工表.仓库号; AND仓库表.所在城市;“广州”

    C.SELECT职工号,工资FROM仓库表,职工表; WHERE仓库表.仓库号二职工表.仓库号; AND仓库表.所在城市;“广州”

    D.SELECT职工号,工资FROM仓库表,职工表; WHERE仓库表.仓库号:职工表.仓库号; OR仓库表.所在堀市=“广州”


    正确答案:C

  • 第8题:

    第 16~19 题使用如下的“仓库”表和“职工”表,表结构如下:

    仓库(仓库号C(3)、所在地C(8)、人数N(2))

    职工(仓库号C(3)、职工号C(2)、姓名C(8)、工资I)

    第 16 题 检索有职工的工资大于或等于“WH1”仓库中所有职工“工资”的仓库号,正确的命令是( )。

    A)SELECT DISTINCT仓库号FROM职工WHERE工资>=ANY

    (SELECT MAX(工资)FROM职工WHERE仓库号=”WH1”)

    B)SELECT DISTINCT仓库号FROM职工WHERE工资>=ANY:

    (SELECT工资FROM职工WHERE仓库号=”WH1”)

    C)SELECT DISTINCT仓库号FROM职工WHERE工资>=ALL:

    (SELECT工资FROM职工WHERE仓库号=”WH1”)

    D)SELECT DISTINCT仓库号FROM职工WHERE工资>=ALL:

    (SELECT MAX(工资)FROM职工WHERE仓库号=”WH1”)


    正确答案:C
    选项C)中的SQL语句通过子查询检索“Will”仓库中所有职工的工资,然后在主查询中检索有职工工资大于子查询所查的工资的记录,即大于所有WH1中所有职工工资的职工所在的仓库号,DISTINCT短语的功能是去掉查询结果中重复的记录。在SQL语句中可以利用ANY、ALL等量词进行查询。其中, ANY(任意的)和SOME(一些)表示只要子查询中存在符合条件的行,结果就成立;而ALL(所有的)只有子查询中的所有的行都符合条件,结果才成立。

  • 第9题:

    某公司销售数据库的商品、仓库关系模式及函数依赖集F1、F2如下:
    商品(商品号,商品名称,生产商,单价),F1={商品号→商品名称,商品号→生产商,商品号→单价)},商品关系的主键是( )。仓库(仓库号,地址,电话,商品号,库存量),F2={仓库号→(地址,电话),(仓库号,商品号)→库存量}。仓库关系的主键是(请作答此空),外键是( )。
    仓库关系模式( ),为了解决这一问题,需要将仓库关系分解为( )。

    A.仓库号
    B.仓库号,商品号
    C.仓库号,电话
    D.地址,电话

    答案:B
    解析:
    本题考查应试者对关系模式中主键、外键和模式分解及相关知识的掌握程度。
    从商品关系的函数依赖集F1可以导出商品号决定商品关系的全属性,所以商品号是商品关系的主键。
    从仓库关系的函数依赖集F2可以导出(仓库号,商品号)决定仓库关系的全属性,所以仓库关系的主键是(仓库号,商品号)。又由于商品号是商品关系的主键,故商品号是仓库关系的外键。
    仓库关系存在冗余、插入异常和删除异常,以及修改操作的不一致。例如,仓库号为"12"的商品有3种,其地址就要重复3次,如下表所示,故仓库关系存在冗余

  • 第10题:

    某公司销售数据库的商品、仓库关系模式及函数依赖集F1、F2如下:
    商品(商品号,商品名称,生产商,单价),F1={商品号→商品名称,商品号→生产商,商品号→单价)},商品关系的主键是( )。仓库(仓库号,地址,电话,商品号,库存量),F2={仓库号→(地址,电话),(仓库号,商品号)→库存量}。仓库关系的主键是( ),外键是( )。
    仓库关系模式(请作答此空),为了解决这一问题,需要将仓库关系分解为( )。

    A.存在冗余、插入异常和删除异常,以及修改操作的不一致
    B.不存在冗余,但存在插入异常和删除异常
    C.不存在修改操作的不一致,但存在冗余和插入异常
    D.不存在冗余、插入异常,但存在删除异常和修改操作的不一致

    答案:A
    解析:
    本题考查应试者对关系模式中主键、外键和模式分解及相关知识的掌握程度。
    从商品关系的函数依赖集F1可以导出商品号决定商品关系的全属性,所以商品号是商品关系的主键。
    从仓库关系的函数依赖集F2可以导出(仓库号,商品号)决定仓库关系的全属性,所以仓库关系的主键是(仓库号,商品号)。又由于商品号是商品关系的主键,故商品号是仓库关系的外键。
    仓库关系存在冗余、插入异常和删除异常,以及修改操作的不一致。例如,仓库号为"12"的商品有3种,其地址就要重复3次,如下表所示,故仓库关系存在冗余

  • 第11题:

    某公司销售数据库的商品、仓库关系模式及函数依赖集F1、F2如下:
    商品(商品号,商品名称,生产商,单价),F1={商品号→商品名称,商品号→生产商,商品号→单价)},商品关系的主键是(请作答此空)。仓库(仓库号,地址,电话,商品号,库存量),F2={仓库号→(地址,电话),(仓库号,商品号)→库存量}。仓库关系的主键是( ),外键是( )。
    仓库关系模式( ),为了解决这一问题,需要将仓库关系分解为( )。

    A.商品号
    B.商品号,商品名称
    C.商品号,生产商
    D.商品名称,生产商

    答案:A
    解析:
    本题考查应试者对关系模式中主键、外键和模式分解及相关知识的掌握程度。
    从商品关系的函数依赖集F1可以导出商品号决定商品关系的全属性,所以商品号是商品关系的主键。
    从仓库关系的函数依赖集F2可以导出(仓库号,商品号)决定仓库关系的全属性,所以仓库关系的主键是(仓库号,商品号)。又由于商品号是商品关系的主键,故商品号是仓库关系的外键。
    仓库关系存在冗余、插入异常和删除异常,以及修改操作的不一致。例如,仓库号为"12"的商品有3种,其地址就要重复3次,如下表所示,故仓库关系存在冗余

  • 第12题:

    单选题
    如果已经建立了主关键字为仓库号的仓库关系,现在用如下命令建立职工关系CREATE TABLE职工(职工号C(5)PRIMARY KEY,仓库号C(5)REFERENCE仓库,工资I)则仓库和职工之间的联系通常为(  )。
    A

    多对多联系

    B

    多对一联系

    C

    一对一联系

    D

    一对多联系


    正确答案: B
    解析:
    CREATE TABLE命令用来建立“职工”表,表中有3个字段:职工号、仓库号和工资,PRIMARY KEY说明了职工号是主关键字,REFERENCE说明通过引用仓库的仓库号与仓库建立联系。REFERENCE使用方法是:
    REFERENCE<表名2>[TAG<索引标识名>]
    当前表与<表名2>建立永久连接关系,<表名2>是父表的表名,如果以父表的主索引关键字建立永久关系,TAG<索引标识名>可以省略,否则不能省略,且父表不能是自由表。通常,一个仓库可以有多名员工,但一名员工只在一个仓库工作,仓库和职工之间的联系为一对多。

  • 第13题:

    将下面的SQL语句补充完整,完成“查询存放原材料数量最多的仓库号”的功能。

    SELECT仓库号

    FROM (e)

    (f);


    正确答案:(e)原材料 (f)GROUP BY 仓库号 HAVING SUM (数量)>=ANY(SELECT SUM(数量) FROM 原材料 GROUP BY 仓库号)
    (e)原材料 (f)GROUP BY 仓库号 HAVING SUM (数量)>=ANY(SELECT SUM(数量) FROM 原材料 GROUP BY 仓库号) 解析:本题考查应试者对SQL查询语句的掌握。完成本查询的思路:根据原材料表,按照“仓库号”分组,组内的记录对“数量”求和,分组求和得到的最大值对应的仓库号即为所求。参考答案中的子查询完成各仓库存储数量的求和,外部查询输出组内“数量”求和为最大值的仓库号。

  • 第14题:

    使用如下数据表,回答下列各题: 仓库表(仓库号,所在城市) 职工表(职工号,仓库号,工资) 其中,仓库号、所在城市和职工号字段为字符型,工资字段为数值型。 {TS}检索在广州仓库工作的职工记录,要求显示职工号和工资字段,正确的命令是( )。

    A. SELECT职工号,工资FROM职工表; WHERE仓库表.所在城市=”广州”

    B. SELECT职工号,工资FROM职工表; WHERE仓库表.仓库号=职工表.仓库号; AND仓库表.所在城市=”广州”

    C. SELECT职工号,工资FROM仓库表,职工表; WHERE仓库表.仓库号=职工表.仓库号; AND仓库表.所在城市=”广州”

    D. SELECT职工号,工资FROM仓库表,职工表; WHERE仓库表.仓库号=职工表.仓库号; 0R仓库表.所在城市=”广州”


    正确答案:C
    本题中,可通过仓库号字段将仓库表和职工表进行连接,从而查询仓库所在地是“广州”的记录。

  • 第15题:

    若某企业的数据库系统中有如下所示的员工关系和仓库关系,每个仓库可有多名员工,但只有一名负责人。员工关系(cmployee):

    仓库关系(warehouse):

    则创建仓库表结构的SQL语句为(58)。

    A.CREATE TABLE(employeeID CHAR(2)NOT NULL UNIQUE, name CHAR(30)NOT NULL, address CHAR(40), pricipallD CHAR(3));

    B.CREATE warehouse(warehouseD CHAR(2)PRIMARY KEY, name CHAR(30), address CHAR(40), pficipalID CHAR(3));

    C.CREATE TABLE warehouse(warehouselD CHAR(2)PRIMARY KEY, name CHAR(30)NOT NULL, address CHAR(40), pricipalID CHAR(3), FOREIGN KEY(priciPalID)REFERENCES employee(employeeID));

    D.CREATE TABLE warehouse(warehouselD CHAR(2), name CHAR(30)NOT NULL, address CHAR(40), pricipalID CHAR(3), PRIMARY KEY(warehouselD), FOREIGN KEY(employeeID)REFERENCES emplo


    正确答案:C
    解析:本题考查的是SQL语言的数据定义语句。
      SQL中使用CREATE TABLE命令来定义基本表,其—般格式为:CREATE TABLE<表名>(列名>数据类型>[列级完整性约束条件] 
      [,列名>数据类型>[列级完整性约束条件]]…
      [,表级完整性约束条件>]);
      由此可排除选项A和选项B,FOREIGNKEY中定义的是外键,该关键字后面的括号内应该写本表中的属性/属性组,它对应另外一个表中的主属性/属性组。本表中无 employeeID属性,故D错误。

  • 第16题:

    阅读以下说明,回答问题1~4。

    [说明]

    设某商业集团为仓库存储商品设计了三个基本表:

    仓库STORE(S,SNAME,SADDR),其属性是仓库编号、仓库名称和地址。

    存储SG(S,C,QUANTITY),其属性是仓库编号、商品编号和数量。

    商品GOODS(C,GNAME,PRICE),其属性是商品编号、商品名称和单价。

    现检索仓库名称为“莘庄”的仓库里存储的商品的编号和名称。

    试写出相应的关系代数表达式、元组表达式、关系逻辑规则和SELECT语句。


    正确答案:关系代数表达式为: πG#GNAME(σSNAME='莘庄'(STORE SG GOODS)) 元组表达式为: { t |((u)((v)((w)(COODS(u)∧SC(v)∧ STOBE(w) ∧u[1]=v[2]∧[1]:w[1]∧w[2] =莘庄'∧'t[1]=u[1]∧t[2]=u[2])} 关系逻辑规则如下: W(xy)(GOODS(xya)∧SG(bxc)∧ STORE(b莘庄'd) SELECT语句为: SELECT A.G#GNAME FROM GOODS AS A.SG AS BSTORE AS C WHERE A.C#:B.C# AND B.S#=C.S# AND SNAME='莘庄':
    关系代数表达式为: πG#,GNAME(σSNAME='莘庄'(STORE SG GOODS)) 元组表达式为: { t |((u)((v)((w)(COODS(u)∧SC(v)∧ STOBE(w) ∧u[1]=v[2]∧[1]:w[1]∧w[2] =莘庄'∧'t[1]=u[1]∧t[2]=u[2])} 关系逻辑规则如下: W(x,y)(GOODS(x,y,a)∧SG(b,x,c)∧ STORE(b,莘庄,'d) SELECT语句为: SELECT A.G#,GNAME FROM GOODS AS A.SG AS B,STORE AS C WHERE A.C#:B.C# AND B.S#=C.S# AND SNAME='莘庄':

  • 第17题:

    某超市的商品(商品号,商品名称,生产商,单价)和仓库(仓库号,地址,电话,商品号,库存量)两个基本关系如表1和表2所示。

    A.仓库关系的主键是(37),该关系没有达到第三范式的原因是(38); B.查询联想生产的激光打印机的总库存量的SQL语句如下: SELECT 商品名称, (39) FROM商品,仓库 WHERE (40) AND (41); C.若仓库关系的地址不能为空,请将下述仓库关系SQL语句的空缺部分补充完整。 CREATE TABLE仓库(仓库号CHAR(2), 地址 CHAR(20) (42), 电话 CHAR(20), 商品号 CHAR(5), 库存量 NUMERIC(5), (43), (44);

    A.仓库号

    B.商品号,地址

    C.仓库号,地址

    D.仓库号,商品号


    正确答案:D
    解析:本题考查应试者对范式、SQL语言的掌握程度。仓库关系的主键是(仓库号,商品号);仓库关系不属于第三范式的原因是因为仓库号可以决定非主属性(地址,电话),非主属性地址、电话存在对主键的部分函数依赖。

  • 第18题:

    如果已经建立了主关键字为仓库号的仓库关系,现在用如下命令建立职工关系CREATE TABLE职工(职工号C(5)PRIMARY KEY,仓库号C(5)REFERENCE仓库,开资I)则仓库和职工之间的联系通常为( )。

    A.多对多联系

    B.多对一联系

    C.一对一联系

    D.一对多联系


    正确答案:D
    D。【解析】职工号作为主键是唯一的,仓库号可重复,一个仓库可以有多名职工,但由于职工是主键,因此一名职工只能隶属于一个仓库,因此,仓库和职工是一对多的关系。

  • 第19题:

    某销售公司数据库的仓库关系模式为:仓库(仓库号,地址,电话,商品号,库存量),其函数依赖集F={仓库号→地址,仓库号→电话,(仓库号,商品号)→库存量}。以下描述正确的是()。

    A.“仓库号”为仓库关系的主键,该关系模式属于1范式

    B.“仓库号”为仓库关系的主键,该关系模式属于2范式

    C.“仓库号,商品号”为仓库关系的主键,该关系模式属于1范式

    D.“仓库号,商品号”为仓库关系的主键,该关系模式属于2范式


    参考答案C

  • 第20题:

    阅读下列说明和图,回答问题1至问题3。[说明]某企业决定开发一个企业仓储管理系统,由李工承担系统的设计工作。该系统的网络连接如图2-1所示。[图2-1]



    该企业有多个仓库,图2-1所示的中心数据库存储了各个仓库中每种货物的库存信息。每个仓库配备一台前端机,进出货物均由前端机辅助实现。管理员每天上班时,通过前端机从中心数据库的库存表中读取本仓库各种货物的库存数,每个仓库的当日业务数据也都暂存在前端机,当天业务结束后,再将前端机中存储的数据传输到主机进行存储与汇总。每个仓库可以存放多种货物,但同一种货物不能存放在不同的仓库中。每个仓库有多个管理员,但每个管理员只管理一个仓库。货物出库/入库时,由仓库管理员将货物的条码通过阅读器输入前端机中,货物数量的默认值为1,可以由管理员修改。前端机根据输入的货物信息,打印“出库/入库”清单。出库/入库单中同一种货物最多只出现一次,每份出库/入库单由流水号唯一标识。图2-2是一个出库单的实例。[图212]



    管理员:01105出库/入库:出库该系统处理业务的过程如下。①初始化:前端机根据仓库号从货物表中读取本仓库中每种货物的货物编码、库存量、货物名称和单价;②登记出库/入库信息:由前端机存储每一笔“出库/入库”记录;③汇总:在每个工作日结束前汇总当日各种货物的“出库/入库”量至日汇总表;④更新库存表:根据当日的汇总信息更新货物的库存。李工经过分析,设计出如图2-3所示的关系模式。[图2-3]出入库单(流水号,出入库标志,管理员号,时间)出入库记录(货物编码,数量,流水号)日汇总表(日期,货物编码,数量,出入库标志)仓库(仓库号,仓库名,仓库电话)管理员(管理员号,姓名,仓库号)货物((a) )注:时间格式为年-月-日时:分;日期格式为年-月-日。实体联系图的表示方法如图2-4所示,其中方框表示实体,菱形表示联系,联系的类型在实体与联系的边上标出。图2-5为与该系统对应的实体联系图。[图2-4]



    [图2-5]



    4、[问题1]根据题意,补充图2-3中(a)处的空缺,即货物关系模式的属性。
    5、[问题2]根据题意,补充图2-5中缺失的联系和联系的类型,使其成为完善的实体联系图。其中,联系名分别取名为联系1,联系2,联系3,……。
    6、[问题3]写出每种关系模式的主键,将其填写在答题纸的对应栏内。


    答案:
    解析:
    4、[问题1]货物编码,货物名称,单价,仓库号,库存量5、[问题2]




    其中,联系名中的序号可任意排列。 若联系3建立在出入库单和日汇总表之间也正确,或者同时建立两个联系也正确。
    6、[问题3]出入库单的主键:流水号出入库记录的主键:流水号,货物编码日汇总表的主键:日期,货物编码,出入库标志仓库的主键:仓库号管理员的主键:管理员号货物的主键:货物编码
    【解析】
    4、[解析] [问题1]货物关系模式要保存货物的信息,因此需要有货物编码,这是货物的唯一标识。由于其他的关系模式中未出现货物名称和单价,因此关系模式需要有单价和货物名称两项。因为每一种货物只能放在一个仓库中,因此需要有仓库号信息。每天前端机获取货物的库存信息,还需要有库存量属性。因此,(a)处应填写:货物编码,货物名称,单价,仓库号,库存量5、[解析] 根据题目说明部分的描述,一张出/入库单上有多条出库记录,而每条出库记录只能在一张出库单上显示。一条出库记录只能表示一种货物的出库或入库,而一种货物可以出、入库多次,因此出入库单与出入库记录之间的联系是一对多(1:n),货物与出入库记录之间的联系是一对多(1:n)。同时,每条出/入库记录只能汇总到一条日汇总表记录,而一张日汇总表记录对应了多条出入库记录,因此日汇总表与出入库记录之间的联系是一对多(1:n)。由于每种货物只能放在一个仓库中,而一个仓库可以存放多种货物,因此仓库与货物之间的联系是一对多(1:n)。每个仓库可以有多个管理员,而一个管理员只能管理一个仓库,因此仓库与管理员之间的联系是(1:n)。ER图见参考答案。6、[解析] 分析出入库单(流水号,出入库标志,管理员号,时间)的属性可知,只有流水号可以标识唯一的一张出入库单,因此出入库单的主键为流水号。在出入库记录(货物编码,数量,流水号)中,流水号加货物编码可以唯一地标识一条出入库记录,因此出入库记录的主键为流水号和货物编码。在日汇总表(日期,货物编码,数量,出入库标志)中,同一货物可在多条记录中出现,在同一时间,相同货物可在多条记录中出现,因此日期、货物编码和出入库标志标识一张日汇总表的一条记录,即日汇总表的主键为日期、货物编码和出入库标志。显然,从管理的角度出发,一个仓库号唯一标识一个仓库,每名管理员被分配唯一的管理员号,每种货物都有分配了唯一的货物编码。

  • 第21题:

    某公司销售数据库的商品、仓库关系模式及函数依赖集F1、F2如下:
    商品(商品号,商品名称,生产商,单价),F1={商品号→商品名称,商品号→生产商,商品号→单价)},商品关系的主键是( )。仓库(仓库号,地址,电话,商品号,库存量),F2={仓库号→(地址,电话),(仓库号,商品号)→库存量}。仓库关系的主键是( ),外键是( )。
    仓库关系模式( ),为了解决这一问题,需要将仓库关系分解为(请作答此空)。

    A.仓库1(仓库号,地址)和仓库2(仓库号,电话,商品号,库存量)
    B.仓库1(仓库号,地址,电话)和仓库2(商品号,库存量)
    C.仓库1(仓库号,电话)和仓库2(仓库号,地址,商品号,库存量)
    D.仓库1(仓库号,地址,电话)和仓库2(仓库号,商品号,库存量)

    答案:D
    解析:
    本题正确的答案D。为了解决仓库关系模式存在的问题需要进行模式分解,其中,选项A分解存在的问题是仓库2不属于第三范式,因为存在非主属性对码的部分函数依赖,即仓库号→电话。选项B分解存在的问题是分解有损连接,即分解的新关系模式仓库1和仓库2无法恢复到原关系。选项C分解存在的问题与A类同,分析略。
    选项D分解是即保持函数依赖,又无损连接,分解的结果如下:

  • 第22题:

    某公司销售数据库的商品、仓库关系模式及函数依赖集F1、F2如下:
    商品(商品号,商品名称,生产商,单价),F1={商品号→商品名称,商品号→生产商,商品号→单价)},商品关系的主键是( )。仓库(仓库号,地址,电话,商品号,库存量),F2={仓库号→(地址,电话),(仓库号,商品号)→库存量}。仓库关系的主键是( ),外键是(请作答此空)。
    仓库关系模式( ),为了解决这一问题,需要将仓库关系分解为( )。

    A.仓库号
    B.地址
    C.电话
    D.商品号

    答案:D
    解析:
    本题考查应试者对关系模式中主键、外键和模式分解及相关知识的掌握程度。
    从商品关系的函数依赖集F1可以导出商品号决定商品关系的全属性,所以商品号是商品关系的主键。
    从仓库关系的函数依赖集F2可以导出(仓库号,商品号)决定仓库关系的全属性,所以仓库关系的主键是(仓库号,商品号)。又由于商品号是商品关系的主键,故商品号是仓库关系的外键。
    仓库关系存在冗余、插入异常和删除异常,以及修改操作的不一致。例如,仓库号为"12"的商品有3种,其地址就要重复3次,如下表所示,故仓库关系存在冗余

  • 第23题:

    找出在仓库面积大于500的仓库中工作的职工号,以及这些职工工作所在的城市,正确的命令是

    A.SELECT职工号,城市FROM职工;WHERE(面积>500)OR(职工.仓库号=仓库.仓库号)
    B.SELECT职工号,城市FROM职工;WHERE(面积>500)AND(职工.仓库号=仓库.仓库号)
    C.SELECT职工号,城市FROM仓库,职工;WHERE(面积>500)OR(职工.仓库号=仓库.仓库号)
    D.SELECT职工号,城市FROM仓库,职工;WHERE(面积>500)AND(职工.仓库号=仓库.仓库号)

    答案:D
    解析: