Поделиться через


Отложенные поля

Значения отложенных полей не используются при их установке, но драйвер сохраняет адреса переменных для отложенного эффекта. Для дескриптора параметра приложения драйвер использует содержимое переменных во время вызова SQLExecDirect или SQLExecute. Для дескриптора строки приложения драйвер использует содержимое переменных во время получения.

Ниже перечислены отложенные поля:

  • Поля SQL_DESC_DATA_PTR и SQL_DESC_INDICATOR_PTR записи дескриптора.

  • Поле SQL_DESC_OCTET_LENGTH_PTR записи дескриптора приложения.

  • В случае многострочного получения SQL_DESC_ARRAY_STATUS_PTR и SQL_DESC_ROWS_PROCESSED_PTR поля заголовка дескриптора.

При выделении дескриптора отложенные поля каждой записи дескриптора изначально имеют значение NULL. Значение null выглядит следующим образом:

  • Если SQL_DESC_ARRAY_STATUS_PTR имеет значение NULL, то не удалось вернуть этот компонент диагностических сведений для каждой строки.

  • Если SQL_DESC_DATA_PTR имеет значение NULL, запись не связана.

  • Если поле SQL_DESC_OCTET_LENGTH_PTR ARD имеет значение NULL, драйвер не возвращает сведения о длине этого столбца.

  • Если поле SQL_DESC_OCTET_LENGTH_PTR APD имеет значение NULL, а параметр является символьной строкой, драйвер предполагает, что строка завершается значением NULL. Для выходных динамических параметров значение NULL в этом поле запрещает драйверу возвращать сведения о длине. (Если поле SQL_DESC_TYPE не указывает параметр строки символов, поле SQL_DESC_OCTET_LENGTH_PTR игнорируется.)

Приложение не должно освободить или отключать карта переменные, используемые для отложенных полей между временем, которое оно связывает с полями и временем, когда драйвер считывает или записывает их.