Использование курсоров с распределенными запросами

При использовании курсоров с распределенными запросами поддерживаются как нечувствительные, статичные курсоры, так и курсоры, управляемые набором ключей (если поставщик поддерживает необходимые функциональные возможности OLE DB). Динамические курсоры, запрашиваемые вместе с распределенными запросами, неявно преобразуются в курсоры, управляемые набором ключей.

Курсоры, управляемые набором ключей, поддерживаются в распределенных запросах, если все локальные и удаленные таблицы в запросе имеют уникальные ключи. Условия, при которых курсоры, управляемые набором ключей, поддерживаются в распределенном запросе, см. в разделе Требования к курсорам, управляемым набором ключей, для поставщиков OLE DB.

Если курсоры, управляемые набором ключей, разрешены в распределенном запросе, то с их помощью можно также обновлять все удаленные базовые таблицы при условии, что удовлетворяются все требования поставщика к возможности обновления. Требования к обновлению удаленных таблиц см. в разделе Требования UPDATE и DELETE для поставщиков OLE DB.

ПримечаниеПримечание

При удалении или обновлении удаленного объекта для оптимистичного параллелизма необходимы столбцы типа данных timestamp. Если задан оптимистичный параллелизм, но в удаленной таблице отсутствует столбец timestamp, то возникает ошибка. В SQL Server 2000, если столбец timestamp не существовал, оптимистичный параллелизм для удаленных таблиц не поддерживался, но ошибка при этом не возникала.

ПримечаниеПримечание

Для распределенных запросов не требуется указывать пользовательскую транзакцию при уровне изоляции REPEATABLE READ или выше. В SQL Server 2000 при уровне изоляции REPEATABLE READ или выше пользовательская транзакция была необходима.

См. также

Справочник

Основные понятия