Trabalhando com Cursor no SQL Server
Cursores são mecanismos que permitem que as linhas de uma tabela sejam manipuladas uma a uma. Atuam como ponteiros que apontam para as linhas que formas o resultado de uma dada consulta que é armazenada no cursos. Podemos recuperar e manipular os valores de cada linha apontada por um cursos.
Veja abaixo a sintaxe para criação de um cursor no SQL Server
--drop table tabela_clientes --go --create table tabela_clientes( --nome_cliente varchar(200), --cpf_cliente varchar(200) --) --go --insert into tabela_clientes values --('Fabio', NULL), --('Jorge', 21325658454) --go --select * from tabela_clientes --go DECLARE @nome_cliente VARCHAR(50), @cpf_cliente VARCHAR(50) --Declarando o cursor DECLARE nome_do_cursor CURSOR FOR --dados que o cursos ira trabalhar SELECT nome_cliente, cpf_cliente FROM tabela_clientes --abre o cursor OPEN nome_do_cursor --posicionar o ponteiro do cursor na primeira linha do resultado do select acima FETCH NEXT FROM nome_do_cursor --insere nas variaveis os valores da primeira linha do resultado armazenado no cursor INTO @nome_cliente, @cpf_cliente --Esse parte diz "Enquanto tiver linha no cursor, faça:" WHILE @@FETCH_STATUS = 0 --Nessa parte você insere o bloco de instruções que ira trabalhar no seu cursor. --Se CPF for igual a nulo BEGIN IF ((SELECT cpf_cliente FROM tabela_clientes WHERE cpf_cliente = @cpf_cliente) is NULL) --Inserir no final do nome da pessoa o texto "Atualizar CPF" BEGIN UPDATE tabela_clientes SET nome_cliente = @nome_cliente + ' Atualizar CPF' END FETCH NEXT FROM nome_do_cursor INTO @nome_cliente, @cpf_cliente END --Para fechar o cursos você precisar inserir os seguinte comandos CLOSE nome_do_cursor DEALLOCATE nome_do_cursor select * from tabela_clientes go
Veja um vídeo sobre como Criar um Cursor
Você pode usar Cursor para inúmeras situações.
Se desejar ver mais sobre cursores acesse:
- http://technet.microsoft.com/pt-br/library/ms180169.aspx
- http://www.youtube.com/results?search_query=cursor%20sql%20server&sm=3
Olá! Sou Fabio, criador do blog FabioBmed, um espaço onde compartilho minha paixão por marketing digital, tecnologia, empreendedorismo e, claro, os aprendizados do meu dia a dia. Aqui você encontrará um mix de conteúdos profissionais e pessoais, sempre com insights práticos, dicas úteis e histórias reais.
Com mais de 15 anos de experiência no mercado digital e fundador da FBDigital, minha missão é inspirar e ajudar pessoas e empresas a construírem uma base sólida no universo online. Seja por meio de estratégias de marketing, ferramentas tecnológicas ou reflexões sobre o cotidiano, meu objetivo é transformar desafios em oportunidades.
Além dos conteúdos voltados para negócios e tecnologia, também compartilho momentos do meu dia a dia, ideias que aprendo pelo caminho e até curiosidades que podem fazer a diferença na sua vida. Aqui, cada post reflete minha busca por conhecimento e minha vontade de conectar pessoas e histórias.
Conecte-se comigo e acompanhe tudo sobre marketing, tendências digitais, aprendizados pessoais e muito mais. Juntos, vamos explorar o melhor do mundo digital e da vida cotidiana!
- Site: www.fabiobmed.com.br
- WhatsApp: WhatsApp
- E-mail:
Publicação Criada em: janeiro 21, 2014
Sem atualizações registradas.