Wykorzystanie kursorów serwera

Dotyczy:sql ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

Jeśli aplikacja ODBC ustawi dowolny atrybut kursora ODBC na inne niż domyślne, sterownik ODBC dla natywnego klienta SQL Server prosi serwer o implementację kursora serwera API tego samego typu. Użycie kursorów serwera API zwalnia pamięć klienta i może znacząco zmniejszyć ruch sieciowy między klientem a serwerem.

Potencjalną wadą kursorów serwera API jest to, że obecnie nie obsługują wszystkich instrukcji SQL. Kursory serwera API nie mogą być używane do wykonania:

  • Partie lub procedury przechowywane, które zwracają wiele zestawów wyników.

  • SELECT instrukcje zawierające klauzule COMPUTE, COMPUTE BY, FOR BROWSE lub INTO.

  • Polecenie EXECUTE odnoszące się do zdalnej procedury przechowywanej.

Po połączeniu z instancją SQL Server, wykonanie instrukcji o tych cechach za pomocą kursora serwera powoduje konwersję kursora na domyślny zestaw wyników. Po połączeniu z wcześniejszymi wersjami SQL Server powoduje błąd.