Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Dit onderwerp bespreekt SQLSetDescRec-functionaliteit die specifiek is voor de SQL Server Native Client.
SQLSetDescRec en Table-Valued parameters
SQLSetDescRec kan worden gebruikt om descriptorvelden in te stellen voor tabelwaardige parameters en tabelwaardige parameterkolommen. Parameterkolommen met tabelwaarde zijn alleen beschikbaar wanneer het descriptorheaderveld SQL_SOPT_SS_PARAM_FOCUS is ingesteld op het ordinaal van een record dat SQL_DESC_TYPE op SQL_SS_TABLE heeft gezet. Voor meer informatie over SQL_SOPT_SS_PARAM_FOCUS, zie SQLSetStmtAttr.
De volgende tabel beschrijft de mapping tussen parameters en descriptorvelden.
| Parameter | Gerelateerde attribuut voor niet-tabelwaardige parametertypen, inclusief tabelwaardige parameterkolommen | Gerelateerd attribuut voor tabelwaardige parameters |
|---|---|---|
| Typ | SQL_DESC_TYPE | SQL_SS_TABLE |
| Subtype | Ignored | Voor records van type SQL_DATETIME of SQL_INTERVAL, zet dit op SQL_DESC_DATETIME_INTERVAL_CODE. |
| Lengte | SQL_DESC_OCTET_LENGTH | De lengte van de tabelwaardige parametertypenaam. Dit kan SQL_NTS worden als de typenaam null beƫindigd is, of nul als de tabelwaardige parametertypenaam niet vereist is. |
| Precision | SQL_DESC_PRECISION | SQL_DESC_ARRAY_SIZE |
| Schaal | SQL_DESC_SCALE | Unused. Deze parameter moet nul zijn. |
| DataPtr | SQL_DESC_DATA_PTR in APD | SQL_CA_SS_TYPE_NAME Deze parameter is optioneel voor stored procedure-aanroepen, en NULL kan worden gespecificeerd als het niet vereist is. Deze parameter moet worden gespecificeerd voor SQL-statements die geen procedurecalls zijn. DataPtr dient ook als een unieke waarde die de applicatie kan gebruiken om deze tabel-waarde parameter te identificeren wanneer variabele rijbinding wordt gebruikt. |
| StringLengthPtr | SQL_DESC_OCTET_LENGTH_PTR | SQL_DESC_OCTET_LENGTH_PTR Voor een tabelwaardige parameter is dit het aantal rijen dat overgezet moet worden of SQL_DATA_AT_EXEC. Dit is een verwijzing naar een waarde die het aantal rijen bevat dat met SQLExecDirect moet worden overgedragen. |
| IndicatorPtr | SQL_DESC_INDICATOR_PTR | SQL_DESC_INDICATOR_PTR |
Voor meer informatie over tabelwaardige parameters, zie Table-Valued Parameters (ODBC).
SQLSetDescRec-ondersteuning voor verbeterde datum- en tijdfuncties
De toegestane waarden voor datum-/tijdtypes zijn als volgt:
| Attribute | Typ | Subtype | Lengte | Precision | Schaal |
|---|---|---|---|---|---|
| datetime | SQL_DATETIME | SQL_CODE_TIMESTAMP | 4 | 3 | 3 |
| smalldatetime | SQL_SQL_DATETIME | SQL_CODE_TIMESTAMP | 8 | 0 | 0 |
| date | SQL_DATETIME | SQL_CODE_DATE | 6 | 0 | 0 |
| time | SQL_SS_TIME2 | 0 | 10 | 0..7 | 0..7 |
| datetime2 | SQL_DATETIME | SQL_CODE_TIMESTAMP | 16 | 0..7 | 0..7 |
| datetimeoffset | SQL_SS_TIMESTAMPOFFSET | 0 | 20 | 0..7 | 0..7 |
Zie ODBC-(Datum- en tijdverbeteringen) voor meer informatie.
SQLSetDescRec-ondersteuning voor grote CLR UDT's
SQLSetDescRec ondersteunt grote CLR-gebruikersgedefinieerde types (UDT's). Zie ODBC-(Large CLR User-Defined Types) voor meer informatie.