Share via


SQLColAttributes のマッピング

アプリケーションが ODBC 3.x ドライバーを介して SQLColAttributes を呼び出すと、SQLColAttributes の呼び出しは次のように SQLColAttribute にマップされます。

Note

ODBC 3.xFieldIdentifier 値で使用されるプレフィックスは、ODBC 2.x で使用されるプレフィックスと変更されています。 新しいプレフィックスは "SQL_DESC" です。古いプレフィックスは "SQL_COLUMN" でした。

  1. アプリケーションが ODBC 2.x アプリケーションの場合、 fDescType がSQL_COLUMN_TYPEされ、返される型が簡潔な DATETIME 型である場合、ドライバー マネージャーは戻り値を日付、時刻、およびタイムスタンプ コードにマップします。

  2. fDescType がSQL_COLUMN_NAME、SQL_COLUMN_NULLABLE、またはSQL_COLUMN_COUNTの場合、ドライバー マネージャーはドライバーで SQLColAttribute を呼び出し、FieldIdentifier 引数をSQL_DESC_NAME、SQL_DESC_NULLABLE、またはSQL_DESC_COUNTにマップします。**fDescType の他のすべての値はドライバーに渡されます。

ODBC 3.x ドライバーは、SQLColAttribute に一覧表示されているすべての ODBC 3.xFieldIdentifiers をサポートする必要があります。

ODBC 3.x ドライバーは、SQL_COLUMN_PRECISIONとSQL_DESC_PRECISION、SQL_COLUMN_SCALEとSQL_DESC_SCALE、SQL_COLUMN_LENGTHとSQL_DESC_LENGTHをサポートする必要があります。 ODBC 3.x では精度、小数点以下桁数、長さが ODBC 2.x とは異なる方法で定義されるため、これらの値は異なります。 詳細については、「付録 D: データ型」の 「列サイズ、10 進数、転送オクテット長、および表示サイズ 」を参照してください。