SYSFIELDS

SYSFIELDS ビューには、フィールド・プロシージャーを持つ各列ごとに、行が 1 つずつ入ります。

SYSFIELDS 内の列属性は、 フィールド・プロシージャーによって定義された内部列属性を記述します。 次の表は、SYSFIELDS ビューの列について説明しています。

表 1. SYSFIELDS ビュー
列名 システム列名 データ・タイプ 説明
TABLE_SCHEMA DBNAME VARCHAR(128) 表が入っている SQL スキーマの名前。
TABLE_NAME TBNAME VARCHAR(128) 列が入っている表の名前。 SQL の表名が存在する場合は、その SQL の表名になります。 存在しない場合は、システムの表名になります。
COLUMN_NAME NAME VARCHAR(128) 列の名前。 SQL の列名が存在する場合は、その SQL の列名になります。 存在しない場合は、システムの列名になります。
ORDINAL_POSITION COLNO INTEGER 表における該当の列の数値位置 (左から右への順序)。
DATA_TYPE COLTYPE VARCHAR(8) 列のタイプ:
BIGINT
大整数
INTEGER
長整数
SMALLINT
短整数
DECIMAL
パック 10 進数
NUMERIC
ゾーン 10 進数
FLOAT
浮動小数点数; FLOAT、REAL、または DOUBLE PRECISION
DECFLOAT
10 進浮動小数点数
CHAR
固定長文字ストリング
VARCHAR
可変長文字ストリング
CLOB
文字ラージ・オブジェクト・ストリング
GRAPHIC
固定長グラフィック・ストリング
VARG
可変長グラフィック・ストリング
DBCLOB
2 バイト文字ラージ・オブジェクト・ストリング
BINARY
固定長バイナリー・ストリング
VARBIN
可変長バイナリー・ストリング
BLOB
バイナリー・ラージ・オブジェクト・ストリング
DATE
日付
TIME
時刻
TIMESTMP
タイム・スタンプ
DATALINK
データ・リンク
ROWID
行 ID
XML
XML
DISTINCT
特殊タイプ
LENGTH LENGTH INTEGER 列の長さ属性。 ただし、10 進数、数値、または非ゼロ精度 2 進数の列の場合は、その精度:
8 バイト
BIGINT
4 バイト
INTEGER
2 バイト
SMALLINT
数の精度
DECIMAL
数の精度
NUMERIC
8 バイト
FLOAT、FLOAT(n) (ここで n = 25 から 53)、または DOUBLE PRECISION
4 バイト
FLOAT(n) (ここで n = 1 から 24)、または REAL
8 バイト
DECFLOAT(16)
16 バイト
DECFLOAT(34)
ストリングの長さ
CHAR
ストリングの最大長
VARCHAR または CLOB
グラフィック・ストリングの長さ
GRAPHIC
グラフィック・ストリングの最大長
VARGRAPHIC または DBCLOB
ストリングの長さ
BINARY
2 進ストリングの最大長
VARBIN または BLOB
4 バイト
DATE
3 バイト
TIME
((p+1)/2) + 7 (p はタイム・スタンプの精度) の整数部分
TIMESTAMP
データ・リンク URL およびコメントの最大長
DATALINK
40 バイト
ROWID
2147483647 バイト
XML
ソース・タイプと同じ値
DISTINCT
CHARACTER_MAXIMUM_LENGTH CHARLEN INTEGER
NULL 可能
データ・タイプが 2 進ストリング、文字ストリング、グラフィック・ストリング、および XML の場合は、ストリングの最大長。

列がストリングでない場合は、NULL 値が入ります。

CHARACTER_OCTET_LENGTH CHARBYTE INTEGER
NULL 可能
データ・タイプが 2 進ストリング、文字ストリング、グラフィック・ストリング、および XML の場合は、バイト数。

列がストリングでない場合は、NULL 値が入ります。

NUMERIC_SCALE SCALE
INTEGER
NULL 可能
数値データの位取り。

列が 10 進数、数値、または 2 進数でない場合は、NULL 値が入ります。

NUMERIC_PRECISION PRECISION INTEGER
NULL 可能
数値の列すべての精度。
注: この列では、すべての数値データ・タイプ (10 進浮動小数点数、単精度および倍精度の浮動小数点数を含む) の精度を指定します。NUMERIC_PRECISION_RADIX 列は、この列の値が 2 進数であるか、または 10 進数であるかを示します。

列が数値の列でない場合は、NULL 値が入ります。

NUMERIC_PRECISION_RADIX RADIX INTEGER
NULL 可能
NUMERIC_PRECISION の列で指定される精度が、2 進数 と 10 進数のどちらの数値で指定されるかを指示します。
2
2 進数: 浮動小数点数の精度は 2 進数で指定されます。
10
10 進数: 他の数値タイプはすべて 10 進数で指定されます。

列が数値の列でない場合は、NULL 値が入ります。

CCSID CCSID INTEGER
NULL 可能
CHAR、VARCHAR、CLOB、DATE、TIME、 TIMESTAMP、GRAPHIC、VARGRAPHIC、 DBCLOB、XML、および DATALINK 列の CCSID の値。

列が BINARY、VARBIN、BLOB または ROWID の場合は、65535 が入ります。

列が数値データ・タイプの場合は、NULL 値が入ります。

DATETIME_PRECISION DATPRC INTEGER
NULL 可能
日付、時刻、またはタイム・スタンプの小数部分。
0
データ・タイプが DATE および TIME の場合
0-12
データ・タイプが TIMESTAMP の場合 (小数秒)

列が日付、時刻、またはタイム・スタンプの列でない場合は、NULL 値が入ります。

FIELD_PROC FLDPROC VARCHAR(279)
NULL 可能
プロシージャーの名前。
PARMLIST PARMLIST DBCLOB(1M)
CCSID 1200
NULL 可能
フィールド・プロシージャーを定義したステートメントの FIELDPROC の後ろにあるパラメーター・リスト (意味のないブランクは削除)。
EXITPARM EXITPARM BLOB(1M)
NULL 可能
フィールド・プロシージャーのパラメーター値ブロック。フィールド・プロシージャーの呼び出し時にフィールド・プロシージャーに渡す制御ブロックです。
SYSTEM_COLUMN_NAME SYS_CNAME CHAR(10) 列のシステム名
SYSTEM_TABLE_NAME SYS_TNAME CHAR(10) 表のシステム名
SYSTEM_TABLE_SCHEMA SYS_DNAME CHAR(10) スキーマのシステム名