cursores são uma estrutura fornecidos em versões programáveis de Structured Query Language (SQL) , como Sybase ou Transact- SQL do Microsoft SQL Server. Definir um cursor para uma instrução SQL SELECT ou atualização em uma ou mais tabelas . O cursor tem um nome que você pode usar para referir-se, abrir e fechar o cursor ou buscar linhas do conjunto cursor. Os cursores são usados quando cada linha do conjunto de necessidades de processamento ou de seus valores são usados em variáveis do programa . Quando um novo cursor é declarado no loop que processa cada linha de um cursor , o novo cursor interno é aninhado dentro do velho cursor externo . Instruções
1
Declarar um cursor para um select simples usando a seguinte sintaxe T-SQL :
DECLARE CURSOR
FOR SELECT campo1 , campo2 , campo3
dE
ONDE field4 < = @ limitval
2
Abra o cursor para o processamento usando este T-SQL sintaxe:
Abra
3 buscar linhas do cursor aberto para processamento, uma vez que é uma leitura ( select) cursor. Declare variáveis necessárias para armazenar valores de campos na linha atual do cursor. A sintaxe T-SQL para buscar linhas do cursor é a seguinte:
FETCH NEXT DE INTO @ var_fld1 , @ var_fld2 , @ var_fld3
enquanto @ @ fetch_status == 0
começar
---
FETCH NEXT DE INTO @ var_fld1 , @ var_fld2 , @ var_fld3
final
4
Adicione a declaração e execução do segundo ou interior cursor no loop de busca do cursor anterior ou exterior da seguinte forma:
- cursor exterior loop de busca
enquanto @ @ == fetch_status 0
começar
- Tempo para declarar o cursor interno - nidificação começa
DECLARE cURSOR inner_cursor
FOR SELECT X , Y , Z, ....
FROM tabela1 , tabela2 , ...
ONDE
ABERTO inner_cursor
FETCH NEXT DE inner_cursor INTO @ varX , @ variar , @ VARZ ...
enquanto @ @ fetch_status == 0
começar - cursor interior loop de busca
-
- get próxima linha
FETCH NEXT DE inner_cursor INTO @ varX , @ variar , @ VARZ ...
final - cursor interior loop de busca
final
- cursor exterior buscar laço
< br >