Teilen über


SQLProcedureColumns

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

SQLProcedureColumns gibt eine Zeile zurück, die die Rückgabewertattribute aller gespeicherten SQL Server-Prozeduren meldet.

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

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

In der folgenden Tabelle sind die spalten aufgeführt, die vom Resultset zurückgegeben werden und wie sie erweitert wurden, um die Datentypen udt und XML über den SQL Server Native Client ODBC-Treiber zu verarbeiten:

Spaltenname Beschreibung
SS_UDT_CATALOG_NAME Gibt den Namen des Katalogs zurück, der den benutzerdefinierten Typ (User-Defined Type, UDT) enthält.
SS_UDT_SCHEMA_NAME Gibt den Namen des Schemas zurück, das den UDT enthält.
SS_UDT_ASSEMBLY_TYPE_NAME Gibt den qualifizierten Namen des UDT-Assemblys zurück.
SS_XML_SCHEMACOLLECTION_CATALOG_NAME Gibt den Namen des Katalogs zurück, in dem ein XML-Schemaauflistungsname definiert ist. Wenn der Katalogname nicht gefunden werden kann, enthält diese Variable eine leere Zeichenfolge.
SS_XML_SCHEMACOLLECTION_SCHEMA_NAME Gibt den Namen des Schemas zurück, in dem ein XML-Schemaauflistungsname definiert ist. Wenn der Schemaname nicht gefunden werden kann, enthält diese Variable eine leere Zeichenfolge.
SS_XML_SCHEMACOLLECTION_NAME Gibt den Namen einer XML-Schemaauflistung zurück. Wenn der Name nicht gefunden werden kann, enthält diese Variable eine leere Zeichenfolge.

SQLProcedureColumns und Tabellenwertparameter

SQLProcedureColumns verarbeitet tabellenwertige Parameter in einer Weise, die clR benutzerdefinierten Typen ähnelt. In Zeilen, die für Tabellenwertparameter zurückgegeben werden, verfügen Spalten über die folgenden Werte:

Spaltenname Beschreibung/Wert
DATA_TYPE SQL_SS_TABLE
TYPE_NAME Der Name des Tabellentyps für den Tabellenwertparameter.
COLUMN_SIZE NULL
BUFFER_LENGTH 0
DECIMAL_DIGITS Die Anzahl der Spalten im Tabellenwertparameter.
NUM_PREC_RADIX NULL
NULLABLE SQL_NULLABLE
ANMERKUNGEN NULL
COLUMN_DEF NULL. Tabellentypen könnten keine Standardwerte besitzen.
SQL_DATA_TYPE SQL_SS_TABLE
SQL_DATEIME_SUB NULL
CHAR_OCTET_LENGTH NULL
IS_NULLABLE "YES"
SS_TYPE_CATALOG_NAME Gibt den Namen des Katalogs zurück, der die Tabelle oder den CLR-benutzerdefinierten Typ enthält.
SS_TYPE_SCHEMA_NAME Gibt den Namen des Schemas zurück, das die Tabelle oder den CLR-benutzerdefinierten Typ enthält.

Die spalten SS_TYPE_CATALOG_NAME und SS_TYPE_SCHEMA_NAME sind in SQL Server 2008 (10.0.x) und höheren Versionen verfügbar, um den Katalog bzw. das Schema für Parameter mit Tabellenwerten zurückzugeben. Dieses Spalten werden nicht nur mit Tabellenwertparametern sondern auch mit Parametern des CLR-benutzerdefinierten Typs aufgefüllt. (Vorhandene Schema- und Katalogspalten für benutzerdefinierte CLR-Typparameter sind von dieser zusätzlichen Funktionalität nicht betroffen. Sie werden auch aufgefüllt, um die Abwärtskompatibilität aufrechtzuerhalten.

In Übereinstimmung mit der ODBC-Spezifikation werden SS_TYPE_CATALOG_NAME und SS_TYPE_SCHEMA_NAME vor allen treiberspezifischen Spalten angezeigt, die in früheren Versionen von SQL Server hinzugefügt wurden, und nach allen Spalten, die von ODBC selbst vorgeschrieben wurden.

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

SQLProcedureColumns-Unterstützung für erweiterte Funktionen für Datum und Uhrzeit

Die werte, die für Datums-/Uhrzeittypen zurückgegeben werden, finden Sie unter Katalogmetadaten.

Allgemeine Informationen finden Sie unter "Verbesserungen bei Datum und Uhrzeit" (ODBC).

SQLProcedureColumns-Unterstützung für große CLR-UDTs

SQLProcedureColumns unterstützt große benutzerdefinierte CLR-Typen (UDTs). Weitere Informationen finden Sie unter "Large CLR User-Defined Types (ODBC)".

Weitere Informationen

SQLProcedureColumns-Funktion
ODBC-API-Implementierungsdetails