如圖 29 中所示一般,VM 應用程式必須通過 DB2 for VM 應用系統要求程式 (資源配接卡),方可存取任何 DB2 for VM 或 DRDA Application Server資料庫。DB2 for VM Application Server資料庫可以從任何 DB2 for VM 或 DRDA 應用系統要求程式中接收 SQL 要求。
圖 29. DB2 for VM 應用系統要求程式與應用程式伺服器
DB2 for VM 支援 sqlinit 命令上的三種處理選項, 這些選項將容許使用者及資料庫管理員啟用分散式資料庫支援。在前置處理或執行應用程式之前, 使用者可以指定下列其中一個 SQLINIT 選項:
表 3 比較 DB2 for VM 應用系統要求程式 SQLINIT 選項的函數特性。
表 3. DB2 for VM 應用系統要求程式 SQLINIT 處理選項的比較
[SQLDS] | [AUTO] | [DRDA] |
這兩個友機均須是 DB2 for VM 系統 | 與任何 DRDA 系統連接 | 與任何 DRDA 系統連接 |
可透過 TSAF 或 AVS/VTAM,在本端與友機通信 | 可透過 TSAF 或 AVS,在本端與 DB2 for VM 系統通信, 或與遠端 DB2 for VM 系統通信。有了非類似系統,必須透過 AVS 進行通信。 | 可透過 TSAF 或 AVS,在本端與 DB2 for VM 系統通信, 或與遠端 DB2 for VM 系統通信。有了非類似系統,必須透過 AVS 進行通信。 |
支援靜態、動態及擴充動態 SQL | 支援靜態、動態及擴充動態 SQL | 支援靜態、動態及擴充動態 SQL 6 |
DB2 for VM 應用程式伺服器將忽略 SQLINIT 為應用程式伺服器所定義的 CCSID | DB2 for VM Application Server將接受 SQLINIT 為應用系統要求程式所定義的 CCSID,而且會執行適當的轉換 (如果應用程式伺服器也已設定為 AUTO 的話) | DB2 for VM Application Server將接受 SQLINIT 為應用系統要求程式所定義的 CCSID,而且會執行適當的轉換 |
固定的 8K 區塊大小;OPEN 呼叫未傳回任何橫列;應用系統要求程式必須以明確方式關閉游標 | DB2 for VM 對 DB2 for VM: SQLDS 方法; 所有其他:DRDA 方法 | 可變的 1K 到 32K 區塊大小;更緊密的資料包; OPEN 呼叫傳回一橫列區塊;Application Server可用隱含方式關閉儲存從傳送 CLOSE 呼叫而來的應用系統要求程式的游標 |
可使用游標 INSERT 及 PUT,透過靜態的 8K 區塊大小,一次插入一橫列區塊 | DB2 for VM 對 DB2 for VM: SQLDS 方法; 所有其他:DRDA 方法 | PUT 將轉換為一般單一橫列插入,且一次送出一列 |
支援所有 DB2 for VM 專用的命令 | DB2 for VM 對 DB2 for VM: SQLDS 方法; 所有其他:DRDA 方法 | 不支援 DB2 for VM 運算子指令、部份 DB2 for VM 陳述式,以及部份 ISQL 及 DBSU 指令 (請參閱 DB2 for VSE & VM SQL Reference)。 |
不支援 LUWID | 支援 LUWID | 支援 LUWID |
本段將描述啟動「資料庫伺服器機器」的不同選項。
當啟動資料庫伺服器機器時,資料庫管理員可以在 PROTOCOL 參數上,指定下列其中一個選項。
Application Server所選取的處理選項有感應。 如果 DB2 for VM 要求程式指定 PROTOCOL(SQLDS),則 DB2 for VM 伺服器上的處理將繼續正常地使用專用流程。如果 DB2 for VM 要求程式指定 PROTOCOL(AUTO),則 DB2 for VM 伺服器將通知要求程式切換至專用流程。在應用系統要求程式與應用程式伺服器之間,不會交換任何 CCSID 資訊。應用程式伺服器假定應用系統要求程式 CCSID 同於應用程式伺服器的 CCSID。如果 DB2 for VM 要求程式指定 PROTOCOL(DRDA),將終止交談。如果非 DB2 for VSE & VM 的應用系統要求程式試圖存取 DB2 for VM 伺服器,交談將會終止。
這個參數指定同步點管理程式 (SPM) 是否將用來協調 DRDA-2 多位置讀取、 多位置寫入分散式工作單元活動。
如果指定 Y,則可能的話,伺服器將使用一個同步點管理程式,來協調兩階段確定及重新同步化活動。 如果指定 N,應用程式伺服器將不會使用 SPM,來執行兩階段確定。 如果已指定 N,則應用程式伺服器將限制為多位置讀取、 多位置寫入的分散式工作單元,也可以是單一寫入位置 如果指定 Y,但應用程式伺服器發現同步點管理程式無法使用,則伺服器將如同指定 N 一般地作業。
當 PROTOCOL=AUTO 時,預設值為 SYNCPNT=Y。當 PROTOCOL=SQLDS 時,SYNCPNT 參數設定為 N。