Condividi tramite


Campi di descrizione per le colonne che costituiscono parametri con valori di tabella

Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics Piattaforma di strumenti analitici (PDW)

I campi descrittore di parametri con valori di tabella descritti in questa sezione vengono modificati usando SQLSetDescField e SQLSetDescField con l'handle per il descrittore del parametro di implementazione (IPD).

Osservazioni:

SQL_DESC_AUTO_UNIQUE_VALUE viene utilizzato per parametri con valori di tabella e altre caratteristiche.

Attribute name Type Descrizione
SQL_DESC_AUTO_UNIQUE_VALUE SQLINTEGER SQL_TRUE indica che la colonna è una colonna Identity.

SQL Server può usare queste informazioni per ottimizzare le prestazioni, ma le applicazioni non sono necessarie per impostarla per le colonne Identity.

Gli attributi seguenti vengono aggiunti a tutti i tipi di parametro nel campo di descrizione del parametro dell'applicazione (APD, Application Parameter Descriptor) e nel campo di descrizione del parametro di implementazione (IPD, Implementation Parameter Descriptor):

Attribute name Type Descrizione
SQL_CA_SS_COLUMN_COMPUTED SQLSMALLINT SQL_TRUE indica che la colonna è calcolata.

SQL Server può usare queste informazioni per ottimizzare le prestazioni, ma le applicazioni non sono necessarie per impostarla per le colonne calcolate.

Questo attributo viene ignorato per le associazioni che non sono colonne di parametri con valori di tabella.
SQL_CA_SS_COLUMN_IN_UNIQUE_KEY SQLSMALLINT SQL_TRUE indica che una colonna di parametri con valori di tabella viene utilizzata in una chiave univoca. Questa impostazione può migliorare le prestazioni di esecuzione delle query. Questo attributo viene ignorato per le associazioni che non sono colonne di parametri con valori di tabella.
SQL_CA_SS_COLUMN_SORT_ORDER SQLSMALLINT Indica l'ordinamento di una colonna di parametri con valori di tabella. Questa impostazione può migliorare le prestazioni di esecuzione delle query. Questo attributo viene ignorato per le associazioni che non sono colonne di parametri con valori di tabella. I valori possibili sono i seguenti:
SQL_SS_ASCENDING_ORDER
SQL_SS_DESCENDING_ORDER
SQL_SS_ORDER_UNSPECIFIED

I valori diversi da SQL_SS_ASCENDING_ORDER e SQL_SS_DESCENDING_ORDER generano un errore con SQLSTATE HY024 e il messaggio 'Valore attributo non valido' e vengono considerati come SQL_SS_ORDER_UNSPECIFIED, ovvero il valore predefinito per questo attributo.
SQL_CA_SS_COLUMN_SORT_ORDINAL SQLSMALLINT Indica l'ordinale di una colonna di parametri con valori di tabella nel set di colonne che definiscono l'ordinamento complessivo per un parametro con valori di tabella. Questa impostazione può migliorare le prestazioni di esecuzione delle query. Questo attributo viene ignorato per le associazioni che non sono colonne di parametri con valori di tabella. Gli ordinali per l'ordinamento iniziano da 1. Il valore 0, che rappresenta il valore predefinito, indica che una colonna di parametri con valori di tabella non specifica l'ordinamento delle colonne.
SQL_CA_SS_COLUMN_HAS_DEFAULT_VALUE SQLSMALLINT Indica se assegnare a tutte le righe nel parametro con valori di tabella il valore predefinito per la colonna. Per i parametri con valori di tabella, non è possibile selezionare il valore predefinito riga per riga. Il valore SQL_FALSE indica che alle righe saranno assegnati valori non predefiniti. Si tratta dell'impostazione predefinita. Il valore SQL_TRUE indica che la colonna specificherà valori predefiniti per tutte le righe.

Se l'attributo è impostato su SQL_TRUE, non verranno inviati dati al server.

Questo campo può essere utilizzato anche con colonne Identity o calcolate se i valori di colonna non sono necessari per l'elaborazione server.

Questi attributi sono validi solo per le colonne di parametri con valori di tabella e vengono ignorati per gli altri parametri.

Se SQL_CA_SS_COL_HAS_DEFAULT_VALUE è impostato per una colonna di parametri con valori di tabella, SQL_DESC_DATA_PTR per la colonna deve essere un puntatore null. In caso contrario, SQLExecute o SQLExecDirect restituirà SQL_ERROR. Verrà generato un record di diagnostica con SQLSTATE=07S01 e il messaggio "Uso non valido del parametro predefinito per il parametro <p>, colonna <c>", dove <p> è l'ordinale del parametro e <c> è l'ordinale di colonna.

Vedi anche

Parametri con valori di tabella (ODBC)