6K+ 瀏覽量
DB2 儲存過程是由 DBMS 直接管理的程式。儲存過程通常包含 SQL 語句,並且可以由應用程式呼叫。儲存過程處理查詢並將結果返回給應用程式。儲存過程可以用於經常使用的 SQL 語句,因此,與其一遍遍地使用相同的 SQL 查詢,不如簡單地使用儲存過程。儲存過程的另一個好處是,與應用程式中使用的靜態 SQL 相比,它們速度更快,效能更好。儲存過程可以... 閱讀更多
532 瀏覽量
DB2 索引用於提高查詢效能並加快查詢結果速度。可以在單個表上構建多個索引,DB2 最佳化器根據 WHERE 子句中使用的謂詞選擇不同的索引以獲取查詢結果。為了找出在特定表上構建的所有索引,我們將使用 DB2 系統表 SYSIBM.SYSINDEXES。此表記錄與索引相關的所有詳細資訊。可以在此表上使用以下 SQL 查詢以獲得所需的結果。示例SELECT NAME, TBNAME FROM SYSIBM.SYSINDEXES WHERE TBNAME = ‘’The ... 閱讀更多
126 瀏覽量
DB2 計劃包含所有可執行形式的 SQL 語句。要執行任何 COBOL-DB2 程式,我們需要提供其相應的計劃。DB2 最佳化器將評估計劃中存在的 SQL 的訪問路徑,以獲取 COBOL-DB2 程式的結果。計劃中的 SQL 可能會使用許多索引。索引根據鍵值促進表搜尋並加快查詢處理時間。如果刪除了任何索引,則可能會對包含使用該已刪除索引的 SQL 的計劃產生負面影響。因此,作為影響分析的一部分,它... 閱讀更多
590 瀏覽量
DB2 標量函式接受單個列值並返回單個結果。列函式從 DB2 表的多行中獲取列值並返回單個結果。在標量函式的情況下,只涉及一行。標量函式描述LENGTH提供列值的長度REPLACE用於將一個字串替換為另一個字串CONCAT用於組合兩個或多個列值INTEGER提供列值的整數等價物CHAR提供列值的字元等價物例如,如果我們有一個 ORDERS DB2 表,並且我們只想返回所有訂單的 ORDER_TOTAL 的整數值... 閱讀更多
603 瀏覽量
DB2 列函式也稱為聚合函式。這些函式獲取來自多行特定列的值並返回單個值。以下是某些最常用的列函式的列表。列函式描述SUM查詢列值的總和COUNT計算列值的個數AVG查詢列值的平均值MAX查詢列中的最大值MIN查詢列中的最小值列函式只能在 SELECT 查詢中使用。例如,如果我們必須查詢 2020 年 8 月 15 日從 ORDERS 表中下達的所有訂單的 ORDER_TOTAL 的平均值,那麼我們... 閱讀更多
2K+ 瀏覽量
當兩個應用程式鎖定彼此需要的資料時,就會發生死鎖情況。這兩個應用程式都等待另一個應用程式釋放鎖,因此發生死鎖。讓我們看一個例子來更好地理解這一點:有兩個 COBOL-DB2 程式正在執行:PROG A 和 PROG B。PROG A 在 ORDERS 表中持有 UPDATE LOCK,而 PROG B 在 TRANSACTION 表中持有 UPDATE LOCK。在某些時候,PROG A 需要 TRANSACTION TABLE 上的 UPDATE LOCK,而 PROG B 需要 ORDERS 表上的 UPDATE LOCK,但兩個應用程式程式... 閱讀更多
共享鎖、更新鎖和排它鎖是在併發應用程式處理中使用的鎖型別。這意味著當兩個或多個應用程式嘗試訪問同一行或頁面時,將使用這些鎖。以下是每種鎖型別的描述。共享鎖如果任何應用程式在頁面上獲取共享鎖,則它可以讀取該頁面,但不能更新它。其他併發應用程式可以在同一頁面上獲取共享鎖或更新鎖。更新鎖如果任何應用程式在頁面上獲取更新鎖,則它可以讀取該頁面,但不能更新它。在... 閱讀更多
581 瀏覽量
當 COBOL-DB2 程式多次執行相同的查詢時,會出現不可重複讀情況,但每次查詢的結果都不同。這通常發生在兩個 COBOL-DB2 程式訪問 DB2 表的同一行時。第一個程式讀取該行,然後第二個程式讀取同一行,對其進行更新並提交更改。第一個程式再次讀取同一行,但現在資料與之前的提取不匹配。當多次執行查詢時,查詢結果中的行數不匹配時,就會出現幻影情況。對於... 閱讀更多
745 瀏覽量
丟失更新和髒讀問題與併發性有關。併發性定義為兩個或多個應用程式訪問相同表資料的能力。丟失更新以以下方式影響 COBOL-DB2 程式的處理。假設有兩個應用程式程式——PROG A 和 PROG B 正在嘗試訪問 ORDERS DB2 表的同一行。PROG A 和 PROG B 同時從 ORDERS 表中讀取 ORDER_ID = ‘Z87661’ 的行。PROG A 更新此行中的某些資料並提交更改。PROG B 現在更新... 閱讀更多
10K+ 瀏覽量
問題:一個 COBOL-DB2 程式從包含 1000 條記錄的輸入檔案獲取資料並將資料插入 DB2 表中。該程式在第 432 條記錄後失敗。如何實現重啟邏輯?解決方案可以透過設定提交頻率在 COBOL-DB2 程式中實現重啟邏輯。如果我們選擇 100 的提交頻率,則需要執行以下步驟:宣告一個用於計數器的變數,例如 WS-COUNT。放置一個迴圈,在其中我們將從檔案中讀取記錄並將其插入資料庫中。每次讀取記錄時,將計數器 WS-COUNT 加 1... 閱讀更多