Share via


SQLPrimaryKeys

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Eine Tabelle kann eine Spalte oder Spalten enthalten, die als eindeutige Zeilenbezeichner dienen können, und Tabellen, die ohne eine PRIMARY KEY-Einschränkung erstellt wurden, geben ein leeres 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 kann auf einem statischen Servercursor ausgeführt werden. Ein Versuch, SQLPrimaryKeys auf einem aktualisierbaren (dynamischen oder Keyset)-Cursor auszuführen, gibt SQL_SUCCESS_WITH_INFO zurück, was angibt, dass der Cursortyp geändert wurde.

Der SQL Server Native Client ODBC-Treiber unterstützt Die Berichterstellungsinformationen für Tabellen auf Verbindungsservern, indem er einen zweiteiligen Namen für den CatalogName-Parameter akzeptiert: Linked_Server_Name.Catalog_Name.

SQLPrimaryKeys und Tabellenwertparameter

Wenn das Anweisungsattribut SQL_SOPT_SS_NAME_SCOPE über den Wert SQL_SS_NAME_SCOPE_TABLE_TYPE und nicht über den Standardwert SQL_SS_NAME_SCOPE_TABLE verfügt, 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 Tabellenwertparameter (ODBC).

Weitere Informationen

SQLPrimaryKeys-Funktion
ODBC API Implementation Details