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

Проблемы

Предположим, что вы используете драйвер ODBC для sqlncli11. dll для доступа к Microsoft SQL Server 2012 или SQL Server 2014 в приложении. При использовании серверного курсора и функции SQLFetch/ SQLGetData для доступа к данным больших двоичных объектов (BLOB) в SQL Server возникает проблема с производительностью, особенно для больших типов данных, таких как varbinary (max) или varchar (max).

Причина

Это проблема разработки для реализации функции SQLFetch/ SQLGetData в драйвере SQL Server 2012 ODBC. Если в запросе используются любые серверные курсоры, драйвер ODBC вызывает sp_cursorfetch во время реализации SQLFetch , а сервер отправляет клиенту весь блоб. Затем, когда SQLGetData выполняется, sp_cursor снова выводит все BLOB-объектов. Это значительно влияет на производительность для больших типов данных, таких как varbinary (max) или varchar (max).

Решение

Совокупные сведения об обновлениях

Новая реализация вызывает sp_cursoroption для получения TEXTPTR_ONLY перед sp_cursorfetch, а затем вызывает sp_cursoroption , чтобы вернуть его в TextData перед sp_cursor. Это может повысить производительность. Эта проблема впервые устранена в следующем накопительном обновлении SQL Server.

Все новые накопительные обновления для SQL Server содержат все исправления и все исправления для системы безопасности, которые были включены в предыдущий накопительный пакет обновления. Мы рекомендуем вам загрузить и установить последние накопительные обновления для SQL Server.

Статус

Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×