Freigeben über


SQLPrimaryKeys

Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Eine Tabelle verfügt möglicherweise über eine Spalte oder Spalten, die als eindeutige Zeilenbezeichner dienen können, und Tabellen, die ohne EINE PRIMARY KEY-Einschränkung erstellt wurden, geben einen leeren Resultset an SQLPrimaryKeys zurück. Die ODBC-Funktion SQLSpecialColumns meldet Zeilenbezeichnerkandidaten für Tabellen ohne Primärschlüssel.

SQLPrimaryKeys gibt SQL_SUCCESS zurück, ob Werte für die Parameter CatalogName, SchemaName oder TableName vorhanden sind. SQLFetch gibt SQL_NO_DATA zurück, wenn in diesen Parametern ungültige Werte verwendet werden.

SQLPrimaryKeys können auf einem statischen Servercursor ausgeführt werden. Ein Versuch, SQLPrimaryKeys auf einem aktualisierbaren Cursor (dynamisch oder keyset) auszuführen, gibt SQL_SUCCESS_WITH_INFO zurück, der angibt, dass der Cursortyp geändert wurde.

Der ODBC-Treiber für SQL Server Native Client unterstützt Berichtsinformationen für Tabellen auf verknüpften Servern, indem er einen zweiteiligen Namen für den Parameter "CatalogName " akzeptiert: Linked_Server_Name.Catalog_Name.

SQLPrimaryKeys und Tabellenwertparameter

Wenn das Anweisungsattribut SQL_SOPT_SS_NAME_SCOPE den Wert SQL_SS_NAME_SCOPE_TABLE_TYPE hat, statt den Standardwert von SQL_SS_NAME_SCOPE_TABLE, gibt SQLPrimaryKeys Informationen zu Primärschlüsselspalten von Tabellentypen zurück. Weitere Informationen zu SQL_SOPT_SS_NAME_SCOPE finden Sie unter SQLSetStmtAttr.

Weitere Informationen zu Tabellenwertparametern finden Sie unter "Table-Valued Parameters (ODBC)".

Weitere Informationen

SQLPrimaryKeys-Funktion
ODBC-API-Implementierungsdetails