作品相关 SQL单元测试3
(闭卷)
一、填空题(10*2分)
1.“描述事物”的符号记录称为数据。
2.数据库管理系统主要功能包括以下几个方面:“数据定型”、“数据操控制”、
数据库的运行管理、数据库的建立和维护。
3.数据的静态特性包括三方面:数据的基本结构,数据类型及取值范围(约束条件),数据之间的联系与制约关系(约束)。
4.数据模型是对现实世界的信息的抽象。
5.关系数据库系统中,体现实体完整性的约束是主码约束,体现参照完整性约束的是外码约束。
6.数据定义功能中,命令动词有Create、Alter和DROP。
二、选择题(10*2分)
1.SQL语言,又称作(B)
A.查询化结构语言B.结构化查询语言
C.结构化语言查询D.语言化结构查询
2.在定义一个整数时,给32768.55最精确的数据类型是(B)
A.bigintB.intC.tinyintD.real
3.在E-R图中,它的联系是(D)
A.一对一联系B.一对多联系C.多对多联系D.以上都是
4.组织层数据模型有4种,其中最为重要且最具影响力的是(C)
A.层次数据模型B.网络数据模型C.关系数据模型D.面向对象数据模型
5.用于实现定义、删除和修改数据库中对象的功能是(A)
A.数据定义B.数据查询C.数据操作D.数据控制
6.可变长度的字符串数据类型是(D)
A.charB.ncharC.vacharD.varchar
7.某人的生日为1983-03-03,计算此人实际年龄的正确函数是(D)
A.DATEDIFF(YY,’1985-05-05’,GERDATE())
B.DATEADD(YY,’1983-03-03’,GETDATE())
C.DATEPART(YY,’1983-03-03’,GETADTE())
D.DATEDIFF(YY,’1983-03-03’,GETDATE())
8.删除一个表,正确的SQL语句是(C)
A.DROP表名B.ALTERTABLE表名
C.DROPTABLE表名D.ALTER表名
9.如果一个表的某列数据类型,该列已被其他表引用,以下说法正确的(A)
A.不能被修改B.修改与引用表保持一致
C.修改类型不受限制D.以上说法都不对
10.一个表已经在数据库中有定义,且定义了一列为主码。现在需要增加另一列,与原主码共同组成主码,正确的修改方法是(C)
A.用语句增加一列主码ALTERTABLEADD新列名PRIMARYKEY
B.先删除原有主码,再增加新列为主码ALTERTABLE表名DROP主码名
ADD新列名PRIMARYKEY
C.ALTERTABLE表名DROP主码名GO
ALTERTABLE表名ADD(原列名,新列名)PRIMARYKEY
D.ALTERTABLE表名DROP主码名GO
ADD(原列名,新列名)PRIMARYKEY
三、名词解释
1.数据库(4分)
答:数据库是指长期储存在计算机内的、有组织的、可共享的数据集合。
2.实体(4分)
答:实体是现实世界中具有某些共同特性的同类对象的集合。
3.候选码(4分)
若一个关系中的某属性(组)的值能惟一地标识一个元组,则称该属性(组)为候选码。
四、简答题
1.数据库系统由哪几部分组成?(5分)
答:应用程序、应用开发工具、数据库管理系统、计算机系统平台、数据库。
2.数据库系统的三级模式是哪几个?它们的定义又是什么?(7分)
答:三级模式是外模式、逻辑模式、内模式。外模式是数据库用户能看见和使用的局部数据的逻辑结构和特征的描述;逻辑模式是一个数据库中所有数据的全局逻辑结构和特征的总体描述;内模式是数据的物理结构和存储方式的描述,是数据在数据库中的表示方式。
3.数据独立性有哪几类?他们分别由什么来完成?(5分)
答:数据可分为物理独立性和逻辑独立性。物理独立性由逻辑模式/内模式的映像完成;逻辑独立性由外模式/逻辑模式映像完成。
4.简述数据库系统的优点。(7分)
答:(1)应用程序的设计开发变得较容易,可移植性明显增强
(2)提高了数据的独立性,即逻辑独立性和物理独立性
(3)提高了数据的安全保密性和正确性
(4)改善了数据的完整性约束
(5)可实现多用户并发操作
(6)实现了数据的完全共享
(7)有利于数据库的维护、管理和重组
五、问答题(20分,10+10分)
1.绘制工厂管理信息系统的E-R图,其中条件如下:
A.一个部门拥有许多职工
B.职工当中又分为普通员工和领导
C.许多个职工必须在规定的时间内生产许多产品
D.当然,每个职工就要对相应的产品负责
它们的属性如下:
部门:部门号,部门名称,负责人,联系电话;
职工:职工号,姓名,性别,所属部门,职称,联系电话;
产品:产品号,产品名称,负责人,数量。
部门名称、联系电话、负责人、部门号-部门-所属-职工-领导、职工号、姓名、性别、负责-产品=数量、负责人、产品名称、产品号
生产=无数
2.使用SQL语句创建一个显示名为工厂管理信息系统的数据库,数据库的其他属性可以自己定义。然后表和上题中的实体一致,表中的字段就是实体的各个属性,数据类型自己定义,越精确越好。在创建表的同时并给他们创建约束:部门表中,主码为“部门号”,“部门名称”具有惟一性,“负责人”不能为空。职工表,主码为“职工号”;并给“所属部门”添加外码,关联为部门表的“部门名称”字段。产品表,主码为“产品号”;“产品名称”不能为空;“负责人”不能为空,且是外码,关联职工表中的“职工号”;“数量”不能为空。
2.解答:
--数据库的创建
Createdatabase工厂管理信息系统
Onprimary
(name=management,
Filename=“D:\management.mdf”,
Size=3MB,
Maxsize=50MB,
Filegrowth=2MB)
Logon
(name=management_log,
Filename=“D:\management.ldf”,
Size=1MB,
Maxsize=10MB,
Filegrowth=30%)
--表的创建
Use工厂管理信息系统
Go
Createtable部门(
部门号char(8)primarykey,
部门名称varchar(20)unique,
负责人varchar(10)notnull,
联系电话char(13))
Createtable职工(
职工号char(8)primarykey,
姓名varchar(10),
性别char(男),
所属部门varchar(20)foreignkeyreferences部门(部门名称),
职称char(4),
联系电话char(13))
Go
Createtable产品(
产品号char(6)primarykey,
产品名称varchar(20),
负责人char(8)foreignkeyreferences职工(职工号),
数量int
)