資料庫管理系統(DBMS)中SQL查詢處理的步驟是什麼?
**查詢處理**是將高階查詢轉換為低階表示式的過程。它是一個逐步的過程,可用於檔案系統的物理級別、查詢最佳化和查詢的實際執行以獲取結果。
它需要關係代數和檔案結構的基本概念。它指的是從資料庫中提取資料所涉及的一系列活動。它包括將高階資料庫語言中的查詢轉換為可以在檔案系統的物理級別實現的表示式。
下面是顯示結構化查詢語言 (SQL) 查詢處理步驟的圖表:
資料庫管理系統 (DBMS) 中 SQL 處理的步驟如下:
步驟 1
解析器 - 在解析過程中,資料庫執行語法檢查、語義檢查和共享池檢查,然後將查詢轉換為關係代數。
**語法檢查**確定 SQL 語法是否正確,也就是說,它檢查 SQL 語法的有效性。
解析器進行語法檢查的語法如下:
SELCT * FROM student;
輸出如下:
error
此檢查會給出 SELECT 拼寫錯誤的錯誤。
**語義檢查**確定語句是否有意義。例如,此檢查會檢查查詢是否包含不存在的表名。
**共享池檢查**此檢查確定共享池中是否存在已編寫的雜湊程式碼,假設如果程式碼存在於共享池中,則資料庫不會為最佳化和執行採取其他步驟,因為每個查詢在其執行期間都擁有一個雜湊程式碼
步驟 1
**最佳化器** - 在此階段,資料庫必須至少對一個唯一的 DML 語句執行硬解析,並且必須在此解析期間進行最佳化。除非 DDL 包含 DML 元件,否則資料庫永遠不會最佳化 DDL。
這是一個檢查多個查詢執行計劃以滿足查詢並滿足最有效的查詢計劃以進行執行的過程。
資料庫目錄儲存執行計劃,然後最佳化器傳遞最低成本計劃以供執行。
**行源生成** - 行源生成是接收來自最佳化器的最佳執行計劃並生成由資料庫其餘部分使用的迭代執行計劃的軟體。迭代計劃是當由 sql 引擎執行時生成結果集的二進位制程式。
步驟 3
**執行引擎** - 執行引擎有助於執行查詢並顯示所需的結果。
廣告