CLOSE (Transact-SQL)CLOSE (Transact-SQL)

APLICA-SE A: simSQL Server (a partir do 2008) simBanco de Dados SQL do Azure nãoSQL Data Warehouse do Azure nãoParallel Data Warehouse APPLIES TO: yesSQL Server (starting with 2008) yesAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

Fecha um cursor aberto liberando o conjunto de resultados atual e qualquer bloqueio de cursor mantido nas linhas onde o cursor é posicionado.Closes an open cursor by releasing the current result set and freeing any cursor locks held on the rows on which the cursor is positioned. CLOSE deixa as estruturas de dados disponíveis para reabertura, mas as atualizações buscadas e posicionadas não são permitidas até que o cursor seja reaberto.CLOSE leaves the data structures available for reopening, but fetches and positioned updates are not allowed until the cursor is reopened. CLOSE deve ser emitido em um cursor aberto; CLOSE não é permitido em cursores que somente foram declarados ou que já estão fechados.CLOSE must be issued on an open cursor; CLOSE is not allowed on cursors that have only been declared or are already closed.

Ícone de link do tópico Convenções de sintaxe de Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SintaxeSyntax

CLOSE { { [ GLOBAL ] cursor_name } | cursor_variable_name }  

ArgumentosArguments

GLOBALGLOBAL
Especifica que cursor_name se refere a um cursor global.Specifies that cursor_name refers to a global cursor.

cursor_namecursor_name
É o nome de um cursor aberto.Is the name of an open cursor. Se um cursor global e um cursor local existirem com cursor_name como seu nome, cursor_name se referirá ao cursor global quando GLOBAL for especificado; caso contrário, cursor_name se referirá ao cursor local.If both a global and a local cursor exist with cursor_name as their name, cursor_name refers to the global cursor when GLOBAL is specified; otherwise, cursor_name refers to the local cursor.

cursor_variable_namecursor_variable_name
É o nome de uma variável de cursor associada a um cursor aberto.Is the name of a cursor variable associated with an open cursor.

ExemplosExamples

O exemplo a seguir mostra a colocação correta da instrução CLOSE em um processo com base em cursor.The following example shows the correct placement of the CLOSE statement in a cursor-based process.

DECLARE Employee_Cursor CURSOR FOR  
SELECT EmployeeID, Title FROM AdventureWorks2012.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  

Consulte TambémSee Also

Cursores Cursors
Cursores (Transact-SQL) Cursors (Transact-SQL)
DEALLOCATE (Transact-SQL) DEALLOCATE (Transact-SQL)
FETCH (Transact-SQL) FETCH (Transact-SQL)
OPEN (Transact-SQL)OPEN (Transact-SQL)