|
この関数は、指定されたテーブルの以下のような列情報を取得します。
列名
|
データ型
|
説明
|
---|---|---|
SCOPE
|
SMALLINT
|
rowid の適用範囲。次のいずれかの値を含みます。
IdentifierType が SQL_ROWVER である場合は、NULL が返されます。
|
COLUMN_NAME
|
NULL でない VARCHAR
|
列の名前。名前のない列については、空文字列が返されます。
|
DATA_TYPE
|
NULL でない SMALLINT
|
ODBC SQL データ型。「Pervasive PSQL で使用できるデータ型」も参照してください。
|
PRECISION
|
INTEGER
|
データベース内のプロシージャ列のサイズ。「Decimal データ型の精度と小数点以下桁数」も参照してください。
|
LENGTH
|
INTEGER
|
SQL_C_DEFAULT が指定された場合は、SQLGetData または SQLFetch 操作で転送されるデータの長さ(バイト単位)。数値データの場合、このサイズは、データベースに格納されているデータのサイズとは異なる場合があります。「Pervasive PSQL で使用できるデータ型」も参照してください。
|
SCALE
|
SMALLINT
|
データベース内のプロシージャ列の小数点以下の桁数。小数点以下の桁数が適用されないデータ型では、NULL が返されます。「Decimal データ型の精度と小数点以下桁数」も参照してください。
|
PSEUDO_COLUMN
|
SMALLINT
|
列が擬似列であるかどうかを示します。
Pervasive PSQL は擬似列をサポートしません。
|
この例では次のようなテーブルを作成します。テーブルは行を一意に識別する 2 つの列を持ち、トランザクションが行内の任意の値を更新したときにそれらの列が自動的に更新されます。
CREATE TABLE t2 (c1 IDENTITY, c2 INTEGER, c3 SMALLINT NOT NULL, c4 TIMESTAMP NOT NULL) ALTER TABLE t2 ADD PRIMARY KEY (c1, c4) SELECT * FROM dbo.fSQLSpecialColumns ('Demodata' ,'t2' , 'null')
結果セット(スペースを考慮して短縮されています):
COLUMN_NAME DATA_TYPE TYPE_NAME PRECISION LENGTH =========== ========= ========= ========= ====== c1 4 INTEGER 4 4 c4 11 DATETIME 16 16 2 行が影響を受けました。
|