Para mais informações sobre cursores, também dê uma olhada no SQL gratuito de consulta de formação, fornecido por Steve Stedman.
no servidor SQL o cursor é uma ferramenta que é usada para iterar sobre um conjunto de resultados, ou para circular através de cada linha de um conjunto de resultados uma linha de cada vez. Pode não ser a melhor maneira de trabalhar com um conjunto de dados, mas se você precisar de loop row por agonizante row (RBAR) em um script T-SQL então um cursor é uma maneira de fazê-lo.,
Nota: Se você é novo no servidor SQL e vem de um fundo Oracle, você deve saber que cursores no servidor SQL são diferentes daqueles no Oracle.
Antes de criar o cursor, vamos apenas começar com uma consulta simples que vai acabar sendo usado no cursor.
USE AdventureWorks2008;GOSELECT BusinessEntityID, Name FROM Sales.Store;Que se parece com isto:
Agora, para convertê-lo para um cursor, em vez de apenas uma instrução select.
Passo 1: declarar as variáveis para manter o resultado do cursor.,
DECLARE @BusinessEntityID as INT;DECLARE @BusinessName as NVARCHAR(50);Step 2: declarar o objecto do cursor;
DECLARE @BusinessCursor as CURSOR;Step 3: atribuir a consulta ao cursor.
SET @BusinessCursor = CURSOR FORSELECT BusinessEntityID, Name FROM Sales.Store;Passo 4: Abra o cursor.
OPEN @BusinessCursor;Passo 5: Obter a primeira linha.
FETCH NEXT FROM @BusinessCursor INTO @BusinessEntityID, @BusinessName;Passo 6: ciclo até que não haja mais resultados. No loop imprimir o ID e o nome do conjunto de resultados e obter a linha da rede.
Passo 7: feche o cursor.,
CLOSE @BusinessCursor;Passo 8: Desallocate o cursor para libertar qualquer memória ou abrir conjuntos de resultados.
DEALLOCATE @BusinessCursor;Agora colocar tudo junto:
Este deve dar a você uma rápida visão geral de como criar rapidamente e usar um cursor no SQL Server. O exemplo mostrado foi executado no SQL Server 2008 , e funciona o mesmo no SQL Server 2005, no SQL Server 2008R2, no SQL Server 2012 ou no SQL Server 2014.,
aqui está um vídeo mostrando uma visão similar do uso de cursores em TSQL.
divirta-se!,
-Steve Stedman
Links
- Vídeo: Introdução Simples ao TSQL Cursores
- Livre Consulta SQL de Formação para o 70-461 curso
- Cursor Simples Exemplo : FORWARD_ONLY vs FAST FORWARD
- Vídeo de Treinamento sobre a Utilização de Cursores Com o SQL Server
- Mais detalhes sobre Cursores
- Usando um CURSOR para a lista de bases de dados
- Cursores – Técnico de dívida
- Lista de Banco de dados de Exemplo com um CURSOR
você já tentou de Banco de dados do Health Monitor?estamos prontos para ajudar., Steve e a equipe da Stedman Solutions estão aqui para ajudar com suas necessidades de servidor SQL.Obtenha ajuda hoje contactando a Stedman Solutions através do formulário de consulta gratuita de 30 minutos.