國家安全情報人員考試五等考試-資訊組資料處理大意114 年第 36 題單選題
關於資料庫中的檢視表(View),下列那個選項是正確的說明?
A檢視表是一個實際儲存資料的獨立個體,用以備份資料表的資料
B檢視表可以簡化複雜查詢並且限制使用者對資料表特定部分的取用正確答案
C建立檢視表可以大幅提升資料的寫入(INSERT/UPDATE)效率
D透過檢視表修改資料,資料表的內容不會受到任何影響
B正確答案
View 是虛擬表,不儲存資料,主要用來簡化查詢與控制存取權限。
為什麼答案是 B
View 的兩大用途:①封裝複雜 JOIN/子查詢,使用者一句 SELECT 即可查詢;②只開放特定欄位或資料列,隱藏敏感欄位(如薪資),達到權限控管。這是教科書標準答案。
載入中…
完整詳解
Pro · 無限重點 View 是虛擬表,不儲存資料,主要用來簡化查詢與控制存取權限。
看到「檢視表=虛擬表」就鎖 B,其餘選項把 View 當實體表都是錯的。
逐選項分析
A✕ 陷阱
View 是「虛擬表」,本身不儲存資料,只儲存 SELECT 查詢定義,執行時才從底層資料表取資料。備份用的是 Backup 或實體表,不是 View。
B✓ 正確
View 的兩大用途:①封裝複雜 JOIN/子查詢,使用者一句 SELECT 即可查詢;②只開放特定欄位或資料列,隱藏敏感欄位(如薪資),達到權限控管。這是教科書標準答案。
C✕ 陷阱
View 不會提升寫入效率,反而因為多一層查詢解析可能變慢。提升查詢效能的是 Index(索引)或 Materialized View(具體化檢視),不要搞混。
D✕
透過可更新的 View 執行 INSERT/UPDATE/DELETE,變動會直接反映到底層資料表(因為 View 本身沒存資料)。說「資料表不受影響」完全相反。
檢視表 View 特性整理
| 面向 | 說明 | 常見誤解 | 正確觀念 |
|---|
| 儲存方式 | 僅存 SQL 定義 | 以為存實際資料 | 虛擬表,執行時才查 |
| 主要用途 | 簡化查詢、權限控管 | 用來備份 | 隱藏複雜度與敏感欄位 |
| 資料異動 | 透過 View 改=改本表 | 以為不影響本表 | 會同步反映至底層 |
| 效能 | 查詢方便但不加速寫入 | 以為能提升效能 | 要提速改用 Index |
出題者最愛把 View 包裝成「實際儲存資料」「用來備份」「提升寫入效率」等實體表特徵。記住核心一句話:View 是虛擬的、不存資料、主要為了『方便查詢』與『控管權限』,不是為了儲存或加速寫入。