数据库笔试题(答案)

2023-05-16

一、填空题(每题2分,共10分)

1. 索引字段值不唯一,应该使用的索引类型为(  普通索引  )

2. 只有满足联接条件的记录才包含在查询结果中,这种联接为( 内联接 )

3. E-R模型的组成包括那些元素( 实体 )( 属性 )( 关系 )

4. 事务所具有的特性有( 原子性 )( 一致性 )( 隔离性 )( 持久性 )

5、结构化程序设计的三种基本逻辑结构是顺序结构),(选择结构),(循环结构)

二、选择提  (每题1分,共20分)

1、在删除整表数据,同时保留表结构时,采用(  C )的效率比( A )要高;

A. delete B. drop table    C. truncate Table

2、数据库管理系统中,能实现对数据库中的数据进行插入/修改/删除的功能称为(C);

A.数据定义功能 B.数据管理功能 C.数据操作功能 D.数据控制功能

3、24、在关系模型中,实现"关系中不允许出现相同的元组"的约束是通过(B)。

  A:候选键   B:主键 C:外键 D:超键

4、数据库管理系统DBMS S是 ( D);

A.信息管理的应用软件 B.数据库系统+应用程序

C.管理中的数据库 D.管理数据的软件

5、关系数据库中,实现表与表之间的联系是通过 (B

  A、实体完整性规 B、参照完整性规则

  C、用户自定义的完整性 D、值域

6、设有部门和职员两个实体,每个职员只能属于一个部门,一个部门可以有多名职员,则部门与职员实体之间的联系类型(B)。

  A、m:n   B、1:m C、m:1 D、1:1

7、设有课程和学生两个实体,每个学生可以选修多个课程,一个课程可以有多名学生选修,则课程与学生实体之间的联系类型( A )。

  A、m:n   B、1:m C、m:1 D、1:1

8、如果一个班只能有一个班长,而且一个班长不能同时担任其它班的班长,班级和班长两个实体之间的关系属于(D

  A、m:n   B、1:m C、m:1 D、1:1

9、索引字段值不唯一,应该选择的索引类型为( B )。

  A:主索引  B:普通索引 C:候选索引 D:唯一索引

 

10、如果指定参照完整性的删除规则为"级联",则当删除父表中的记录时( C )。

   A:系统自动备份父表中被删除记录到一个新表中

   B:若子表中有相关记录,则禁止删除父表中记录

  C:会自动删除子表中所有相关记录

   D:不作参照完整性检查,删除父表记录与子表无关

 

11、设有两个数据库表,父表和子表之间是一对多的联系,为控制子表和父表的关联,可以设置"参照完整性规则",为此要求这两个表( B )。

  A:在父表连接字段上建立普通索引,在子表连接字段上建立主索引

  B:在父表连接字段上建立主索引,在子表连接字段上建立普通索引

  C:在父表连接字段上不需要建立任何索引,在子表连接字段上建立普通索引

  D:在父表和子表的连接字段上都要建立主索引

 

12、把实体-联系模型转换为关系模型时,实体之间多对多联系在模型中是通过(C_。

   A:建立新的属性来实现 B:建立新的关键字来实现

   C:建立新的关系来实现 D:建立新的实体来实现

 

13、用树形结构来表示实体之间联系的模型称之为( B)

A. 关系模型 B. 层次模型 C.网状模型  D. 数据模型

14、SQL语句中修改表结构的命令是(  C  )_。

  A:MODIFY TABLE B:MODIFY STRUCTURE

  C:ALTER TABLE D:ALTER STRUCTURE

15 、用SQL语句建立表时将属性定义为主关键字,应使用短语( B )。

  A:CHECK B:PRIMARY KEY

  C:FREE D:UNIQUE

16、SQL实现分组查询的短语是 ( B )。

  A:ORDER BY B:GROUP BY C:HAVING D:ASC

17、数据库系统中采用封锁技术的目的是为了保证( A

A. 数据的一致性 B. 数据的可靠性 C. 数据的完整性 D. 数据的安全性

 

18、在数据库设计中,表示用户业务流程的常用方法是(A

A. DFD B. 程序流程图 C. E-R图 D. 数据结构图

 

19、为"歌手"表增加一个字段"最后得分"的 SQL 语句是(A

A)ALTER TABLE 歌手 ADD 最后得分 F(6,2)

B)ALTER DBF 歌手 ADD 最后得分 F 6,2

C)CHANGE TABLE 歌手 ADD 最后得分 F(6,2)

D) CHANGE TABLE 学院 INSERT 最后得分

 

20、插入一条记录到"评分"表中,歌手号、分数和评委号分别是"1001"、9.9 和"105",

  正确的 SQL 语句是(C)

A)INSERT VALUES("1001",9.9, "105")INTO;

       评分(歌手号,分数,评委号)

B)INSERT TO 评分(歌手号,分数,评委号);

       VALUES("1001",9.9,"105")

C)INSERT INTO 评分(歌手号,分数,评委号);

       VALUES("1001",9.9,"105")

D)INSERT VALUES("100"9.9"105")TO;

       评分(歌手号,分数,评委号)

 

三、SQL基础题( 共30分)

设教学数据库Education有三个关系:

学生关系S(SNO,SNAME,AGE,SEX,SDEPT);学习关系SC(SNO,CNO,GRADE);课程关系C(CNO,CNAME,CDEPT,TNAME)

查询问题:

1)检索计算机系的全体学生的学号,姓名和性别;  3分

2)检索学习课程号为C2的学生学号与姓名;       3分

3)检索选修课程名为“DS”的学生学号与姓名;    3分

4)检索选修课程号为C2或C4的学生学号;        3分

5)检索至少选修课程号为C2和C4的学生学号;    3分

6)检索不学C2课的学生姓名和年龄; 5分

7)检索学习全部课程的学生姓名;        5分

8)查询所学课程包含学生S3所学课程的学生学号。 5分

 

1)检索计算机系的全体学生的学号,姓名和性别;

SELECT Sno,Sname,Sex

FROM S

WHERE  Sdept =’CS’;

 

(2)检索学习课程号为C2的学生学号与姓名;

1.SELECT  Sno,Sname FROM  S WHERE Sno  IN ( SELECT  Sno FROM  SC WHERE Cno=‘C2’)

2.SELECT  S.Sno,Sname FROM S,SC WHERE S.Sno=SC.Sno  AND    SC.Cno=‘C2’;

 

 3)检索选修课程名为“DS”的学生学号与姓名

    本查询涉及到学号、姓名和课程名三个属性,分别存放在S和C表中,但S和C表没有直接联系,必须通过SC表建立它们二者的联系。 C →  SC → S

基本思路:

1)首先在C表中找出“DS”课程的课程号Cno;

2)然后在SC表中找出Cno等于第一步给出的Cno 集合中的某个元素Cno;

3)最后在S关系中选出Sno等于第二步中Sno 集合中某个元素的元组,取出Sno 和Sname送入结果表列。

SELECT Sno,Sname

FROM S

WHERE  Sno  IN(SELECT Sno FROM SC WHERE Cno  IN (SELECT Cno FROM C WHERE  Cname=‘DS’));

 

 

(4)检索选修课程号为C2或C4的学生学号;

SELECT  Sno

FROM SC

WHERE  Cno=‘C2’  OR Cno=‘C4’;

 

 

(5)检索至少选修课程号为C2和C4的学生学号;

SELECT  Sno

FROM SC  X,SC  Y

WHERE  X.Sno=Y.Sno  AND  X.Cno=‘C2’ AND Y.Cno=‘C4’ ;

 

(6)检索不学C2课的学生姓名和年龄;

A.SELECT  Sname   FROM  S WHERE Sno  NOT IN ( SELECT  Sn    FROM  SC WHERE Cno=‘C2’);

或者

B.SELECT  Sname FROM  S WHERE  NOT EXISTS ( SELECT  * FROM  SC WHERE SC.Sno=S.Sno AND  Cno=‘C2’);

 

(7)检索学习全部课程的学生姓名;

在表S中找学生,要求这个学生学了全部课程。换言之,在S表中找学生,在C中不存在一门课程,这个学生没有学。

SELECT Sname

FROM  S

WHERE  NOT EXISTS

 SELECT *

     FROM C

 

 

四、简答题(每题5分,共20分,其中1,2 任选一题,其他必做题)

1. Oracle的索引有几种,各有何用途

唯一索引索引列的所有值都只能出现一次,即必须唯一

非唯一索引索引列的值可以重复

函数索引:保存了数据列基于function返回的值

反向索引:转了索引码中的字节,是索引条目分配更均匀,用于减少索引叶的竞争。

位图索引适合与决策支持系统;做UPDATE代价非常高;非常适合OR操作符的查询;基数比较少的时候才能建位图索引

域索引:主要用于多媒体数据;

 

2、mysql存储引擎常用的有3种,分别是什么,各自分别有什么特点,应用场景是哪些?

 

1.1 innoDB   

优点: 支持事务管理,崩溃修复能力和并发控制,支持自动增长列,支持外键;

缺点: 读写效率较差,占用数据空间大;

应用场景:适合于对事务完整性要求高,要求并发控制,需要频繁更新,删除等操作的数据库;

1.2 MyISAM

优点: 占用空间小,处理速度快;

缺点: 不支持事务的完整性和并发性;

应用场景:适用于表主要用于插入新纪录和读出记录,对应用完整性和并发性要求低;

1.3 MEMORY存储引擎

优点: 处理速度快;

缺点: 数据易丢失,生命周期短;

应用场景: 适用于读写速度快,对数据安全性要求低,使用相对较小的数据库表;

2. 请描述char,varchar,nvarchar的区别

CHAR存储定长数据

VARCHAR存储变长数据

NVARCHAR存储变长数据, Unicode编码,支持多语言

 

3. 何为范式,有几种,试列举并简要描述之

设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小

第一范式(1NF)实体中的某个属性有多个值时,必须拆分为不同的属性

第二范式(2NF)要求数据库表中的每个实例或记录必须可以被唯一地区分

第三范式(3NF)要求一个关系中不包含已在其它关系已包含的非主关键字信息

 

4. 试论Oracle与SQL Server, MYSQL 三类之区别

此题答案可能比较广泛,故不列出标准

 

 

五、综合题(每题10分,共30分,第1题必做,其余任选两题)

--以下各题可能存在多种答案,故不列出标准

1. 请以任何语言实现1+2+3+…+100

 

2. 请以任何语言实现1-100之间的

 

3. 门外三个开关分别对应室内三盏灯,线路良好,在门外控制开关时候不能看到室内灯的情况,现在只允许进门一次,确定开关和灯的对应关系?

 

4. 烧一根不均匀的绳,从头烧到尾总共需要1个小时。现在有若干条材质相同的绳子,问如何用烧绳的方法来计时一个小时十五分钟呢?

 

5. 如果你有无穷多的水,一个3公升的提捅,一个5公升的提捅,两只提捅形状上下都不均匀,问你如何才能准确称出4公升的水?

 

6. 12个球一个天秤,现知道只有一个和其它的重量不同,问用天秤怎样称才能用三次就找到那个球。(注意此题并未说明那个球的重量是轻是重,所以需要仔细考虑)

 

7. 在9个点上画10条直线,要求每条直线上至少有三个点?

8. 在一天的24小时之中,时钟的时针、分针和秒针完全重合在一起的时候有几次?都分别是什么时间?你怎样算出来的?

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数据库笔试题(答案) 的相关文章

随机推荐

  • linux驱动模块加载错误(insmod: can‘t insert ‘xxx.ko‘: invalid module format)的原因之一:内核或者配置不一致

    问题现象 xff1a insmod方式加载某个驱动ko模块 xff0c 提示insmod can 39 t insert 39 xxx ko 39 invalid module format 问题原因之一 xff08 也可能是概率较大的一个
  • Python中的按位运算符和如何表示各进制数

    python中的按位运算符 在Python中 xff0c 按位运算符用于对二进制数中的每一位进行操作 Python中的按位运算符包括以下几个 xff1a 1 按位与 xff08 amp xff09 xff1a 对操作数的每一个二进制位执行逻
  • Python打包函数zip——整理电影票房(学习笔记)

    文章目录 1 zip函数2 案例演示 1 zip函数 zip 函数用于将可迭代的对象作为参数 xff0c 将对象中对应的元素打包成一个个元组 xff0c 然后返回由这些元组组成的列表 如果各个迭代器的元素个数不一致 xff0c 则返回列表长
  • Conda 使用

    常用命令 查看已创建的虚拟环境 conda info envs C Users xxx gt conda info envs conda environments base E Anaconda3 cusum E Anaconda3 env
  • lz4压缩

    收集的资料 xff1a https gitee com zhengnianli EmbedSummary lz4 在我们嵌入式开发中 xff0c 通信中有些数据量较大的数据可以压缩之后再进行传输 压缩算法有很多 xff0c 常用的有如下几种
  • MySQL gbk中文md5加密

    在MySQL中自带md5 函数可以进行md5加密 xff0c 但是加密字段默认为utf 8格式 select md5 39 这是一串加密数据 39 输出结果 xff1a ca53cf805e403f238b60935e8b68f0f3 可以
  • crosstab 、pivot_table 、groupby比较

    所用数据前五条 目标 生成数据透视图 crosstab pd crosstab index 61 data 39 admit 39 columns 61 data 39 prestige 39 以上代码用于计数 xff0c 如要展示其他数据
  • numpy 矩阵创建

    mat xff1a 分号用于隔开数据 matrix 将ndarray 转为矩阵 bmat 将小矩阵合并成大矩阵 矩阵特有属性与说明 属性 说明 T 返回自身转置H返回自身的共轭转置I返回自身的逆矩阵A返回自身数据的二位数组 xff08 没有
  • numpy 矩阵复制

    纵向复制 横向复制
  • excel 中“万”字处理

    61 IF ISNUMBER FIND 34 万 34 M2 SUBSTITUTE M2 34 万 34 34 34 10000 M2 函数中的3个M2为需要处理单元格所在位置 结果展示如下
  • python groupby 不同列聚合

    dataframe 在groupby后有时候需要对不同的列按照不同的聚合方式聚合 聚合方法如图 xff1a num agg中输入各列数据的聚合方式 可用于多条件groupby
  • dataframe 中万字处理

    df 39 点赞 39 apply lambda x float str x replace 39 万 39 39 39 10000 if 39 万 39 in str x else x astype int
  • VSCode之CMake使用

    一 准备工作 下载 对应平台的VScode安装C 43 43 扩展 安装Cmake 工具扩展 并行需要安装 Cmake xff0c 编译器 xff0c 调试器和构建工具 cmake version 虽然咱们使用VSCode编辑代码 xff0
  • 运行apt-get update后出现错误

    一般错误是如下两种 xff1a 1 一般如果你的ubuntu是中文的设定了地区的 xff0c 错误是如下 xff1a W 无法下载http ppa launchpad net deluge team ppa ubuntu dists nat
  • 表达式求值(含括号的复杂运算)

    具体解析看注释 span class token macro property span class token directive keyword include span span class token string lt bits
  • HttpClient模拟登录总结(不能跳转及跳转后不能登录)

    最近在写一个模拟登录的程序 xff0c 从网上找了很多资料 xff0c 都没能有一个完整的例子可成功跳转登录后的页面 xff0c 现把我的代码拿来与大家分享一下 xff0c 希望可以帮到一些人吧 其原理是 xff1a 通过HttpClien
  • JestonTX2更新软件源

    JestonTX2刷机后需要更新软件源 更新软件源后 xff0c 才可以正常安装QT等软件 软件源记录文件放在以下文件中 cd etc apt source list 可以使用gedit打开此文件 sudo gedit etc apt so
  • Kali的下载安装详细过程

    1 什么是Kali xff1f Kali Linux是专门用于渗透测试的Linux操作系统 2 打开官网 Kali Linux Penetration Testing and Ethical Hacking Linux Distributi
  • 本地搭建GitLab地址不一致问题

    1 本地虚拟机用docker搭建Gitlab project clone 地址如下 xff1a 实际地址如下 xff1a http 192 168 56 51 root apacha backend 本来没在意这个问题 xff0c clon
  • 数据库笔试题(答案)

    一 填空题 每题2分 xff0c 共10分 1 索引字段值不唯一 xff0c 应该 使用 的索引类型为 普通索引 2 只有满足联接条件的记录才包含在查询结果中 xff0c 这种联接为 内联接 3 E R模型的组成包括那些 元素 实体 属性