<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                [TOC] # 視圖 視圖是一個或多個表的邏輯表示形式。本質上,視圖是存儲的查詢。 視圖從其所基于的表中導出其數據,稱為基表。基表可以是表或其他視圖。在視圖上執行的所有操作實際上都會影響基表。您可以在大多數使用表的地方使用視圖。 **說明** 物化視圖使用不同于標準視圖的數據結構。 視圖使您能夠為不同類型的用戶定制數據的呈現方式。 視圖通常用于: * 通過限制對表的一組預定行或列的訪問,提供額外級別的表安全性。 * 隱藏數據復雜性。 例如,可以使用 join 定義單個視圖。join 是多個表中的相關列或行的集合。但是,視圖隱藏了這樣一個事實,即此信息實際上源于幾個表。查詢可能還會使用表信息執行大量計算。因此,用戶無需知道如何執行 join 或計算,也可以查詢視圖。 * 以與基表不同的視角呈現數據。 例如,可以重命名視圖的列,而不影響視圖所基于的表。 * 將應用程序與基表定義中的更改隔離開來。 例如,如果視圖的定義查詢引用了四列表中的三列,此時向表中添加了第五列,視圖的定義不會受影響。并且使用該視圖的所有應用程序也不受影響。 ## 視圖的特征 與表不同,視圖不分配存儲空間,視圖也不包含數據。 相反,視圖是由從視圖引用的基表中提取或導出數據的查詢定義的。 因為視圖基于其他對象,所以對于在數據字典中定義視圖的查詢,它不需要存儲以外的存儲。 視圖對其引用的對象具有依賴關系,這些對象由數據庫自動處理。例如,如果刪除并重新創建視圖的基表,則數據庫將確定視圖定義是否可以接受新的基表。 ## 視圖中的數據操作 因為視圖是從表派生的,所以它們有許多相似之處。用戶可以查詢視圖,也可以對視圖執行 DML 操作。對視圖執行的操作會影響視圖的某個基表中的數據,并受基表的完整性約束和觸發器的約束。 ## 如何在視圖中訪問數據 OceanBase 數據庫將視圖定義作為定義視圖的查詢文本存儲在數據字典中。 在 SQL 語句中引用視圖時,OceanBase 數據庫將執行以下任務: 1. 將針對視圖的查詢 (只要可能) 與定義視圖和任何基礎視圖的查詢合并。 OceanBase 數據庫優化合并查詢,就像您在不引用視圖的情況下發出查詢一樣。因此,OceanBase 數據庫可以對任何被引用基表列使用索引,無論這些列是在視圖定義中引用的,還是在針對視圖的用戶查詢中引用的。 有時 OceanBase 數據庫無法將視圖定義與用戶查詢合并。在這種情況下,OceanBase 數據庫可能不會對被引用的列上使用所有索引。 2. 解析 merged 語句中的共享 SQL 區。 OceanBase 數據庫解析在新的共享 SQL 區域中引用視圖的語句僅如果沒有現有的共享 SQL 區域包含類似語句。 因此,視圖提供了減少與共享 SQL 關聯的內存使用的好處。 3. 執行 SQL 語句。 ## 可更新的 Join Views Join Views 在 FROM 子句中包含多個表或視圖。 一個可更新的 join view,也稱為可修改的 join view,涉及兩個或多個基表或視圖,并允許 DML 操作。 一個可更新的視圖在 SELECT 語句的頂級 FROM 子句中包含多個表,并且不受限于 WITH READ ONLY 子句。 要實現可更新,視圖必須滿足多個條件。例如,其中一條通用規則就是對于 join view 的 INSERT、UPDATE 或 DELETE 操作一次只能修改一個基表。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看