Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Baza 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