ページの先頭行へ戻る
Symfoware Server V11.1.0 アプリケーション開発ガイド(.NET Data Provider編)
FUJITSU Software

付録G SchemaTable

SymfowareDataReaderのGetSchemaTableメソッドにより返却される、SymfowareDataReader の各列のメタデータについて説明します。

メタデータ

データ

説明

ColumnName

System.String

対象列の列名が返却されます。相関名が指定された場合、列名として相関名が返却されます。

ColumnOrdinal

System.Int32

対象列の選択リストにおける指定順番号が返却されます。0 から順番に採番された値が返却されます。

ColumnSize

System.Int32

対象列が文字列型の場合、最大文字数が返却されます。それ以外の型の場合、データ長が返却されます。

NumericPrecision

System.Int16

対象列が真数型/概数型の場合、精度が返却されます。真数型でも概数型でもない場合、DBNull.Valueが返却されます。

NumericScale

System.Int16

対象列がNUMERICA型/DECIMAL型の場合、位取りが返却されます。それ以外のデータ型の場合、DBNull.Valueが返却されます。

IsUnique

System.Boolean

データの一意性が保障されている列であることを示します。

以下の条件の順に、true/falseが決まります。以下の条件に該当しない場合はfalseとなります。

1) 対象列が一意性制約を構成する列の一つである場合、trueとなります。

2) 上記の1)の条件によりtrueとなる場合でも、対象となるSELECT文が更新不可(注1)の場合は、falseとなります。

IsKey

System.Boolean

一意性制約を構成するすべての列が指定されていることを示します。

以下の条件の順に、true/falseが決まります。以下の条件に該当しない場合はfalseとなります。

1) 対象となる選択リストに主キーを構成する列すべてが指定されている場合、trueとなります。

2) 対象となる選択リストが上記の1)に該当せず、UNIQUE制約のすべての列が指定されている場合、trueとなります。
(UNIQUE制約が複数指定されている場合、最初に定義されたUNIQUE制約のみが対象となります)

3) 上記の1)および2)の条件によりtrueとなる場合でも、対象となるSELECT文が更新不可(注1)の場合は、falseとなります。

BaseServerName

System.String

常にDBNull.Valueが返却されます。

BaseCatalogName

System.String

常にDBNull.Valueが返却されます。

BaseColumnName

System.String

対象列の定義時の列名が返却されます。
(相関名が指定された場合も定義時の列名が返却されます)

BaseSchemaName

System.String

対象列が所属するスキーマ名が返却されます。

BaseTableName

System.String

対象列が所属する表名が返却されます。

DataType

System.Type

列の .NET Framework に合う型に割り当てます。
(詳細については、“2.4 データ型の対応関係”を参照してください)

AllowDBNull

System.Boolean

null値が許可されている場合はtrue、それ以外の場合はfalseとなります。

ProviderType

SymfowareDbType

対象列のデータ型のコードを返却します (注2)

IsAliased

System.Boolean

対象列に相関名が指定されている場合はtrue、相関名が指定されていない場合はfalseとなります。

IsReadOnly

System.Boolean

対象列が読込み専用かどうかを示します。
読込み専用の場合はtrue、それ以外の場合はfalseとなります。

選択リストに単純な列以外が指定されている場合はtrue、単純な列が指定されている場合はflaseになります。

上記の選択リストに指定する値式以外の条件について、対象となるSELECT文が更新不可(注1)の場合は、falseとなります。

IsExpression

System.Boolean

関数(単純な列以外)が指定されている場合はtrue、それ以外(単純な列)が指定されている場合はfalseとなります。

IsAutoIncrement

System.Boolean

常にfalseが返却されます。

IsHidden

System.Boolean

常にfalseが返却されます。

IsLong

System.Boolean

対象列のデータ型がBLOBの場合はtrue、それ以外のデータ型の場合はfalseとなります。

IsIdentity

System.Boolean

常にfalseが返却されます。

IsRowVersion

System.Boolean

常にfalseが返却されます。

注1) SELECT文の更新不可となる条件については、“SQLリファレンス”の“DECLARE CURSOR(カーソル宣言)”の“読込み専用カーソルとなる条件”の表を参照してください。

注2) データ型のコードについては、“SQLリファレンス”の“DESCRIBE文”の“SQLTYPEまたはTYPEの値とSQLのデータ型の対応”の表を参照してください。