日常数据库练习题

提示:好多小伙伴反映,直接看到答案不太好,那我把答案的颜色设置为透明,答案位置还是在题目后面,需要鼠标选中才能看见(操作如下图),同时为了手机端的小伙伴(手机端也可以长按选中查看),我还会把所有答案放到文章最下面,希望给每天进步一点点的小伙伴更好的体验。
在这里插入图片描述

1、下列四项中,不属于数据库系统的特点的是( )
正确答案: C 你的答案: C (正确)
数据结构化
数据由DBMS统一管理和控制
数据冗余度大
数据独立性高

题解:
1.数据结构化
2.数据的共享性高,冗余度低,易扩充
3.数据独立性高
4.数据由DBMS统一管理和控制

2、一个学生可以同时借阅多本书,一本书只能由一个学生借阅,学生和图书之间为 ( ) 联系。
正确答案: B 你的答案: B (正确)
一对一
一对多
多对多
多对一

题解:
送分题,一个学生对应多本书 ,一对多

3、层次模型可以表示多对多的联系。请问这句话的说法是正确的吗?
正确答案: B 你的答案: B (正确)
正确
错误

题解:
层次模型表示一对多

4、下列说法中,不属于数据模型所描述的内容是 ______ 。
正确答案: C 你的答案: C (正确)
数据结构
数据操作
数据查询
数据约束

题解:
数据模型的组成要素有:
1.数据结构,描述数据库的组成对象以及对象之间的联系,数据结构是所描述的对象类型的集合,是对系统静态特征的描述
2.数据操作,是指对数据库中各种对象的实例允许执行的操作的集合,主要有查询和更新。
3.数据的完整性约束条件,是一组完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的之约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。

5、Access是一个()。
正确答案: C 你的答案: C (正确)
数据库
关系数据库
关系数据库管理系统
数据库系统

题解:
access是一个dbms(database manager system)数据库管理系统

6、数据库的( )是指数据的正确性和相容性。
正确答案: B 你的答案: B (正确)
安全性
完整性
并发控制
恢复

题解:
数据库完整性(Database Integrity)是指数据库中数据在逻辑上的一致性、正确性、有效性和相容性。

7、" 基于 “” 学生 - 选课 - 课程 “” 数据库中如下三个关系:
S ( S# , SNAME , SEX , AGE ), SC ( S# , C# , GRADE ), C ( C# , CNAME , TEACHER )
查询选修了课程号为 ‘C2’ 的学生号和姓名,若用下列 SQL 的 SELECT 语句表达时,哪一个是错误的?
正确答案: A 你的答案: A (正确)
SELECT S.S#,SNAME FROM S WHERE S.S# = (SELECT SC.S# FROM SC WHERE C# = 'C2' )
SELECT S.S#,SNAME FROM S,SC WHERE S.S# = SC.S# AND C# = 'C2'
SELECT S.S#,SNAME FROM S,SC WHERE S.S# = SC.S# AND C# = 'C2' ORDER BY S.S#
SELECT S.S#,SNAME FROM S WHERE S.S# IN (SELECT SC.S# FROM SC WHERE C# ='C2' )

题解:
在这里插入图片描述

8、数据库管理系统的工作不包括( )。
正确答案: C 你的答案: C (正确)
定义数据库
对已定义的数据库进行管理
为定义的数据库提供操作系统
数据通信

题解:
数据库管理系统要做的工作通常有以下四个方面:①描述数据库;②管理数据库;③维护数据库;④ 数据通讯。

9、设关系 R 和 S 的属性个数分别为 r 和 s ,则 (R×S) 操作结果的属性个数为 ( )
正确答案: A 你的答案: A (正确)
r+s
r-s
r×s
max(r,s)

题解:
小坑,注意问的是属性个数,结果的属性个数等于x+y,结果的元组个数等于x*y
笛卡尔乘积是指在数学中,两个集合X和Y的笛卡尓积(Cartesian product),又称直积,表示为X × Y,第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员。结果的属性个数等于x+y,结果的元组个数等于x*y.
举个例子,假设集合R={a, b},集合S={0, 1, 2},则两个集合的笛卡尔积为{(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2)}。在这个例子中,元组即为(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2),共六个。而属性为a,b,0,1,2,共5个,即为r+s。

10、关于数据库索引,以下说法错误的是?
正确答案: A B C 你的答案: A B C (正确)
针对某些字段建立索引,能够有效的减少相关数据库表的磁盘空间占用;
针对某些字段建立索引,能够有效的提升相关字段的读与写的效率;
常见数据库管理系统,通常使用hash表来存储索引;
数据库索引的存在,可能导致相关字段删除的效率降低;

题解:
A.索引需要额外的磁盘空间,为一索引页,包含着索引记录,每条索引记录包含键值和逻辑指针。
B. 不会提升写效率
C.B+树
D.正确,删除相关字段需要动态维护索引,故效率降低。

答案汇总:
1、正确答案: C
2、正确答案: B
3、正确答案: B
4、正确答案: C
5、正确答案: C
6、正确答案: B
7、正确答案: A
8、正确答案: C
9、正确答案: A
10、正确答案:A B C

以上部分题解来自牛客评论区,感谢评论区大佬的解释。

每天进步一点点!
不进则退!

看完如果对你有帮助,感谢点赞支持!
如果你是电脑端,看到右下角的 “一键三连” 了吗,没错点它[哈哈]

在这里插入图片描述
加油!

共同努力!

Keafmd

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
sql语句来练习题。1. 写出创建图书表的SQL语句。 Create table book( Book_id char (10) primary key, (主码primary key) Name varchar(30) not null, (非空not null) Author varchar(20) Publish varchar(30) Price decimal(6,2) (,前表示有几位有效数字 ,后表示小数部分有几位) ) 2. 将编号为“NEU1105101”的图书的定价改为50元。 Update book (修改数据update语句) Set price=50 Where book_id=‘NEU1105101’ 3. 查询所有男性读者的姓名和出生日期。 Select name.birthdate From reader Where sex=‘男’ 4. 查询图书表中出现过哪些出版社,每个出版社名称只显示一次,并且按照出版社名称升序排列显示。 Select publish From book Order by publish ASC (按照出版社升序排列显示) 5. 查询借阅过定价介于20元到40元(包括两个边界值)图书的读者的姓名。 Select Name (建立多表连接查询) From borrow join book on borrow.book_id=book.book_id Join reader on borrow.reader_id=reader.readerid Where price >=20 and price <=40 6. 查询每个读者借阅过图书的数量,只显示借阅过图书的读者的读者编号以及借书数量。 Select count(book_id),reader_id (建立多表连接查询) From borrow join book on borrow.book_id=book.book_id Join reader on borrow.reader_id=reader.readerid Group by reder_id 7. 如果有一个名为user001的用户,请写出给他分配对图书表进行数据修改的权限的SQL语句。 Grant update on book to user001 (授权grant语句) 8. 创建一个名为view001的视图,其中包含每个出版社的名称、该出版社出版图书的数量、该出版社出版图书的最高定价、以及该出版社出版图书的最低定价。 Create view view001 (创建视图格式,聚集函数) AS Select publish,count(book_id),MAX(price),MIN(price) From student 9. 显示借阅过书名包含“数据库”字样的女性读者的编号和姓名。 Select Name,reader_id (建立多表连接查询) From borrow join book on borrow.book_id=book.book_id Join reader on borrow.reader_id=reader.readerid Where name like ‘%数据库%’ 10. 显示出版图书数量超过100本的出版社的名称及其出版图书的数量。 Select count(book_id),publish (查询图书数量,出版社名称) From book Group by publish (根据出版社的名称来分组) Having count(book_id)>100 (条件约束) 这里用having 不用where 原因是它不能和聚集函数一起使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值