常见的 DBMS 面试问题
为了让您熟悉与数据库管理系统相关的工作面试中可能被问到的问题类型,我们将在这篇文章 (DBMS) 中探讨最重要的 DBMS 面试问题。
Q1)DBMS 有哪些用途?
DBMS 或数据库管理系统的首字母缩略词代表主要功能围绕数据的应用系统。该系统使用户能够设计、保存、检索和更新数据以及有关存储在数据库中的数据的信息。
Q2)"数据库"一词指的是什么?
简单地说,数据库是经过整理的数据集合,以便用户可以轻松访问、管理和提交数据。
Q3) 为什么建议使用 DBMS?列出它的一些主要优点以进一步解释。
以下是 DBMS 的一些主要优点
受控冗余 - DBMS 可以防止保存重复数据,因为所有数据都保存在单个数据库中,从而消除了数据库内的冗余。
数据共享 - 由于所有用户和各种应用程序将共享同一个数据库,因此使用 DBMS 也可以同时在多个用户之间共享数据。
备份和恢复功能 - 通过提供称为"备份和恢复"的功能,该功能会自动生成数据备份并根据需要恢复数据,DBMS 减轻了重复生成数据备份的痛苦。
完整性约束的应用 - 必须对数据应用完整性约束,以便将精炼数据保存在数据库中并由DBMS。
数据独立性 - 数据独立性基本上意味着您可以修改数据的结构,而无需更改任何底层应用程序的设计。
Q4) 为什么在 DBMS 中使用规范化?
基于其独特的功能依赖关系和主键以满足特定标准的关系模式分析称为规范化。
属性包括:
减少数据的冗余。
为了减少插入、删除和更新异常
Q5)DBMS 支持哪些不同类别的语言?
在 DBMS 中,基本上有三种不同的语言,如下所示
DDL - 数据定义语言或 DDL 是 SQL 查询的集合,例如 CREATE、ALTER、TRUNCATE、DROP 和 RENAME,用于描述数据库和架构结构。
DCL - 数据控制语言 (DCL):DCL 是一系列 SQL 查询,例如 GRANT 和 REVOKE,用于管理用户对数据库的访问。
DML - 数据操作语言或 DML 用于执行数据库操作,包括使用一系列 SQL 插入、删除和更新数据查询,例如选择、插入、删除和更新。
Q 6) 为什么使用 SQL?
首字母缩略词 SQL 代表结构化查询语言,它用于通过输入、更新和/或更改数据与关系数据库交互。
Q 7) 解释主键和外键的概念。
在数据库表中,主键用于唯一标识每条记录,而外键(一个表中的特定字段或一组字段,用作另一个表的主键)主要用于将两个或多个表连接在一起。
Q8) 唯一键和主键之间的主要区别是什么?
下面显示了一些变化:
主键和唯一键之间的主要区别在于主键永远不能包含空值,但唯一键可以。
可以有一个表中可以有多个唯一键,但每个表只能有一个主键。
Q9)"子查询"这个短语在 SQL 中是什么意思?
答案 − 子查询本质上是包含在另一个查询中的查询;它也被称为内部查询,因为它包含在外部查询中。
问题 10) DROP 命令有什么用,DROP、TRUNCATE 和 DELETE 命令之间有什么区别?
可以使用 DDL 命令"DROP"从数据库中删除或删除表、数据库、索引或视图。
DROP、TRUNCATE 和 DELETE 命令之间有三个主要区别:
可以使用 DDL 命令 DROP 和 TRUNCATE 从数据库中删除表,一旦表被销毁,所有相关权限和索引也将被删除。这两个过程无法撤消,因此只有在绝对需要时才应使用它们。
另一方面,DELETE 命令是一个 DML 命令,也可用于从表中删除行。
建议将"WHERE"子句与 DELETE 命令结合使用,以防止整个表从数据库中被破坏。
问题 11) UNION 和 UNION ALL 之间的主要区别是什么?
当连接来自两个或多个表的数据时,使用 UNION 和 UNION ALL;UNION 消除重复的行并在合并表中的数据后选择不同的行;UNION ALL 不会这样做;它只是从表中选择所有数据。
Q12) 解释 DBMS 中 ACID 特性的概念?
原子性、一致性、隔离性和持久性特征的组合称为 ACID 属性。这些特性使多个人能够以安全可靠的方式共享数据。
原子性 - 这是基于"全有或全无"的理念,本质上意味着如果发生数据库更改,则除了用户和应用程序之外的所有人都应该可以访问它,或者除了他们之外的任何人都不能访问它。
一致性 - 这保证了数据库的一致性在任何内部事务期间和之后都得到保持。
隔离性 - 顾名思义,此功能指定发生的每个事务都与其他事务隔离。例如,已启动但尚未完成的事务应与其他事务隔离,以便其他事务不受其影响。
持久性 - 此功能指定数据应始终处于持久状态,这意味着即使系统发生故障或重新启动,任何已提交的数据也应以相同状态访问。
问题 13:DBMS 相关子查询有什么作用?
子查询有时称为嵌套查询或在另一个查询中编写的查询。当对外部查询的每一行执行子查询时,子查询称为相关查询。
非相关子查询的示例是 -
SELECT * from EMP WHERE 'AJITESH' IN (SELECT Name from DEPT WHERE EMP.EMPID=DEPT.EMPID);
在这种情况下,内部查询不会针对外部查询的每一行运行。
Q 14) 解释 DBMS 中的实体、实体类型和实体集。
实体是现实中独立存在的任何事物、地点或对象,其详细信息可以保存在数据库中。例如,任何个人、书籍等。
实体类型是一组具有相似属性的实体。例如,STUDENT 表包含行,每行都是一个实体,用于存储学生的姓名、年龄和学生 ID。因此,STUDENT 是一种具有相同属性的实体类型。
具有相同类型的实体的分组是实体集。一个例子是公司员工组。
Q 15) DBMS 中有哪些不同的抽象级别?
在 DBMS 中,有三层数据抽象。
它们包括
物理级别 - 物理级别描述数据如何保存在数据库中,是数据抽象的最低级别。
逻辑级别 - 以下数据抽象级别称为逻辑级别,描述数据库中保存的数据类型和数据之间的连接。
视图级别 - 最高级别的数据抽象称为视图级别,仅显示或说明数据库的一部分。
Q16)DBMS 中有哪些完整性准则?
DBMS 有两个主要的完整性规则,精确。
如下
实体完整性:声明一个关键原则,即主键的值永远不能为 NULL
参照完整性:根据此规则,外键的值必须为 NULL,或者必须作为其他每个关系的主键。
问题 17) DBMS 中的 E-R 模型是什么?
在 DBMS 中,E-R 模型被称为实体关系模型,因为它建立在实体及其之间存在的关系的概念之上。
Q18) DBMS 函数依赖是什么意思?
本质上,关系的各种性质之间的关系可以通过此约束来描述。
例如,如果名为"R1"的关系包含特征"Y"和"Z",则这两个属性之间的函数依赖关系可以表示为"Y->Z",表示 Z 依赖于 Y 才能运行。
Q19)DBMS 中的 1NF 代表什么?
第一范式或 1NF 是正确的答案。
在这种最简单的规范化中,属性的域应该只具有原子值。这样做的目的是消除表中任何重复的列。
Q20)DBMS 的 2NF 代表什么?
第二范式,即 2NF。
任何满足以下两个要求的表都被认为具有 2NF:
表属于 1NF。
表的非素数属性被认为在功能上完全依赖于其主键。
Q21)DBMS 中的 3NF 代表什么?
第三范式,即 3NF。
任何满足以下两个要求的表都被认为具有 3NF:
表属于 2NF。
有人认为,表中的每个非素数属性都非传递地依赖于每个表键。
Q22)DBMS 中的 BCNF 是什么,问题 #22?
比 3NF 更严格的 Boyce Codd 范式被称为 BCNF。
任何满足以下两个要求的表都被认为符合 BCNF:
表符合 3NF。
对于存在的任何函数依赖关系 X->Y,X 是表的超键。
Q23)CLAUSE 与 SQL 的关系是什么?
这与 SQL 查询结合使用,以根据用户需求和 SQL 定义的约束获取指定的数据。这对于从整个记录集中选择某些记录特别有用。
例如,有带 WHERE 条件的查询和带 HAVING 子句的查询。
Q24)如何从 SQL 表中检索替代记录?
答案 - 以下搜索可用于检索奇数
SELECT EmpId from (SELECT rowno,EmpId from Emp) WHERE mod(rowno,2)=1;
以下查询可用于检索偶数 -
SELECT EmpId from (SELECT rowno,EmpId from Emp) WHERE mod(rowno,2)=0;
问题 25) SQL 如何处理模式匹配?
SQL 中的 LIKE 运算符使匹配模式成为可能。
当 LIKE 运算符匹配 0 个或更多字符时,它使用字符"%",当它仅匹配一个字符时,它使用字符" 。"
示例
SELECT * from Emp WHERE name like 'b%';
SELECT * from Emp WHERE name like 'hans_';
Q26)SQL 中的连接是什么意思?
连接是一种 SQL 语句,用于根据共享字段或列组合两个或多个表中的数据或行。
Q27)有哪些不同类型的 SQL 连接?
SQL 连接有四种不同的类型。
内连接 - 这种连接用于从两个表共享的表中检索信息。
左连接 - 这只返回连接右侧表中匹配的行,返回连接左侧表中的所有行。
右连接 - 这只返回连接左侧表中匹配的行,而不是连接右侧表中的所有行。
全连接 - 检索连接的每个表中的所有行已应用连接条件,不匹配的行具有空值。
Q28)"触发器"一词是什么意思?
答案是,触发器是响应表或视图中发生的事件而自动运行的重要脚本或程序之一。例如,每当向员工数据库添加新记录时,数据就会自动生成在相关表中,例如角色、部门和薪酬表中。
Q29)什么是存储过程?(问题 29)
存储过程是组织成函数的 SQL 语句集合,该函数保存在关系数据库管理系统 (RDBMS) 中,可在需要时访问。
Q30)什么是 RDBMS,问题 30?
RDBMS 代表关系数据库管理系统。它是一种数据库管理系统,通过使用不同表中的公共字段来访问数据。
Q31)DBMS 支持哪些不同类型的关联?
在 DBMS 中,关系显示表之间的相互关系。
各种类型的关系包括
一对一 - 这实质上表示每个表中应该有一条记录,或者表之间是一对一关系。例如,一对已婚夫妇只允许各自有一个配偶。
一对多 - 主键表只有一条记录,但根据一对多连接理论,链接表中可能有许多、一个或没有记录。一位母亲可能有很多孩子。
多对多 - 根据这一点,两个表可能连接到其他几个表。例如:兄弟姐妹可能很多,而且通常如此。