Поля дескриптора для столбцов, содержащих параметры, возвращающие табличные значения
Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)
Поля дескриптора дескриптора табличного параметра, описанные в этом разделе, обрабатываются с помощью SQLSetDescField и SQLSetDescField с дескриптором параметра реализации (IPD).
Замечания
SQL_DESC_AUTO_UNIQUE_VALUE используется для параметров, возвращающих табличные значения, и других компонентов.
Attribute name | Type | Описание |
---|---|---|
SQL_DESC_AUTO_UNIQUE_VALUE | SQLINTEGER | SQL_TRUE указывает, что этот столбец является столбцом идентификаторов. SQL Server может использовать эти сведения для оптимизации производительности, но приложениям не требуется задать его для столбцов удостоверений. |
Следующие атрибуты добавляются к параметрам всех типов в дескрипторе параметра приложения (APD) и дескрипторе параметра реализации (IPD).
Attribute name | Type | Описание |
---|---|---|
SQL_CA_SS_COLUMN_COMPUTED | SQLSMALLINT | SQL_TRUE указывает, что этот столбец является вычисляемым. SQL Server может использовать эти сведения для оптимизации производительности, но приложениям не требуется устанавливать их для вычисляемых столбцов. Этот атрибут пропускается в случае привязок, не являющихся столбцами параметров, возвращающих табличные значения. |
SQL_CA_SS_COLUMN_IN_UNIQUE_KEY | SQLSMALLINT | SQL_TRUE указывает, что столбец возвращающих табличное значение параметров является частью уникального ключа. Это может повысить производительность запросов. Этот атрибут пропускается в случае привязок, не являющихся столбцами параметров, возвращающих табличные значения. |
SQL_CA_SS_COLUMN_SORT_ORDER | SQLSMALLINT | Указывает порядок сортировки столбца возвращающих табличное значение параметров. Это может повысить производительность запросов. Этот атрибут пропускается в случае привязок, не являющихся столбцами параметров, возвращающих табличные значения. Возможные значения: SQL_SS_ASCENDING_ORDER SQL_SS_DESCENDING_ORDER SQL_SS_ORDER_UNSPECIFIED Значения, отличные от SQL_SS_ASCENDING_ORDER и SQL_SS_DESCENDING_ORDER создают ошибку с SQLSTATE HY024 и сообщением "Недопустимое значение атрибута" и обрабатываются как SQL_SS_ORDER_UNSPECIFIED, что является значением по умолчанию для этого атрибута. |
SQL_CA_SS_COLUMN_SORT_ORDINAL | SQLSMALLINT | Указывает порядковый номер столбца параметра, возвращающего табличное значение, в наборе столбцов, которые определяют сквозной порядковый номер для параметра, возвращающего табличное значение. Это может повысить производительность запросов. Этот атрибут пропускается в случае привязок, не являющихся столбцами параметров, возвращающих табличные значения. Порядковые номера сортировки начинаются с 1. Значение 0 (устанавливаемое по умолчанию) указывает, что столбец параметра, возвращающего табличное значение, не упорядочен. |
SQL_CA_SS_COLUMN_HAS_DEFAULT_VALUE | SQLSMALLINT | Указывает, будут ли все строки параметра, возвращающего табличное значение, иметь значение по умолчанию для этого столбца. Для параметров, возвращающих табличное значение, значение по умолчанию не может выбираться построчно. Значение SQL_FALSE указывает на то, что строки будут иметь значения отличные от значений по умолчанию. Это значение по умолчанию. Значение SQL_TRUE указывает, что этот столбец будет иметь значения по умолчанию для всех строк. Если установлено значение SQL_TRUE, то данные не будут отправляться на сервер. Это поле также используется со столбцами идентификаторов или вычисляемых столбцов, если их обработка на сервере не требуется. |
Эти атрибуты доступны только для столбцов возвращающих табличные значения параметров. Для других параметров они не учитываются.
Если для столбца, возвращающего табличное значение параметра, установлен атрибут SQL_CA_SS_COL_HAS_DEFAULT_VALUE, то SQL_DESC_DATA_PTR для этого столбца должен быть равен null. В противном случае SQLExecute или SQLExecDirect возвращает SQL_ERROR. Диагностическая запись будет создана с помощью SQLSTATE=07S01 и сообщения "Недопустимое использование параметра по умолчанию для параметра <p>, column <c>", где <p> — порядковый номер параметра, а <c> — порядковый номер столбца.