Campi del descrittore

I descrittori contengono campi di intestazione e record che descrivono completamente colonne o parametri.

Un descrittore contiene una singola copia dei campi di intestazione seguenti. La modifica di un campo di intestazione influisce su tutte le colonne o i parametri.

SQL_DESC_ALLOC_TYPE
SQL_DESC_ARRAY_SIZE
SQL_DESC_ARRAY_STATUS_PTR
SQL_DESC_BIND_OFFSET_PTR

SQL_DESC_BIND_TYPE
SQL_DESC_COUNT
SQL_DESC_ROWS_PROCESSED_PTR

Un descrittore contiene zero o più record descrittori. Ogni record descrive una colonna o un parametro, a seconda del tipo di descrittore. Quando viene associata una nuova colonna o un nuovo parametro, viene aggiunto un nuovo record al descrittore. Quando viene annullata l’associazione di una colonna o di un parametro, viene rimosso un record dal descrittore. Ogni record contiene una singola copia dei campi seguenti:

SQL_DESC_AUTO_UNIQUE_VALUE
SQL_DESC_BASE_COLUMN_NAME
SQL_DESC_BASE_TABLE_NAME
SQL_DESC_CASE_SENSITIVE
SQL_DESC_CATALOG_NAME
SQL_DESC_CONCISE_TYPE
SQL_DESC_DATA_PTR
SQL_DESC_DATETIME_INTERVAL_CODE
SQL_DESC_DATETIME_INTERVAL_PRECISION
SQL_DESC_DISPLAY_SIZE
SQL_DESC_FIXED_PREC_SCALE
SQL_DESC_INDICATOR_PTR
SQL_DESC_LABEL
SQL_DESC_LENGTH
SQL_DESC_LITERAL_PREFIX
SQL_DESC_LITERAL_SUFFIX

SQL_DESC_LOCAL_TYPE_NAME
SQL_DESC_NAME
SQL_DESC_NULLABLE
SQL_DESC_OCTET_LENGTH
SQL_DESC_OCTET_LENGTH_PTR
SQL_DESC_PARAMETER_TYPE
SQL_DESC_PRECISION
SQL_DESC_SCALE
SQL_DESC_SCHEMA_NAME
SQL_DESC_SEARCHABLE
SQL_DESC_TABLE_NAME
SQL_DESC_TYPE
SQL_DESC_TYPE_NAME
SQL_DESC_UNNAMED
SQL_DESC_UNSIGNED
SQL_DESC_UPDATABLE

Molti attributi di istruzione corrispondono al campo di intestazione di un descrittore. L'impostazione di questi attributi tramite una chiamata a SQLSetStmtAttr e l'impostazione del campo di intestazione del descrittore corrispondente chiamando SQLSetDescField hanno lo stesso effetto. Lo stesso vale per SQLGetStmtAttr e SQLGetDescField, che recuperano entrambi le stesse informazioni. La chiamata delle funzioni di istruzione anziché delle funzioni del descrittore presenta il vantaggio che non è necessario recuperare un handle descrittore.

I campi di intestazione seguenti possono essere impostati tramite gli attributi dell'istruzione:

SQL_DESC_ARRAY_SIZE
SQL_DESC_ARRAY_STATUS_PTR
SQL_DESC_BIND_OFFSET_PTR

SQL_DESC_BIND_TYPE
SQL_DESC_ROWS_PROCESSED_PTR

Questa sezione descrive gli argomenti seguenti: