Share via


SQLGetInfo のサポート

ODBC 2 の場合。x アプリケーションは SQLGetInfo を ODBC 3*.x* ドライバーに呼び出します。次の表の InfoType 引数はサポートされている必要があります。

Infotype 戻り値
SQL_ALTER_TABLE (ODBC 2.0) 注: この情報の種類は非推奨ではありません。右側の列のビットマスクは非推奨です。 データ ソースでサポートされている ALTER TABLE ステートメントの句を列挙する SQLINTEGER ビットマスク。

サポートされている句を決定するには、次のビットマスクを使用します。

SQL_AT_DROP_COLUMN = 列を削除する機能がサポートされています。 この結果が連鎖または制限動作のどちらになるかは、ドライバーによって定義されます。 (ODBC 2.0)

SQL_AT_ADD_COLUMN = 1 つの ALTER TABLE ステートメントに複数の列を追加する機能がサポートされています。 このビットは、他のSQL_AT_ADD_COLUMN_XXXビットやSQL_AT_CONSTRAINT_XXXビットと組み合わせません。 (ODBC 2.0)
SQL_FETCH_DIRECTION (ODBC 1.0)

情報型は ODBC 1.0 で導入されました。各ビットマスクには、導入されたバージョンでラベルが付けられます。
サポートされているフェッチ方向オプションを列挙する SQLINTEGER ビットマスク。

次のビットマスクは、 フラグと組み合わせて使用され、サポートされているオプションを決定します。

SQL_FD_FETCH_NEXT (ODBC 1.0) SQL_FD_FETCH_FIRST (ODBC 1.0) SQL_FD_FETCH_LAST (ODBC 1.0) SQL_FD_FETCH_PRIOR (ODBC 1.0) SQL_FD_FETCH_ABSOLUTE (ODBC 1.0) SQL_FD_FETCH_RELATIVE (ODBC 1.0) SQL_FD_FETCH_BOOKMARK (ODBC 2.0)
SQL_LOCK_TYPES (ODBC 2.0) SQLSetPos の fLock 引数でサポートされているロックの種類を列挙する SQLINTEGER ビットマスク。

次のビットマスクは、 フラグと組み合わせて使用され、サポートされているロックの種類を決定します。

SQL_LCK_NO_CHANGE SQL_LCK_EXCLUSIVE SQL_LCK_UNLOCK
SQL_ODBC_API_CONFORMANCE (ODBC 1.0) ODBC 準拠のレベルを示す SQLSMALLINT 値。

SQL_OAC_NONE = なし

SQL_OAC_LEVEL1 = レベル 1 がサポートされています

SQL_OAC_LEVEL2 = レベル 2 がサポートされています
SQL_ODBC_SQL_CONFORMANCE (ODBC 1.0) ドライバーでサポートされている SQL 文法を示す SQLSMALLINT 値。 SQL 準拠レベルの定義については、「 付録 C: SQL 文法 」を参照してください。

SQL_OSC_MINIMUM = サポートされている最小文法

SQL_OSC_CORE = コア文法がサポートされています

SQL_OSC_EXTENDED = 拡張文法がサポートされています
SQL_POS_OPERATIONS (ODBC 2.0) SQLSetPos でサポートされている操作を列挙する SQLINTEGER ビットマスク。

次のビットマスクを フラグと組み合わせて使用して、サポートされているオプションを決定します。

SQL_POS_POSITION (ODBC 2.0) SQL_POS_REFRESH (ODBC 2.0) SQL_POS_UPDATE (ODBC 2.0) SQL_POS_DELETE (ODBC 2.0) SQL_POS_ADD (ODBC 2.0)
SQL_POSITIONED_STATEMENTS (ODBC 2.0) サポートされている位置指定 SQL ステートメントを列挙する SQLINTEGER ビットマスク。

サポートされているステートメントを決定するには、次のビットマスクを使用します。

SQL_PS_POSITIONED_DELETE、SQL_PS_POSITIONED_UPDATE、SQL_PS_SELECT_FOR_UPDATE
SQL_SCROLL_CONCURRENCY (ODBC 1.0) カーソルでサポートされているコンカレンシー制御オプションを列挙する SQLINTEGER ビットマスク。

サポートされているオプションを決定するには、次のビットマスクを使用します。

SQL_SCCO_READ_ONLY = カーソルは読み取り専用です。 更新は許可されません。

SQL_SCCO_LOCK = カーソルは、行を確実に更新できるように、最も低いレベルのロックを使用します。

SQL_SCCO_OPT_ROWVER = Cursor はオプティミスティック コンカレンシー制御を使用し、SQLBase ROWID や Sybase TIMESTAMP などの行バージョンを比較します。

SQL_SCCO_OPT_VALUES = Cursor はオプティミスティック コンカレンシー制御を使用し、値を比較します。
SQL_STATIC_SENSITIVITY (ODBC 2.0) SQLSetPos または位置指定された更新ステートメントまたは delete ステートメントを使用して、アプリケーションが静的カーソルまたはキーセット ドリブン カーソルに加えた変更を、そのアプリケーションで検出できるかどうかを列挙する SQLINTEGER ビットマスク。

SQL_SS_ADDITIONS = 追加された行がカーソルに表示されます。カーソルは、これらの行までスクロールできます。 これらの行がカーソルに追加される場所は、ドライバーに依存します。

SQL_SS_DELETIONS = 削除された行はカーソルで使用できなくなり、結果セットに "穴" が残りません。削除された行からカーソルがスクロールした後、その行に戻ることはできません。

SQL_SS_UPDATES = 行への更新はカーソルに表示されます。カーソルがカーソルからスクロールして更新された行に戻る場合、カーソルによって返されるデータは、元のデータではなく更新されたデータになります。 このオプションは、キーを更新しないキーセット ドリブン カーソルの静的カーソルまたは更新にのみ適用されます。 このオプションは、動的カーソル、または混合カーソルでキーが変更された場合には適用されません。

アプリケーションが、同じアプリケーション内の他のカーソルを含め、他のユーザーによって結果セットに加えられた変更を検出できるかどうかは、カーソルの種類によって異なります。

ODBC 3*.x* ドライバーを使用する ODBC 3*.x* アプリケーションでは、前の表で説明した InfoType 引数を使用して SQLGetInfo を呼び出さないでくださいが、次の段落に示す ODBC 3*.x* InfoType 引数を使用する必要があります。 ODBC 2 で使用される InfoType 引数の間に一対一の対応はありません。x と ODBC 3*.x* で使用されるもの。 ODBC 2 で動作する ODBC 3*.x* アプリケーション。一方、x ドライバーでは、前に説明した InfoType 引数を使用する必要があります。

前の表の一部の情報型は、カーソル属性の情報型を優先して非推奨とされています。 これらの非推奨の情報の種類は、SQL_FETCH_DIRECTION、SQL_LOCK_TYPES、SQL_POS_OPERATIONS、SQL_POSITIONED_STATEMENTS、SQL_SCROLL_CONCURRENCY、およびSQL_STATIC_SENSITIVITYです。 新しいカーソル属性の種類はSQL_XXX_CURSOR_ATTRIBUTES1and SQL_XXX_CURSOR_ATTRIBUTES2され、XXX は DYNAMIC、FORWARD_ONLY、KEYSET_DRIVEN、または STATIC と等しくなります。 新しい各型は、1 つのカーソルの種類のドライバー機能を示します。 これらのオプションの詳細については、 SQLGetInfo 関数の説明を参照してください。