Udostępnij za pośrednictwem


SQL Dialect Requirements for OLE DB Providers

Poziom SQL obsługuje dostawca OLE DB decyduje o tym jak skutecznie SQL Server Obiekty delegowane rozpowszechniane operacji kwerendy do dostawca OLE DB. Jeżeli dostawca nie obsługi programu SQL, ale zostanie otwarty tylko wierszy, SQL Server należy pobrać cały zestaw wierszy i wykonywać wszystkie operacje logiczne, nawet jeśli kwerenda rozproszona musi tylko podzbiór wierszy w zestawie wierszy źródłowych. Jeśli dostawca OLE DB obsługuje wiele elementów składni SQL SQL Server generuje bardziej zaawansowanych kwerend umożliwiających zbędne wiersze Filtr dostawca urządzenie źródłowe przed powrotem do zestawu zestaw wierszy SQL Server.

Specyfikacja OLE DB definiuje właściwość DBPROP_SQLSUPPORT za pomocą którego dostawcy mogą zgłaszać poziom obsługują składnię SQL.Obsługuje minimalnych poziomów SQL, które wersje SQL Server wymagają kwerendy rozproszone są:

  • SQL Server 2005: DBPROPVAL_SQL_SUBMINIMUM

  • SQL Server 2000: DBPROPVAL_SQL_SUBMINIMUM

  • SQL Server 7.0: DBPROPVAL_SQL_ANSI92_ENTRY lub DBPROPVAL_SQL_ODBC_CORE

Oprócz obsługi na niższy poziom składni języka SQL z podstawowego dostawcy OLE DB, SQL Server 2000 i później definiuje zestaw właściwość SQLPROPSET_OPTHINTS, można określić, czy obsługują one pojedyncze elementy składni SQL, które wykraczają poza określone dla DBPROPVAL_SQL_SUBMINIMUM dostawców. Jeśli dostawca obsługuje jednej lub dwóch funkcji, które mogą być używane do optymalizowania kwerendami rozproszonymi, ale nie obsługuje pełnej składni DBPROPVAL_SQL_ANSI92_ENTRY lub DBPROPVAL_SQL_ODBC_CORE, Dostawca można używać właściwości SQLPROPSET_OPTHINTS powiadomienia SQL Server funkcji optymalizacji są obsługiwane.