SQLProcedureColumns
SQLProcedureColumns
會傳回一個資料列,報告所有SQL Server預存程式的傳回值屬性。
SQLProcedureColumns
會傳回SQL_SUCCESS CatalogName、 SchemaName、 ProcName或 ColumnName 參數的值是否存在。 當這些參數中使用不正確值時,SQLFetch會傳回SQL_NO_DATA。
SQLProcedureColumns
可以在靜態伺服器資料指標上執行。 嘗試在可更新的 (動態或索引鍵集) 資料指標上執行 SQLProcedureColumns
時,將會傳回 SQL_SUCCESS_WITH_INFO,表示資料指標類型已變更。
下表列出結果集所傳回的資料行,以及它們如何透過 SQL Server Native Client ODBC 驅動程式來處理udt和xml資料類型:
資料行名稱 | 描述 |
---|---|
SS_UDT_CATALOG_NAME | 傳回包含 UDT (使用者定義型別) 之目錄的名稱。 |
SS_UDT_SCHEMA_NAME | 傳回包含 UDT 之結構描述的名稱。 |
SS_UDT_ASSEMBLY_TYPE_NAME | 傳回 UDT 的組件完整名稱。 |
SS_XML_SCHEMACOLLECTION_CATALOG_NAME | 傳回定義 XML 結構描述集合名稱所在目錄的名稱。 如果找不到目錄名稱,則此變數包含空字串。 |
SS_XML_SCHEMACOLLECTION_SCHEMA_NAME | 傳回定義 XML 結構描述集合名稱所在結構描述的名稱。 如果找不到結構描述名稱,則此變數包含空字串。 |
SS_XML_SCHEMACOLLECTION_NAME | 傳回 XML 結構描述集合的名稱。 如果找不到名稱,則此變數包含空字串。 |
SQLProcedureColumns 和資料表值參數
SQLProcedureColumns 會以類似 CLR 使用者定義型別的方式來處理資料表值參數。 在針對資料表值參數傳回的資料列中,資料行包含下列值:
資料行名稱 | 描述/值 |
---|---|
DATA_TYPE | SQL_SS_TABLE |
TYPE_NAME | 資料表值參數的資料表類型名稱。 |
COLUMN_SIZE | NULL |
BUFFER_LENGTH | 0 |
DECIMAL_DIGITS | 資料表值參數中,資料行的計數。 |
NUM_PREC_RADIX | NULL |
NULLABLE | SQL_NULLABLE |
REMARKS | NULL |
COLUMN_DEF | NULL。 資料表類型可能沒有預設值。 |
SQL_DATA_TYPE | SQL_SS_TABLE |
SQL_DATEIME_SUB | NULL |
CHAR_OCTET_LENGTH | NULL |
IS_NULLABLE | "YES" |
SS_TYPE_CATALOG_NAME | 傳回包含資料表或 CLR 使用者定義型別之目錄的名稱。 |
SS_TYPE_SCHEMA_NAME | 傳回包含資料表或 CLR 使用者定義型別之結構描述的名稱。 |
SQL Server 2008 和更新版本中提供SS_TYPE_CATALOG_NAME和SS_TYPE_SCHEMA_NAME資料行,分別傳回資料表值參數的目錄和架構。 這些資料行會針對資料表值參數及 CLR 使用者定義型別參數擴展 (CLR 使用者定義類型參數的現有架構和目錄資料行不會受到這項額外功能的影響。它們也會填入,以維護回溯相容性) 。
與 ODBC 規格一致,SS_TYPE_CATALOG_NAME和SS_TYPE_SCHEMA_NAME出現在舊版SQL Server中新增的所有驅動程式特定資料行之前,以及 ODBC 本身所要求的所有資料行之後。
如需資料表值參數的詳細資訊,請參閱 ODBC) (資料表值參數 。
SQLProcedureColumns 對增強日期和時間功能的支援
如需針對日期/時間類型傳回的值,請參閱 目錄中繼資料。
如需詳細資訊,請參閱 ODBC) (日期和時間改善 。
SQLProcedureColumns 對大型 CLR UDT 的支援
SQLProcedureColumns
支援大型 CLR 使用者定義型別 (UDT)。 如需詳細資訊,請參閱 ODBC) (大型 CLR User-Defined 類型 。