已備妥之陳述式的資料表值參數中繼資料

適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體Azure Synapse AnalyticsAnalytics Platform System (PDW)

應用程式可以透過 SQLNumParams 和 SQLDescribeParam 取得備妥程式調用的中繼資料。 針對資料表值參數, DataTypePtr 會設定為 SQL_SS_TABLE。 其他中繼資料可透過 SQLGetDescField 取得,以供SQL_CA_SS_TYPE_NAME、SQL_CA_SS_CATALOG_NAME及SQL_CA_SS_SCHEMA_NAME使用。

SQL_CA_SS_TYPE_NAME、SQL_CA_SS_CATALOG_NAME和SQL_CA_SS_SCHEMA_NAME可以搭配 SQLColumns 使用,以取得與資料表值參數相關聯之資料表類型的資料行中繼資料。 在此情況下,必須先將SQL_SOPT_SS_NAME_SCOPE設定為SQL_SS_NAME_SCOPE_TABLE_TYPE,才能呼叫 SQLColumns。 當應用程式完成資料表值參數資料行中繼資料的擷取時,SQL_SOPT_SS_NAME_SCOPE 應該設回預設值 SQL_SS_NAME_SCOPE_TABLE。

SQL_CA_SS_TYPE_NAME、SQL_CA_SS_CATALOG_NAME 和 SQL_CA_SS_SCHEMA_NAME 也可以搭配 CLR 使用者定義型別參數使用。

您無法針對不是預存程序呼叫的已備妥陳述式來取得資料表值參數中繼資料。 如果您嘗試這樣做,應用程式會傳回 SQL_ERROR,其中包含 SQLSTATE 42000 和「語法錯誤或違規存取」訊息。

另請參閱

資料表值參數 (ODBC)