SQLPrimaryKeys
テーブルには一意の行識別子として使用できる列が含まれている場合があり、PRIMARY KEY 制約なしで作成されたテーブルは空の結果セットを SQLPrimaryKeys に返します。 ODBC 関数 SQLSpecialColumns は、主キーのないテーブルの行識別子候補を報告します。
SQLPrimaryKeys は、 CatalogName、 SchemaName、または TableName パラメーターに値が存在するかどうかをSQL_SUCCESS返します。 SQLFetch では、これらのパラメーターに無効な値が使用されると SQL_NO_DATA が返されます。
SQLPrimaryKeys は、静的サーバー カーソルで実行できます。 更新可能 (動的またはキーセット) カーソルで SQLPrimaryKeys を実行しようとすると、カーソルの種類が変更されたことを示すSQL_SUCCESS_WITH_INFOが返されます。
SQL Server Native Client ODBC ドライバーは、CatalogName パラメーターの 2 部構成の名前を受け入れることで、リンク サーバー上のテーブルのレポート情報をサポートしています: Linked_Server_Name.Catalog_Name。
SQLPrimaryKeys とテーブル値パラメーター
ステートメント属性SQL_SOPT_SS_NAME_SCOPE SQL_SS_NAME_SCOPE_TABLEの既定値ではなく、SQL_SS_NAME_SCOPE_TABLE_TYPE値を持つ場合、SQLPrimaryKeys はテーブル型の主キー列に関する情報を返します。 SQL_SOPT_SS_NAME_SCOPEの詳細については、「 SQLSetStmtAttr」を参照してください。
テーブル値パラメーターの詳細については、「テーブル値パラメーター (ODBC)」を参照してください。