Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
SQLDescribeCol и SQLColAttribute используются для получения метаданных результирующих наборов. Разница между этими двумя функциями заключается в том, что SQLDescribeCol всегда возвращает одни и те же пять элементов информации (имя столбца, тип данных, точность, масштабирование и допустимость null), в то время как SQLColAttribute возвращает одну часть информации, запрошенную приложением. Однако SQLColAttribute может возвращать гораздо более широкий выбор метаданных, включая чувствительность к регистру столбца, размер отображения, обновляемость и возможность поиска.
Многие приложения, особенно те, которые отображают только данные, требуют только метаданные, возвращаемые SQLDescribeCol. Для этих приложений быстрее использовать SQLDescribeCol , чем SQLColAttribute , так как данные возвращаются в одном вызове. Другие приложения, особенно которые обновляют данные, требуют дополнительных метаданных, возвращаемых SQLColAttribute , и поэтому используют обе функции. Кроме того, SQLColAttribute поддерживает метаданные для конкретного драйвера. Дополнительные сведения см. в разделе "Типы данных для конкретного драйвера", "Типы данных", "Типы сведений", "Типы диагностики" и "Атрибуты".
Приложение может получать метаданные результирующих наборов в любое время после того, как инструкция была подготовлена или выполнена, и до закрытия курсора над результирующий набор. Очень мало приложений требуют метаданных результирующих наборов после подготовки инструкции и перед выполнением. По возможности приложения должны ожидать получения метаданных до тех пор, пока не будет выполнена инструкция, так как некоторые источники данных не могут возвращать метаданные для подготовленных инструкций и эмулировать эту возможность в драйвере часто является медленным процессом. Например, драйвер может создать результирующий набор нулевой строки, заменив предложение WHERE инструкции SELECT предложением WHERE 1 = 2 и выполнив полученную инструкцию.
Метаданные часто являются дорогостоящими для получения из источника данных. Из-за этого драйверы должны кэшировать все метаданные, полученные с сервера, и хранить его до тех пор, пока курсор над результирующий набор открыт. Кроме того, приложения должны запрашивать только необходимые метаданные.