índice
As quatro etapas para operar o cursor?
Como julgar o status de extração do cursor?
Basta fechar o cursor, por que liberá-lo? Qual a diferença entre eles?
O que é um cursor?
É um mecanismo de acesso a dados que permite aos usuários manipular linhas de dados individualmente em vez de operar em todo o conjunto de linhas. Os usuários podem processar separadamente cada linha de informações do telefone celular e operar os dados linha por linha, o que pode reduzir a sobrecarga do sistema e o bloqueio potencial. Os usuários também podem usar esses dados para gerar código SQL e executar ou produzir imediatamente
O cursor pode ser considerado um ponteiro, ele pode se mover para a linha especificada à vontade, permitindo ao usuário processar os dados de posição especificados
Quais partes o cursor inclui?
- Conjunto de resultados do cursor: a coleção de linhas retornadas pela instrução select que define o cursor
- Posição do cursor: um ponteiro para uma linha neste conjunto de resultados
Quais são as características dos cursores?
- Retorna um conjunto de resultados completo, mas permite que a linguagem de programação chame apenas uma linha no conjunto
- Permitir o posicionamento em uma linha específica do conjunto de resultados
- Recupere uma ou mais linhas da posição atual do conjunto de resultados
- Suporte para modificação de dados da linha na posição atual no conjunto de resultados
- Ele pode fornecer diferentes níveis de suporte de visibilidade para alterações de outros usuários nos dados do banco de dados exibidos no conjunto de resultados
- Fornece instruções T-SQL usadas em scripts, procedimentos armazenados e gatilhos para acessar dados no conjunto de resultados
Como criar um cursor?
O primeiro passo é declarar o cursor
--声明student_cursor游标,scroll指定可以获取任意数据行
declare student_cursor scroll cursor
for
A segunda etapa, declaração de consulta
--查询student表中的所有信息
select * from student
A terceira etapa, declara o tipo de cursor
--声明游标类型为只读型
for read only
O que podemos fazer se operarmos um cursor completo? Quais são as etapas necessárias?
As quatro etapas para operar o cursor?
Declarar
Aberto aberto
Recuperar busca (primeiro, último, próximo, anterior, número absoluto de linhas)
Fechar fechar
Requisitos: execute um processo completo do cursor
A tabela de dados é a seguinte:
Primeiro passo, declaração
declare stu_cursor scroll cursor --声明
for
select sname from student --查询语句
A segunda etapa, abra
open stu_cursor
A terceira etapa, pesquisa
declare @name varchar(10) --声明变量@name
fetch first from stu_cursor --检索游标里面的第一行数据
into @name
print @name --打印值
Qual é o efeito da execução?
E se você quiser ver outras profissões?
fetch first from stu_cursor --检索游标
fetch last from stu_cursor --检索最后一行
fetch next from stu_cursor --检索下一行
fetch absolute 3 from stu_cursor --检索第3个位置的值
A quarta etapa, feche
close stu_cursor
Etapa 5, solte
deallocate stu_cursor
Como julgar o status de extração do cursor?
0 instrução de busca foi bem-sucedida
-1 A instrução fetch falhou ou a linha não está no conjunto de resultados
-2 A linha extraída não existe
Basta fechar o cursor, por que liberá-lo? Qual a diferença entre eles?
Fechar cursor: feche a operação atual do cursor, abra-o quando quiser, você pode usá-lo diretamente
Solte o cursor: libere os recursos ocupados pelo cursor, se quiser usar o cursor, você deve restabelecê-lo
Resumo: o cursor é o ponteiro que geralmente aprendemos, ele pode se mover para a linha especificada à vontade