É Pá e Bola com o SQL Server – ②

Sessão É Pá e Bola com o SQL Server, dicas rápidas, simples e práticas, sem se preocupar com formalidades….

Olá, muito boa tarde….

Este é mais um post da nova Sessão É Pá e Bola com SQL Server.

Aqui o papo vai ser simples e direto, sem formalidade, com dicas rápidas para se fazer algo relacionado com Microsoft SQL Server de forma geral.

Você pode estar se perguntando o porque deste nome, eu já te respondo. O porque é que todas as dicas a serem compartilhadas estaram envolvidas com esportes praticados com bola, mas certamente outras modalidades terão seu devido destaque.

See the source image

No É Pá e Bola com o SQL Server – ②, vamos aprender a Declarar Cursores no Microsoft SQL Server, um dos recursos mais temidos, mas se bem implementado poderá lhe ajudar em muito.

Podemos dizer que basicamente um CURSOR é um objeto declarado dentro na nossa query ou transação que tem o papel de realizar o procedimento de rolagem (para frente, primeira ou última linha de registro) na leitura dos dados armazenados em uma tabela:

— 1º Passo –  Declarando o Nome do Cursor —
DECLARE Cursor_TimePrincipal CURSOR FOR

— 2º Passo – Definir o Select que deverá ser envolvido com o Cursor —
SELECT Numero, Nome FROM Jogadores

— 3º Passo – Realizar a abertura do Cursor —
OPEN Cursor_TimePrincipal

— 4º Passo – Definir o loop de execução para rolagem do Cursor —
Declare @Numeracao TinyInt
Set @Numeracao=1

While @Numeracao <=11
BEGIN

— 5º Passo – Estabelecer a forma de rolagem (Next, Last, First, Prior) —
FETCH NEXT FROM Cursor_TimePrincipal

— 6º Passo – Direcionar o resultado da rolagem para uma variável —
INTO @Numero, @Nome

— 7º Passo – Utilizar uma operação DML para aproveitando dos dados obtidos pelo cursor —
INSERT INTO Escalacao VALUES(@Numero, @Nome)

SET @Numero=@Numero+1

PRINT ‘Camisa: ‘+CAST(@Numero AS VARCHAR(20))+’                      Nome do Jogador: ‘+@Nome
END

— 8º Passo – Fechar o Cursor —
CLOSE Cursor_TimePrincipal

— 9º Passo – Remover o Cursor da Memória —
DEALLOCATE Cursor_TimePrincipal

Em adicional, vale ressaltar que pode-se implementar o uso de cursores para pesquisar dados, objetos ou funcionalidades existentes em uma estrutura de banco de dados.

Você pode criar cursores que fazem desde a manipulação de dados, como por exemplo, um Update em diversas tabelas, como também, pesquisar por índices ou stored procedures com um determinado nome específico em diversos bancos de daso.

Em suma, existem várias práticas que podemos fazer uso deste recurso.


É isso aí galera, aqui é É Pá e Bola com o SQL Server, espero que você tenha gostado….

Valeu….

Autor: Junior Galvão - MVP

Profissional com vasta experiência na área de Tecnologia da Informação e soluções Microsoft. Pós-Graduado no Curso de Gestão e Engenharia de Processos para Desenvolvimento de Software com RUP na Faculdade FIAP – Faculdade de Informática e Administração Paulista de São Paulo. Graduado no Curso Superior em Gestão da Tecnologia de Sistemas de Informação pela Uninove – Campus São Roque. Formação MCDBA Microsoft, autor de artigos acadêmicos e profissionais postados em Revistas, Instituições de Ensino e WebSistes. Meu primeiro contato com tecnologia ocorreu em 1994 após meus pais comprarem nosso primeiro computador, ano em que as portas para este fantástico mundo se abriram. Neste mesmo ano, comecei o de Processamento de Dados, naquele momento a palavra TI não existia, na verdade a Tecnologia da Informação era conhecida como Computação ou Informática, foi assim que tudo começou e desde então não parei mais, continuando nesta longa estrada até hoje. Desde 2001 tenho atuado como Database Administrator – Administrador de Banco de Dados – SQL Server em tarefas de Administração, Gerenciamento, Migração de Servidores e Bancos de Dados, Estratégias de Backup/Restauração, Replicação, LogShipping, Implantação de ERPs que utilizam bancos SQL Server, Desenvolvimento de Funções, Stored Procedure, entre outros recursos. Desde 2008 exerço a função de Professor Universitário, para as disciplinas de Banco de Dados, Administração, Modelagem de Banco de Dados, Programação em Banco de Dados, Sistemas Operacionais, Análise e Projetos de Sistemas, entre outras. Experiência na Coordenação de Projetos de Alta Disponibilidade de Dados, utilizando Database Mirroring, Replicação Transacional e Merge, Log Shipping, etc. Trabalhei entre 2011 e 2017 como Administrador de Banco de Dados e Coordenador de TI no FIT – Instituto de Tecnologia da Flextronics, atualmente exerço a função de Professor Universitário na FATEC São Roque. CTO da Galvão Tecnologia, consultoria especializada em Gestão de TI, Administração de Servidores Windows Server, Bancos de Dados Microsoft SQL Server e Virtualização. Possuo titulação Oficial Microsoft MVP e reconhecimentos: MCC, MSTC, MIE e MTAC.