Udostępnij za pośrednictwem


Napędzana zestawu kluczy kursory wymagań dla dostawców OLE DB

Transact-SQLkursory zestawu kluczy można się odwołać tabel zdalnych tylko wtedy, gdy spełnione są następujące warunki:

  • zapytanie rozproszone musi spełniać wymagania dla instrukcja SELECT w instrukcja DECLARE kursor, która deklaruje kursor, którego podstawę stanowi zestaw kluczy.Więcej informacji o Transact-SQL warunki dla kursor, którego podstawę stanowi zestaw kluczy obsługi, zobacz DECLARE CURSOR (Transact-SQL).

  • Wszystkie lokalne tabele w kwerendzie musi mieć indeks unikatowy.Indeks tabela zdalna powinna być poddana ekspozycji poprzez zestaw wierszy INDEKSY o IDBSchemaRowset interfejs.

Wymagania dotyczące indeksu na dostawców OLE DB

SQL Server indeksów można użyć tabel z baz danych OLE dostawca do oceny niektórych kwerend.Dla SQL Server używać indeksu, dostawca powinien ujawnić interfejsy OLE DB, które umożliwiają skanowanie zestawu zestaw wierszy indeksu wyszukiwania w indeksie zestawu zestaw wierszy, używając wartości indeksu kolumna, a położeniem zestaw wierszy w zestawie zestaw wierszy tabela bazowa za pomocą zakładki uzyskanych z indeksu zestaw wierszy.

Używanie indeksów dostawca OLE DB ma wydajność tylko wtedy, gdy indeksu i tabela zestawów wierszy są na tym samym komputerze co wystąpienie SQL Server.Dlatego Ścieżkę dostępu jako indeks opcja powinna być zestaw tylko wtedy, gdy źródło danych na tym samym komputerze co SQL Server.

SQL Servermożna używać indeksów dostawca OLE DB, tylko wtedy, gdy spełnione są następujące warunki:

  • Dostawca musi obsługiwać IDBSchemaRowset interfejs z tabel, kolumn i INDEKSY zestawów wierszy schematu.

  • Dostawca musi obsługiwać otwarcie zestawu zestaw wierszy w indeksie przez IOpenRowset , określając nazwę indeksu i odpowiadających im tabela bazowa nazwy.

  • Obiekt indeksu musi obsługiwać wszystkie obowiązkowe interfejsów: IRowset, IRowsetIndex, IAccessor, IColumnsInfo, IRowsetInfo, i IConvertTypes.

  • Zestawów zestaw wierszy otwartego wobec indeksowanej tabela bazowa przez IOpenRowset, musi obsługiwać IRowsetLocate interfejs dla pozycjonowanie wiersz w tabela bazowa poza zakładkę uzyskanych z indeksu zestawu zestaw wierszy.

Jeśli dostawca OLE DB spełnia te wymagania SQL Server administrator może zestaw Indeks jako ścieżka dostępu opcję Dostawca, aby włączyć SQL Server używać indeksów dostawcy do oceny kwerend.Domyślnie SQL Server Próbuj używać indeksów dostawca, chyba że ta opcja jest zestaw.

Wymagania aktualizowalnego kursora zestawu kluczy

tabela zdalna można zaktualizowane lub usunięte za pomocą kursor zestawu kluczy zdefiniowanych zapytanie rozproszone.Na przykład: UPDATE | DELETE remote_table WHERE CURRENT OF cursor_name.

Warunki, na jakich aktualizowalna kursory przeciwko kwerendami rozproszonymi są dozwolone są następujące:

  • Dostawca powinien spełniać warunki aktualizacji i usunięć na tabela zdalna.Aby uzyskać więcej informacji, zobacz AKTUALIZOWANIE i usuwanie wymagań dla dostawców OLE DB.

  • Transakcja jawna użytkownika lub transakcji złożonych z wielu instrukcja, poziom izolacji serializować lub poziomu izolacji powtarzalnych odczytu musi być operacje kursor.

Dostawca musi obsługiwać transakcji rozproszonych za pomocą ITransactionJoin interfejs.