IBM Books

OS/400 版管理及程式設計指南

架構變數陳述式

Net.Data 架構變數陳述式設定了架構變數的值。 架構變數有各種不同的用途。 有些變數是語言環境適當運作或在替代模態中操作所必要的。 有些變數控制字元編碼或建構中 Web 首頁的內容。 此外,您可以使用架構變數陳述式來定義應用程式特定變數。

您使用的架構變數視您使用的語言環境而定, 同時也視僅跟應用程式有關的其他因素而定。

更新架構變數陳述式:

以您應用程式所需的架構變數來自行設定起始設定檔。架構變數具有下列語法:

NAME[=]value-string

等號是可選用的,以方括弧([)表示。


下列子段落描述您可以在起始設定檔案中設定的架構變數陳述式:

DTW_MACRO_CACHE_SIZE:巨集快取大小變數

指定當快取巨集時,Net.Data 應該使用的記憶體大小 (MB)。 當超出快取大小時,Net.Data 會除去舊的快取巨集,在快取中挪出空間。 Net.Data 會除去最早使用過的巨集。

語法:

DTW_MACRO_CACHE_SIZE [=] 大小

其中:

大小
指定快取大小 (MB)。預設值為 5 MB,且恆啟動快取。 如果大小為 0,將不會快取巨集。 如果大小為 1 - 4,將使用預設值 5。

範例:指定 16 MB 的快取大小。

DTW_MACRO_CACHE_SIZE 16

DTW_PAD_PGM_PARMS:參數填補架構變數

向語言環境指出將傳遞給程式或儲存程序的字元參數是否將以空白填補。 字元參數具有 CHARACTER 或 CHAR 的資料類型。

對於 IN 或 INOUT 參數,如果參數值的長度少於指定的精確度,將在參數值右邊插入空白,直到參數值的長度同於精確度為止。

對於 OUT 參數,參數參數將設定為精確度空白。

在呼叫程式或儲存程序後,所有尾隨空白將從 OUT 及 INOUT 參數值中除去。

在 Net.Data 起始設定檔中設定這個變數,可指定一個值給您的所有巨集。 您可以經由在巨集中定義此值,來置換它。 如果 DTW_PAD_PGM_PARMS 未定義在巨集中,它將使用起始設定檔中的值。

「直接呼叫」及 SQL 語言環境支援 DTW_PAD_PGM_PARMS。

語法:

DTW_PAD_PGM_PARMS [=] YES|NO

其中:

YES
指定所有 IN 及 INOUT 字元參數均向左對齊, 且在傳遞參數給程式或儲存程序之前,先以空白填補, 以符合參數的精確度定義。 在呼叫程式或儲存程序後,將除去尾隨空白。

NO
指定當傳遞參數給程式或儲存程序時,沒有填補字元將新增到字元參數值 (值為以 NULL 終止的值)。 在呼叫程式或儲存程序後,將不會除去尾隨的空白。這是預設值。

DTW_SHOWSQL:啟用或停用 SHOWSQL 架構變數

置換您的 Net.Data 巨集內的設定 SHOWSQL 的效果。

語法:

DTW_SHOWSQL YES|NO

其中:

YES
啟用任何巨集中將 SHOWSQL 的值設定為 YES 的 SHOWSQL。

NO
停用您的巨集中的 SHOWSQL,即使變數 SHOWSQL 設定為 YES,也是如此。NO 是預設值。

表 1描述 Net.Data 起始設定檔及巨集中的設定如何決定是否要對特殊巨集啟用或停用 SHOWSQL 變數。

表 1. SHOWSQL 的 Net.Data 起始設定檔及巨集中的設定之間的關係

DTW_SHOWSQL 的設定 設定 SHOWSQL 顯示 SQL 陳述式
NO NO NO
NO YES NO
YES NO NO
YES YES YES

DTW_SMTP_CCSID:電子郵件 SMTP CCSID 變數

指定與 DTW_SMTP_CHARSET 中指定的「多目的網際網路郵件擴充 (MIME)」字集有關聯的 ASCII 編碼字集識別字。 將 DTW_SENDMAIL 函數上指定的資料從 EBCDIC 轉換為 ASCII 時, 將使用 CCSID。

如果指定 DTW_SMTP_CCSID,您亦須指定 DTW_SMTP_CHARSET。 當指定 CCSID 時,請確定它適合 DTW_SMTP_CHARSET 中指定的 MIME 字集, 且系統支援 CCSID。表 2會列示共用 MIME 字集, 以及關聯的 ASCII CCSID。 如果未設定 DTW_SMTP_CCSID, Net.Data 會使用與 MIME 字集 ISO-8859-1 有關聯的 CCSID,亦即 819。

語法:

DTW_SMTP_CCSID [=] ascii_ccsid

其中 ascii_ccsid 是從 EBCDIC 轉換為 ASCII 時將使用的 ASCII CCSID (介於 1-65534 之間的數字)。

範例:

DTW_SMTP_CCSID 912

這個 ASCII CCSID 對應到 MIME 字集 ISO-8859-2

DTW_SMTP_CHARSET:電子郵件 SMTP 字集變數

指定 DTW_SENDMAIL 將在電子郵件訊息中使用的「多目的網際網路郵件擴充 (MIME)」字集。 如果指定 DTW_SMTP_CHARSET,您亦須指定 DTW_SMTP_CCSID。 當指定 MIME 字集時,請確定字集有效,因為 Net.Data 不會驗證針對這個變數指定的值。 如果未設定 DTW_SMTP_CHARSET, Net.Data 會使用 MIME 字集 ISO-8859-1,它具有關聯的 CCSID 819。

表 2會列示共用 MIME 字集, 以及關聯的 ASCII CCSID。


表 2. Net.Data 支援的字集

MIME 標準字集 ASCII CCSID 說明
US-ASCII 367 美式英文
ISO-2022-JP 5052 日文 MBCS
ISO-8859-1 819 拉丁語-1
ISO-8859-2 912 拉丁語-2
ISO-8859-5 915 斯拉夫語
ISO-8859-6 1089 阿拉伯語
ISO-8859-7 813 希臘語
ISO-8859-8 916 希伯來語
ISO-8859-9 920 拉丁語-5

語法:

DTW_SMTP_CHARSET character_set

其中 character_set 是將使用的 MIME 字集。

範例:

DTW_SMTP_CHARSET iso-8859-2

這個 MIME 字集會對應到 912 ASCII CCSID。

DTW_SMTP_SERVER: 電子郵件 SMTP 伺服器變數

指定使用 DTW_SENDMAIL 內建函數送出電子郵件訊息時使用 SMTP 伺服器。這個變數的值可以是主電腦名稱或是 IP 位址。 如果這個變數沒有被定義,Net.Data 將使用區域主電腦作為 SMTP 伺服器。

語法:

DTW_SMTP_SERVER server_name

其中 server_name 指傳送電子郵件訊息時將使用的 SMTP 伺服器的主電腦名稱或 IP 位址。

效能要訣:指定這個值的 IP 位址, 將防止當取回指定 SMTP 伺服器的 IP 位址時,Net.Data 連接到領域名稱伺服器。

範例:

DTW_SMTP_SERVER 9.5.34.5

DTW_SQL_ISOLATION: DB2 隔離變數

DTW_SQL 語言環境使用 DTW_SQL_ISOLATION 架構陳述式, 來決定 DTW_SQL 語言環境執行的資料庫作業與並行執行處理隔離的程度。

語法:

DTW_SQL_ISOLATION locking_method

其中 locking_method 是下列其中一值:

DTW_SQL_NO_COMMIT
設定不要使用確定控制。以 OS/400 作業系統而言, 如果關聯式資料庫是設定在關聯式資料庫目錄中, 且關聯式資料庫是在 非 OS/400 系統上,則不要設定這個值。

DTW_SQL_READ_UNCOMMITTED
對於在 SQL ALTER、COMMENT ON、CREATE、DROP、GRANT、 LABEL ON、和 REVOKE 陳述式參照的物件,以及更新、刪除、和插入的列設定鎖定。 這些物件一直鎖定到工作單元 (異動) 終止為止。 可以看見其他處理中未確定的變更。

DTW_SQL_READ_COMMITTED
對於在 SQL ALTER、COMMENT ON、CREATE、DROP、GRANT、 LABEL ON、和 REVOKE 陳述式參照的物件,以及更新、刪除、和插入的列設定鎖定。 這些物件一直鎖定到工作單元 (異動) 終止為止。 已選取的列一直鎖定到選取下一列為止。 不可以看見其他處理中未確定的變更。

DTW_SQL_REPEATABLE_READ
對於在 SQL ALTER、COMMENT ON、CREATE、DROP、GRANT、 LABEL ON、和 REVOKE 陳述式參照的物件,以及選取、更新、刪除、 和插入的列設定鎖定。 這些物件一直鎖定到工作單元 (異動) 終止為止。 不可以看見其他處理中未確定的變更。

DTW_SQL_SERIALIZABLE
對於在 SQL ALTER、COMMENT ON、CREATE、DROP、GRANT、 LABEL ON、和 REVOKE 陳述式參照的物件,以及選取、更新、刪除、 和插入的列設定鎖定。 這些物件一直鎖定到工作單元 (異動) 終止為止。 不可以看見其他處理中未確定的變更。 在 SELECT、UPDATE、DELETE、和 INSERT 陳述式中參照的所有表格一直專用鎖定,直到工作單元 (交易) 終止為止。

DTW_SQL_NAMING_MODE: SQL 表格命名變數

DTW_SQL_NAMING_MODE 架構陳述式設定如何在 SQL 陳述式中設定表格名稱。

語法:

DTW_SQL_NAMING_MODE mode

其中 mode 是下列其中一值:

SQL_NAMING
設定表格由此格式的集合名稱來定義:
collection.table

其中 collection 是集合名稱, table 是表格名稱。預設定義子是執行處理的使用者 ID, 此處理執行 SQL 陳述式,當表格名稱未明確定義且未設定預設集合名稱時, 即使用此定義子。SQL_NAMING 是預設表格名稱。

SYSTEM_NAMING
設定檔案是由此格式的常式庫名稱來定義:
library/file

其中 library 是程式庫名稱, file 是表格名稱。 如果表格名稱 (檔案) 未明確定義且未設定預設集合名稱 (檔案庫) 的話, 則預設搜尋路徑是不完整表格名稱的檔案庫列示 (*LIBL)。

DTWR_CLOSE_REGISTRIES: 開啟 Web 登記變數

設定要關閉或保持 Web 登記開啟。這個變數可讓您保持 Web 登記開啟, 使存取相同「登記」的後續 Net.Data 巨集呼叫不必重新開啟登記。

語法:

DTWR_CLOSE_REGISTRIES YES|NO

其中:

YES
設定在已處理 Net.Data 巨集之後要關閉所有已開啟的 Web 登記。

NO
設定在已處理 Net.Data 巨集之後將所有已開啟的 Web 登記保持開啟。 NO 是預設值。

執行效能要訣: 您可以使用 DTWR_CLOSE_REGISTRIES 架構陳述式來改進存取 Web 登記的執行效能 (使用 Web 登記內建式函數), 方法是把登記的開啟和關閉縮至最小。 如果多個處理可以同時存取登記 (如在同時瀏覽器要求的情況中), 請將 DTWR_CLOSE_REGISTRIES 設定為 YES。


[ 頁面頂端 | 前一頁 | 下一頁 | 目錄 | 索引 ]