欧美一区2区三区4区公司二百,国产精品婷婷午夜在线观看,自拍偷拍亚洲精品,国产美女诱惑一区二区

靜態SQL和動態SQL有什么區別?

許多人在使用數據庫,但他們實際上并不了解靜態 SQL 和動態 SQL 之間的區別。它們的目的是獲取查詢的輸出,無論是靜態的還是動態的。在本文中,您將通過詳細討論了解靜態與動態 SQL 查詢、SQL 語句的處理方式、動態 DBMS(數據庫管理系統)、靜態與動態報告以及應用程序的嵌入式 SQL 示例。

如何保護數據庫免受SQL注入:三大解決方案

什么是嵌入式 SQL?

嵌入式或靜態 SQL 查詢是那些在執行或運行時不會更改并且可以硬編碼(其中數據或參數不能更改)到不同應用程序中的指令。

嵌入式 SQL 應用程序

考慮一個嵌入式應用程序的示例,其中語句主要嵌入在 C++ 源文件中,其中預處理器將語句轉換為對運行時庫的調用。它可移植到其他環境,并為每個操作環境提供相同的功能。

嵌入式 SQL 應用程序由 SQL 語句組成,這些語句在編譯之前被轉換為 C 或 C++ 代碼。如圖所示,運行時的應用程序使用 SAP IQ 接口庫,該庫稱為 DBLIB,用于與數據庫服務器進行通信。DBLIB 是一個動態鏈接庫 (DLL),可以在所有主要平臺上共享。

什么是動態 SQL?

顧名思義,它是一種允許專業人員構建可在運行時動態更改的 SQL 語句的技術。動態查詢是可以在執行或運行時構造的語句;例如,應用程序可能允許用戶在執行時運行他們自己的查詢。

什么是動態數據庫管理系統?

動態 DBMS 是一個具有“基于值”的對象關系的數據庫,它在檢索時指定,并且在檢索期間發現相關記錄的位置。

下列關于靜態和動態報表的說法不準確的是?

打印的銷售分析是動態報告的一個例子,是關于靜態和動態報告的錯誤陳述。以下關于報告的陳述屬實:

  • 靜態報告作為 PDF 文檔或在創建時固定的商業智能 (BI) 文檔發布,因此這些報告不會被修改。
  • 發布動態報表需要商業智能 (BI) 應用程序在交付給用戶時訪問數據源。
  • 永遠記住,印刷銷售分析是靜態報告的一個例子。
  • 動態報告是商業智能 (BI) 文檔,并在用戶請求此文件時更新。

SQL 語句是如何處理的?

在繼續下一步之前,有必要了解結構化查詢語言語句是如何處理的。

1.解析語句

例如,用戶想要運行以下查詢:

選擇 P、Q、R

從甲,乙

其中 P> 800

和 R = 'XYZ'

DBMS 會將查詢解析為單個單詞,稱為標記,以確保語句沒有拼寫錯誤和語法錯誤。這將很快完成,因為在解析語句時無需訪問數據庫。

2. 驗證聲明

數據庫管理系統將檢查表(在我們的示例表 A 和 B 的情況下)是否存在于數據庫(系統目錄)中?用戶是否有權運行這些語句?DBMS 驗證列名沒有歧義并且存在。

3.優化語句

DBMS 通過探索不同的方式來優化語句。可以使用索引(主鍵)來加快搜索速度嗎?數據庫管理系統應該先對第一個表應用搜索條件,然后將其連接到第二個表,還是應該從連接開始,然后使用條件?在探索了所有可能的條件之后,DBMS 會選擇一個更合適的。它可能會為同一個查詢探索數千種可能的不同方式,因此它是一個 CPU 密集型過程。

4.訪問計劃或二進制形式

在此步驟中,將生成 SQL 語句的訪問計劃或二進制形式。

5. 訪問計劃的執行

在最后一步,將執行訪問計劃。

嵌入式 SQL 和動態 SQL 之間的基本區別

靜止的 動態的
在靜態或嵌入式 SQL 中,如何訪問數據庫是在嵌入式 SQL 語句中預先確定的,并由預處理器執行,用戶無法在運行時運行查詢。 如何訪問數據庫是在運行時確定的,用戶還可以在運行時運行結構化查詢語言指令。
它更快捷、更高效。 它不那么迅速和高效。
所有數據庫查詢都是在編譯時編譯的。 所有數據庫查詢都是在應用程序運行時編譯的。
包括解析、驗證、優化和生成應用程序訪問計劃在內的所有過程都在編譯時完成。 所有過程,包括解析、驗證、優化和生成應用程序訪問計劃(SQL 查詢的二進制形式)都在運行時完成。
它主要用于數據分布一致的情況。 它用于數據分布不均勻的情況。
不使用 PREPARE、EXECUTE 和 EXECUTE IMMEDIATE 語句。 使用 PREPARE、EXECUTE 和 EXECUTE IMMEDIATE 語句。
由于硬編碼到應用程序中,它不太靈活。 我們可以在運行時運行我們的 SQL 語句,因此更加靈活。

文章鏈接: http://www.qzkangyuan.com/12571.html

文章標題:靜態SQL和動態SQL有什么區別?

文章版權:夢飛科技所發布的內容,部分為原創文章,轉載請注明來源,網絡轉載文章如有侵權請聯系我們!

聲明:本站所有文章,如無特殊說明或標注,均為本站原創發布。任何個人或組織,在未征得本站同意時,禁止復制、盜用、采集、發布本站內容到任何網站、書籍等各類媒體平臺。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。

給TA打賞
共{{data.count}}人
人已打賞
IDC云庫

為什么網站備份很重要?完成網站備份的指南

2022-11-14 11:11:44

IDC云庫

托管VS云服務:主要區別,它是如何工作的?

2022-11-14 11:36:31

0 條回復 A文章作者 M管理員
    暫無討論,說說你的看法吧
?
個人中心
購物車
優惠劵
今日簽到
有新私信 私信列表
搜索
主站蜘蛛池模板: 庆元县| 准格尔旗| 咸宁市| 上林县| 诸城市| 思茅市| 华坪县| 富阳市| 分宜县| 汉川市| 鄂伦春自治旗| 都江堰市| 庆安县| 藁城市| 台前县| 裕民县| 河南省| 米泉市| 新巴尔虎左旗| 镇宁| 怀来县| 淮阳县| 六枝特区| 宁国市| 濉溪县| 昌乐县| 九江市| 梨树县| 芮城县| 南宫市| 英吉沙县| 丽水市| 延长县| 桃源县| 长春市| 深水埗区| 普格县| 深泽县| 剑河县| 来安县| 高碑店市|