Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

soamazing

[Resolvido] Manipular dados

Recommended Posts

Bom dia Galera,

 

Sou meia novata em trabalhar com Procedure, e gostaria de fazer o seguinte:

 

Preciso criar um SELECT que obter se o dado existe ou não, se existir ele da um Update, caso ele não existe, ele deve dar um Insert.

Alguém poderia me ajudar a montar uma Proc desta forma?!

 

Vlw!

 

[]'soamazing

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,

 

Dentro da sua procedure você fará algo do tipo

 

declara sua variável do tipo int;

Declare @suaVariavelDeclarada int;

 

então atribua o valor a váriavel:

pode ser definir a sua váriavel como a chave primária da consulta que voce quer, (ou qualquer outra váriavel que seja relevante...)

Set @suaVariavelDeclarada....

 

 

IF (@suaVariavelDeclarada IS NULL)  -- aqui está a sacada que você precisa: a verificação de nulidade.
BEGIN
 -- sua condição de insert
END
ELSE
BEGIN
 -- sua condição de update
END

 

Com isso você deve conseguir resolver...

 

Abcs,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Felipe,

 

Será que eu posso dar um SET com o resultado de um Select?

 

Set @suaVariavelDeclarada = SELECT TOP 1 datafim FROM tabela ORDER BY id DESC

 

[]'soamazing

 

Olá,

 

Dentro da sua procedure você fará algo do tipo

 

declara sua variável do tipo int;

Declare @suaVariavelDeclarada int;

 

então atribua o valor a váriavel:

pode ser definir a sua váriavel como a chave primária da consulta que voce quer, (ou qualquer outra váriavel que seja relevante...)

Set @suaVariavelDeclarada....

 

 

IF (@suaVariavelDeclarada IS NULL)  -- aqui está a sacada que você precisa: a verificação de nulidade.
BEGIN
 -- sua condição de insert
END
ELSE
BEGIN
 -- sua condição de update
END

 

Com isso você deve conseguir resolver...

 

Abcs,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,

Pessoal já consegui fazer o que eu queria, na verdade é super simples, segue a resolução.

 

SET @nomevar = (SELECT TOP 1 campo FROM tabela WHERE codigo = @tal)

 

[]'soamazing

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,

Pessoal já consegui fazer o que eu queria, na verdade é super simples, segue a resolução.

 

SET @nomevar = (SELECT TOP 1 campo FROM tabela WHERE codigo = @tal)

 

[]'soamazing

 

 

Poderia fazer utilizando também o EXISTS :joia:

 

Que bom que resolveu.:clap:

Boa sorte

 

Abçs

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.