為了讓您熟悉在求職面試中可能會提出的與數據庫管理系統相關的問題類型,我們將在這篇文章中探討最關鍵的 DBMS 面試問題 (DBMS)。
Q1)DBMS 有哪些用途?
DBMS(數據庫管理系統)的首字母縮寫代表一個主要功能圍繞數據的應用系統。該系統使用戶能夠設計、保存、檢索和更新數據,以及存儲在數據庫中的有關數據的信息。
Q2)術語“數據庫”指的是什么?
簡單地說,數據庫是一組已經安排好的數據,用戶可以輕松地訪問、管理和提交這些數據。
Q3) 為什么建議使用數據庫管理系統(DBMS)?列舉一些主要優點來進一步解釋。
以下是 DBMS 的一些主要優點
受控冗余 – DBMS 提供了一種防止保存重復數據的方法,因為所有數據都保存在單個數據庫中,從而消除了數據庫內的冗余。
數據共享 – 由于同一數據庫將由所有用戶和各種應用程序共享,因此使用 DBMS 也可以同時在多個用戶之間共享數據。
備份和恢復工具 – 通過提供稱為“備份和恢復”的功能(自動生成數據備份并根據需要恢復數據),DBMS 減輕了生成數據備份的痛苦。重復數據。
完整性約束的應用? 必須將完整性約束應用于數據,以便將經過精煉的數據保存在數據庫中,并由DBMS進行處理。
數據獨立性 – 數據獨立性基本上意味著您可以修改數據的結構而不改變任何底層應用程序的設計。
Q4) 為什么在數據庫管理系統中使用規范化?
根據其獨特的功能依賴和主鍵進行的關系模式分析,以滿足特定標準的過程被稱為規范化。
屬性包括:
減少數據的冗余。
為了減少插入、刪除和更新異常
Q5)DBMS 支持哪些不同類別的語言?
在DBMS中,基本上有三種不同類型的語言,如下所示
DDL – 數據定義語言(DDL)是 SQL 查詢的集合,例如 CREATE、ALTER、TRUNCATE、DROP 和 RENAME,用于描述數據庫和模式結構。
DCL – 數據控制語言(DCL):DCL 是一系列 SQL 查詢,例如 GRANT 和 REVOKE,用于管理用戶對數據庫的訪問。
DML ? 數據操作語言(Data Manipulation Language),或者DML,用于進行數據庫操作,包括使用一系列的SQL查詢語句(如select、insert、delete和update)插入、刪除和更新數據。
問題 6) 為什么使用 SQL?
縮寫 SQL 代表結構化查詢語言,它用于通過輸入、更新和/或更改數據來與關系數據庫進行交互。
問題 7) 解釋主鍵和外鍵的概念。
在數據庫表中,主鍵用于唯一標識每條記錄,而外鍵(一個表中的特定字段或一組字段,用作另一個表的主鍵)主要用于連接兩個表或多張桌子在一起。
Q8)唯一鍵和主鍵之間的主要區別是什么?
下面展示了幾種變化:
主鍵和唯一鍵之間的主要區別在于主鍵永遠不能包含空值,而唯一鍵可以。
在一個表中可以有多個唯一鍵,但每個表只能有一個主鍵。
Q9)“子查詢”一詞對于 SQL 來說意味著什么?
答案 ? 子查詢本質上是包含在另一個查詢中的查詢;它也被稱為內部查詢,因為它包含在外部查詢中。
Q 10) DROP命令有什么用途?DROP、TRUNCATE和DELETE命令之間有什么區別?
可以使用 DDL 命令“DROP”從數據庫中刪除表、數據庫、索引或視圖。
在DROP、TRUNCATE和DELETE命令之間有三個主要區別:
可以使用DDL命令DROP和TRUNCATE從數據庫中刪除表,一旦表被銷毀,所有相關的權限和索引也將被刪除。這兩個過程無法撤銷,因此只有在絕對必要的情況下才應使用它們。
另一方面,DELETE 命令是一個 DML 命令,也可用于從表中刪除行。
建議在使用DELETE命令時與”WHERE”子句結合使用,以防止整個表從數據庫中被刪除。
Q 11) UNION和UNION ALL之間的主要區別是什么?
當連接兩個或多個表的數據時,使用UNION和UNION ALL; UNION 合并表中的數據后消除重復行并選擇不同的行; UNION ALL 不這樣做;它只是從表中選擇所有數據。
Q12)解釋一下 DBMS 中 ACID 特性的概念?
原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)和持久性(Durability)特性的組合被稱為ACID屬性。這些特征使得多個人可以以安全可靠的方式共享數據。
原子性 – 這是基于“要么全有,要么全無”的思想,這本質上意味著如果發生數據庫更改,除了用戶和應用程序之外的每個人都應該可以訪問它,或者除了他們之外,任何人都不能訪問它。
一致性 ? 這保證了數據庫在任何內部事務期間和之后都保持一致性。
隔離 – 顧名思義,此功能指定發生的每個事務都與其他事務隔離。例如,一個已經開始但尚未完成的事務應該與其他事務隔離,這樣其他事務就不會受到它的影響。
持久性 ? 此功能指定數據應始終處于持久狀態,即任何已提交的數據都應在系統發生故障或重新啟動時以相同的狀態訪問。
Q 13: 什么是DBMS相關子查詢的作用?
子查詢有時稱為嵌套查詢或編寫在另一個查詢內的查詢。當對外部查詢的每一行執行子查詢時,子查詢稱為關聯。
非相關子查詢的示例是 –
SELECT * from EMP WHERE 'AJITESH' IN (SELECT Name from DEPT WHERE EMP.EMPID=DEPT.EMPID);
登錄后復制
在這種情況下,內部查詢不會針對外部查詢的每一行運行。
Q 14) 解釋DBMS中的實體(Entity),實體類型(Entity Type)和實體集(Entity Set)。
實體是現實中獨立存在的任何事物、地點或對象,其詳細信息可以保存在數據庫中。例如,任何個人、書籍等。
實體類型是具有相似屬性的實體的組合。以學生表為例,每一行都是一個實體,存儲著學生的姓名、年齡和學生ID。因此,學生是一個具有相同屬性的實體類型。
具有相同類型的實體的分組是實體集。一個例子是公司的一組員工。
Q 15) 數據庫管理系統中有哪些不同的抽象級別?
在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?
Boyce Codd正規化范式,比第三范式更嚴格,被稱為BCNF。
任何滿足以下兩個要求的表都被認為是在 BCNF 中:
一張表處于第三范式。
X 是任何存在的函數依賴 X->Y 的表的超級鍵。
Q23)在SQL中,CLAUSE是什么意思?
它與 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;
登錄后復制
Q 25) SQL如何處理模式匹配?
SQL中的LIKE運算符使得匹配模式成為可能。
LIKE 運算符匹配 0 個或多個字符時,使用字符“%”,當僅匹配 1 個字符時,使用字符“.”
示例
SELECT * from Emp WHERE name like 'b%';
登錄后復制
SELECT * from Emp WHERE name like 'hans_';
登錄后復制
Q26)SQL 中的連接是什么意思?
聯接是一種 SQL 語句,用于根據共享字段或列組合兩個或多個表中的數據或行。
Q27)SQL 連接有哪幾種類型?
有四種不同類型的SQL連接。
內部聯接 – 這種聯接用于從兩個表共享的表中檢索信息。
Left Join ? 這只返回連接操作右側表中的匹配行,返回連接操作左側表中的所有行。
Right Join – 這僅返回連接左側表中的匹配行,而不是連接右側表中的所有行。
完全聯接 – 這會從已應用聯接條件的每個表中檢索所有行,并且不匹配的行具有空值。
Q28)“觸發”一詞是什么意思?
答案是觸發器是為了響應表或視圖中發生的事件而自動運行的關鍵腳本或程序之一。例如,每當向員工數據庫添加新記錄時,相關表中都會自動生成數據,例如角色表、部門表和薪酬表。
Q29)什么是存儲過程?(問題29)
存儲過程是一組SQL語句的集合,組織成一個函數,保存在關系數據庫管理系統(RDBMS)中,并在需要時可隨時訪問。
Q30)什么是關系數據庫管理系統(RDBMS),第30個問題?
RDBMS 代表關系數據庫管理系統。它是一個數據庫管理系統,通過使用不同表中的公共字段來訪問數據。
Q31)DBMS 支持哪些類型的關聯?
在數據庫管理系統中,關系顯示了表之間的關聯。
各種類型的關系包括
一對一 – 這基本上表示每個表中應該有一條記錄,或者表之間存在一對一的關系。例如,已婚夫婦只允許每人有一個配偶。
一對多 – 主鍵表只有一條記錄,根據一對多連接理論,關聯表中可能有許多、一個或零條記錄。一個母親可能有很多孩子。
多對多 – 據此,兩個表都可以連接到其他幾個表。示例:兄弟姐妹可以有很多,而且經常如此。
以上就是DBMS 面試常見問題的詳細內容,更多請關注www.92cms.cn其它相關文章!