DBCLOB

DBCLOB 函數會傳回圖形字串表示法。

DBCLOB 的整數

讀取語法圖跳過視覺化語法圖DBCLOB(整數表示式)

十進位至 DBCLOB

讀取語法圖跳過視覺化語法圖DBCLOB(decimal-expression ,十進位字元 )

浮動點至 DBCLOB

讀取語法圖跳過視覺化語法圖DBCLOB(floating-point-expression ,十進位字元 )

DBCLOB 的十進位浮點數

讀取語法圖跳過視覺化語法圖DBCLOB(decimal-floating-point-expression ,十進位字元 )

字元至 DBCLOB

讀取語法圖跳過視覺化語法圖DBCLOB (字元表示式,長度DEFAULT,整數)

圖形至 DBCLOB

讀取語法圖跳過視覺化語法圖DBCLOB (圖形表示式,長度DEFAULT,整數)

DBCLOB 的日期時間

讀取語法圖跳過視覺化語法圖DBCLOB(datetime-表示式 ,ISOUSAEURJISLOCAL )
變更開始

布林至 DBCLOB

讀取語法圖跳過視覺化語法圖DBCLOB (布林表示式)
變更結束

DBCLOB 函數會傳回下列項目的圖形字串表示法:

  • 如果第一個引數是 SMALLINT、INTEGER 或 BIGINT ,則為整數
  • 如果第一個引數是聚集或區化十進位數,則為十進位數
  • 如果第一個引數是 DOUBLE 或 REAL ,則為倍精準度浮點數字
  • 如果第一個引數是 DECFLOAT ,則為十進位浮點數字
  • 字串 (如果第一個引數是任何類型的字串)
  • 如果第一個引數是任何類型的圖形字串,則為圖形字串
  • 如果第一個引數是 DATE ,則為日期值。
  • 如果第一個引數是 TIME ,則為時間值。
  • 如果第一個引數是 TIMESTAMP ,則為時間戳記值。
  • 變更開始如果第一個引數是 BOOLEAN ,則為布林值。變更結束

函數的結果是 DBCLOB。 若第一個引數可能為空值,結果就可能為空值;若第一個引數是空值,結果就是空值。

整數至 DBCLOB

整數表示式
傳回內建整數資料類型 (SMALLINT、INTEGER 或 BIGINT) 值的表示式。

結果是 SQL 整數常數形式的引數可變長度圖形字串。 如果引數是負數,則結果由 n 個字元組成,這些字元是代表引數值且前面有減號的有效數字。 結果向左對齊。

  • 如果引數是小整數,則結果的長度屬性為 6。
  • 如果引數是大整數,則結果的長度屬性為 11。
  • 如果引數是大整數,則結果的長度屬性為 20。

結果的實際長度是可用來代表引數值的最小字元數。 不包括前導零。 如果引數是負數,則結果的第一個字元是減號。 否則,第一個字元是數字或 十進位字元

結果的 CCSID 是 1200 (UTF-16)。

十進位至 DBCLOB

十進位表示式
傳回內建十進位資料類型 (DECIMAL 或 NUMERIC) 值的表示式。 如果需要不同的精準度和小數位數,則可以使用 DECIMAL 純量函數來進行變更。
十進位字元
指定單位元組字元常數,用來區隔結果字串中的小數位數。 字元必須是句點或逗點。 如果未指定第二個引數,則小數點是預設小數點。 如需相關資訊,請參閱 小數點

結果是引數的可變長度圖形字串表示法。 結果包括十進位字元及最多 p 位數, 其中 pdecimal-expression 的精準度,前面有減號 (如果引數是負數)。 不會傳回前導零。 傳回尾端零。 如果 十進位表示式 的小數位數為零,則不會傳回十進位字元。

結果的長度屬性是 2 +P ,其中 Pdecimal-expression的精準度。 結果的實際長度是可用來代表結果的最小字元數,但包括尾端字元除外。 不包括前導零。 如果引數是負數,則結果會以減號開始。 否則,結果會以數字或 十進位字元開頭。

結果的 CCSID 是 1200 (UTF-16)。

浮動-指向 DBCLOB

浮點表示式
傳回內建浮點資料類型 (DOUBLE 或 REAL) 值的表示式。
十進位字元
指定單位元組字元常數,用來區隔結果字串中的小數位數。 字元必須是句點或逗點。 如果未指定第二個引數,則小數點是預設小數點。 如需相關資訊,請參閱 小數點

結果是以浮點常數形式呈現引數的可變長度圖形字串表示法。

結果的長度屬性為 24。 結果的實際長度是可以代表引數值的最小字元數,因此假數是由零以外的單一數字後面接著 十進位字元 及一連串數字所組成。 如果引數是負數,則結果的第一個字元是減號; 否則,第一個字元是數字或 十進位字元。 如果引數為零,則結果為 0E0。

結果的 CCSID 是 1200 (UTF-16)。

十進位浮點至 DBCLOB

十進位浮點表示式
傳回內建十進位浮點資料類型值的表示式。
十進位字元
指定單位元組字元常數,用來區隔結果字串中的小數位數。 字元必須是句點或逗點。 如果未指定第二個引數,則小數點是預設小數點。 如需相關資訊,請參閱 小數點

結果會以十進位浮點常數的形式來呈現引數的可變長度圖形字串。

結果的長度屬性為 42。 結果的實際長度是代表引數值的最小字元數,包括符號、數字及 十進位字元。 尾端零是顯著的。 如果引數是負數,則結果的第一個字元是減號; 否則,第一個字元是數字或 十進位字元。 如果引數為零,則結果為 0。

如果 DECFLOAT 值是 InfinitysNaNNaN,則會分別傳回字串 'INFINITY'、'SNAN '和' NAN '。 如果特殊值是負數,則減號將是字串中的第一個字元。 DECFLOAT 特殊值 sNaN 在轉換為字串時不會導致異常狀況。

結果的 CCSID 是 1200 (UTF-16)。

字元至 DBCLOB

字元表示式
此表示式會傳回內建字串資料類型的值。 它不能是 CHAR 或 VARCHAR 位元資料。 如果表示式是空字串或 EBCDIC 字串 X'0E0F',則結果會是空字串。
長度
整數常數,它 指定產生的可變長度字串的長度屬性。 值必須介於 1 與 1 073 741 823 之間。

如果未指定第二個引數或指定 DEFAULT:

  • 如果 character-expression 是空字串常數,則結果的長度屬性為 1。
  • 否則,結果的長度屬性與第一個引數的長度屬性相同。

結果的實際長度是結果長度屬性的最小值,以及 character-expression的實際長度。 如果 character-expression 的長度大於結果的長度屬性,則會執行截斷。 除非截斷的字元都是空白,否則會傳回警告 (SQLSTATE 01004)。

整數
整數常數,它 指定產生的可變長度圖形字串的 CCSID。 它必須是 DBCS、 UTF-16或 UCS-2 CCSID。 CCSID不能為65535。

在下列規則中, S 表示下列其中一項:

  • 如果字串表示式是包含外部編碼方法中的資料的主變數,則 S 是將資料轉換成原生編碼方法中的 CCSID 之後表示式的結果。 (如需相關資訊,請參閱 字元轉換 。)
  • 如果字串表示式是原生編碼方法中的資料,則 S 是該字串表示式。

如果未指定第三個引數,且第一個引數是字元,則結果的 CCSID 是由混合的 CCSID 所決定。 讓 M 表示混合 CCSID。 M 決定如下:

  • 如果 S 的 CCSID 是混合 CCSID ,則 M 是該 CCSID。
  • 如果 S 的 CCSID 是 SBCS CCSID:
    • 如果 S 的 CCSID 有關聯的混合 CCSID ,則 M 是該 CCSID。
    • 否則不容許作業。

下表根據 M 彙總結果 CCSID。

M 結果 CCSID 說明 DBCS 替代字元
930 300 日文 EBCDIC X'FEFE '
933 834 韓文 EBCDIC X'FEFE '
935 837 S-中文 EBCDIC X'FEFE '
937 835 中文 EBCDIC X'FEFE '
939 300 日文 EBCDIC X'FEFE '
5026 4396 日文 EBCDIC X'FEFE '
5035 4396 日文 EBCDIC X'FEFE '

如果結果是 DBCS 圖形資料,則 SBCS 和 DBCS 字元的等值取決於 M。 不論 CCSID 為何,引數中的每一個雙位元組字碼點都會被視為 DBCS 字元,而引數中的每一個單位元組字碼點都會被視為 SBCS 字元,但 EBCDIC 混合資料移位碼 X'0E'X'0F'除外。

  • 如果引數的第 n 個字元是 DBCS 字元,則結果的第 n 個字元是 DBCS 字元。
  • 如果引數的第 n 個字元是具有相等 DBCS 字元的 SBCS 字元,則結果的第 n 個字元是相等 DBCS 字元。
  • 如果引數的第 n 個字元是沒有相等 DBCS 字元的 SBCS 字元,則結果的第 n 個字元是 DBCS 替代字元。

如果結果是 Unicode 圖形資料,則引數的每一個字元會決定結果的一個字元。 結果的第 n 個字元等同於引數第 n 個字元的 UTF-16 或 UCS-2 。

圖形至 DBCLOB

圖形表示式
傳回內建圖形字串資料類型的值的表示式。
長度
整數常數,用來 指定產生的可變長度圖形字串的長度屬性。 值必須介於 1 與 1 073 741 823 之間。

如果未指定第二個引數或指定 DEFAULT:

  • 如果 圖形表示式 是空字串常數,則結果的長度屬性為 1。
  • 否則,結果的長度屬性與第一個引數的長度屬性相同。

結果的實際長度是結果長度屬性的最小值,以及 graphic-expression的實際長度。 如果 graphic-expression 的長度大於結果的長度屬性,則會執行截斷。 除非截斷的字元都是空白,否則會傳回警告 (SQLSTATE 01004)。

整數
整數常數,它 指定產生的可變長度圖形字串的 CCSID。 它必須是 DBCS、 UTF-16或 UCS-2 CCSID。 CCSID不能為65535。

在下列規則中, S 表示下列其中一項:

  • 如果字串表示式是包含外部編碼方法中的資料的主變數,則 S 是將資料轉換成原生編碼方法中的 CCSID 之後表示式的結果。 (如需相關資訊,請參閱 字元轉換 。)
  • 如果字串表示式是原生編碼方法中的資料,則 S 是該字串表示式。

如果未指定第三個引數,則結果的 CCSID 與第一個引數的 CCSID 相同。

DBCLOB 的日期時間

datetime-表示式
屬於下列三種內建資料類型之一的表示式
日期
結果是以第二個引數指定的格式來呈現日期的可變長度圖形字串。 如果未指定第二個引數,則使用的格式是預設日期格式。 如果格式是 ISO、USA、EUR 或 JIS ,則結果的長度屬性和實際長度是 10。 否則,結果的長度屬性和實際長度會是預設日期格式的長度。 如需相關資訊,請參閱 日期時間值的字串表示法
時間 (time)
結果是以第二個引數指定的格式來呈現時間的可變長度圖形字串。 如果未指定第二個引數,則使用的格式是預設時間格式。 結果的長度屬性及實際長度為 8。 如需相關資訊,請參閱 日期時間值的字串表示法
時間戳記
第二個引數不適用,且不得指定。

結果是時間戳記的可變長度圖形字串表示法。 如果 datetime-expression 是 TIMESTAMP (0) ,則結果的長度屬性及實際長度為 19。 如果 datetime-expression 的資料類型是 TIMESTAMP (n) ,則結果的長度屬性及實際長度為 20 +n 否則,結果的長度屬性及實際長度為 26。

結果的 CCSID 是 1200 (UTF-16)。
ISO、EUR、USA 或 JIS
指定產生的圖形字串的日期或時間格式。 如需相關資訊,請參閱 日期時間值的字串表示法
區域
指定結果圖形字串的日期或時間格式應該來自現行伺服器上工作的 DATFMT、DATSEP、TIMFMT 及 TIMSEP 屬性。 使用「顯示工作 (DSPJOB)」指令來決定對工作有效的日期和時間格式化選項。
變更開始

布林至 DBCLOB

布林表示式
傳回布林值的表示式。

結果是布林值的可變長度圖形字串表示法 ('TRUE' 或 'FALSE')。 長度屬性為 5。 如果 boolean-expression 為 TRUE ,則結果的實際長度為 4。 如果 boolean-expression 為 FALSE ,則結果的實際長度為 5。

結果的 CCSID 是 1200 (UTF-16)。

變更結束

附註

替代語法: 當第一個引數是字串且指定了長度屬性時,應該使用 CAST 規格來增加應用程式的可攜性。 如需相關資訊,請參閱 CAST 規格

範例

  • 使用 EMPLOYEE 表格,將主變數 VAR_DESC (VARGRAPHIC (24)) 設為員工編號 (EMPNO) '000050' 的 DBCLOB 相等名字 (FIRSTNME)。
      SELECT DBCLOB(VARGRAPHIC(FIRSTNME))
        INTO :VAR_DESC
        FROM EMPLOYEE
        WHERE EMPNO = '000050'