次の方法で共有


SQLColumns

SQLColumns は、CatalogName パラメータ、TableName パラメータ、または ColumnName パラメータに値が存在するかどうかに関係なく SQL_SUCCESS を返します。SQLFetch では、これらのパラメータに無効な値が使用されると SQL_NO_DATA が返されます。

ms131413.note(ja-jp,SQL.90).gifメモ :
大きな値型の場合、すべての長さパラメータが SQL_SS_LENGTH_UNLIMITED という値で返されます。

SQLColumns は静的サーバー カーソルで実行できます。更新可能なカーソル (動的カーソルまたはキーセット カーソル) で SQLColumns を実行しようとすると、カーソルの種類が変更されていることを示す SQL_SUCCESS_WITH_INFO が返されます。

SQL Native Client ODBC ドライバでは、CatalogName パラメータに 2 部構成の名前 (Linked_Server_Name.Catalog_Name) を許可することで、リンク サーバーのテーブルに関する情報の報告がサポートされます。

TableName にワイルドカードを使用しない ODBC 2.x アプリケーションの場合、名前が TableName と一致し、現在のユーザーが所有するすべてのテーブルに関する情報が SQLColumns から返されます。現在のユーザーが TableName パラメータと名前が一致するテーブルを所有していない場合、他のユーザーが所有し、名前が TableName パラメータと一致するすべてのテーブルに関する情報が SQLColumns から返されます。ワイルドカードを使用する ODBC 2.x アプリケーションの場合、TableName と名前が一致するすべてのテーブルが SQLColumns から返されます。ODBC 3.x アプリケーションの場合、ワイルドカードを使用するかどうかや所有者に関係なく、TableName と名前が一致するすべてのテーブルが SQLColumns から返されます。

次の表は、結果セットによって返される列の一覧です。

列名 説明

DATA_TYPE

varchar(max) データ型の場合、SQL_VARCHAR、SQL_VARBINARY、または SQL_WVARCHAR を返します。

TYPE_NAME

varchar(max) データ型、varbinary(max) データ型、および nvarchar(max) データ型の場合、"varchar"、"varbinary"、または "nvarchar" を返します。

COLUMN_SIZE

varchar(max) データ型の場合、列のサイズが無制限であることを示す SQL_SS_LENGTH_UNLIMITED を返します。

BUFFER_LENGTH

varchar(max) データ型の場合、バッファのサイズが無制限であることを示す SQL_SS_LENGTH_UNLIMITED を返します。

SQL_DATA_TYPE

varchar(max) データ型の場合、SQL_VARCHAR、SQL_VARBINARY、または SQL_WVARCHAR を返します。

CHAR_OCTET_LENGTH

char 型または binary 型の列の最大長を返します。サイズが無制限であることを示す場合は 0 を返します。

SS_XML_SCHEMACOLLECTION_CATALOG_NAME

XML スキーマ コレクション名が定義されているカタログの名前を返します。カタログ名が見つからない場合は、この変数に空文字列が含まれます。

SS_XML_SCHEMACOLLECTION_SCHEMA_NAME

XML スキーマ コレクション名が定義されているスキーマの名前を返します。スキーマ名が見つからない場合は、この変数に空文字列が含まれます。

SS_XML_SCHEMACOLLECTION_NAME

XML スキーマ コレクションの名前を返します。名前が見つからない場合は、この変数に空文字列が含まれます。

SS_UDT_CATALOG_NAME

UDT (ユーザー定義型) を含むカタログの名前です。

SS_UDT_SCHEMA_NAME

UDT を含むスキーマの名前です。

SS_UDT_ASSEMBLY_TYPE_NAME

UDT のアセンブリ修飾名です。

UDT の場合、UDT の名前を示すには既存の TYPE_NAME 列が使用されます。そのため、SQLColumns または SQLProcedureColumns の結果セットには、新しい列は追加されません。UDT 列または UDT パラメータの場合、DATA_TYPE は SQL_SS_UDT です。

サーバーからパラメータの UDT に関する追加のメタデータ プロパティを返したり、サーバーでこのメタデータ プロパティの情報が必要となる場合は、上記に定義したドライバ固有の新しい記述子を使用して、UDT のメタデータ プロパティの取得や設定を行えます。

参照

概念

ODBC API 実装の詳細

その他の技術情報

SQLColumns 関数

ヘルプおよび情報

SQL Server 2005 の参考資料の入手