Udostępnij za pomocą


ZAMKNIJ (Transact-SQL)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBaza danych SQL w usłudze Microsoft Fabric

Zamyka otwarty kursor, zwalniając bieżący zestaw wyników i zwalniając wszystkie blokady kursora przechowywane w wierszach, na których znajduje się kursor. CLOSE pozostawia struktury danych dostępne do ponownego otwarcia, ale pobieranie i pozycjonowanie aktualizacji nie są dozwolone do momentu ponownego otwarcia kursora. Polecenie CLOSE musi być wystawione na otwartym kursorze; CLOSE nie jest dozwolone na kursorach, które zostały zadeklarowane lub są już zamknięte.

Transact-SQL konwencje składni

Syntax

CLOSE { { [ GLOBAL ] cursor_name } | cursor_variable_name }  

Arguments

GLOBAL
Określa, że cursor_name odnosi się do kursora globalnego.

cursor_name
To nazwa otwartego kursora. Jeśli zarówno globalny, jak i lokalny kursor istnieje z cursor_name jako ich nazwa, cursor_name odnosi się do kursora globalnego, gdy jest określony globalny; w przeciwnym razie cursor_name odnosi się do kursora lokalnego.

cursor_variable_name
To nazwa zmiennej kursora skojarzonej z otwartym kursorem.

Examples

W poniższym przykładzie pokazano prawidłowe rozmieszczenie instrukcji CLOSE w procesie opartym na kursorach.

DECLARE Employee_Cursor CURSOR FOR  
SELECT EmployeeID, Title FROM AdventureWorks2022.HumanResources.Employee;  
OPEN Employee_Cursor;  
FETCH NEXT FROM Employee_Cursor;  
WHILE @@FETCH_STATUS = 0  
   BEGIN  
      FETCH NEXT FROM Employee_Cursor;  
   END;  
CLOSE Employee_Cursor;  
DEALLOCATE Employee_Cursor;  
GO  

Zobacz też