Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

DECLARAÇÃO DE MULTIPLOS VALORES

Boa tarde!

DECLARE @MATRICULA VARCHAR(5), @NOME VARCHAR(100), @PERCENTUAL FLOAT, @DATA DATE, @FERIAS BIT, @BAIRRO VARCHAR(100)

SET @MATRICULA = '00239'
SET @NOME = 'José Mattos'
SET @PERCENTUAL = 0.10
SET @DATA = '20100120'
SET @FERIAS = 1
SET @BAIRRO = 'Meier'

INSERT INTO [TABELA DE VENDEDORES] VALUES
(@MATRICULA, @NOME, @PERCENTUAL, @DATA, @FERIAS, @BAIRRO)

SELECT * FROM [TABELA DE VENDEDORES]

É possível setar um valor em um único comando?

Vlw!

3 respostas

Olá Anderson, tudo bem?

A sua dúvida acabou não ficando muito clara para mim, você poderia fornecer mais detalhes?

  • Quando você se refere: É possível setar um valor em um único comando, você está falando de utilizar um único SET para setar todas as variáveis?

Aguardo o seu retorno!

Ok, desculpe, a titulo de INSERT

INSERT INTO [TABELA DE VENDEDORES] VALUES
(@MATRICULA, @NOME, @PERCENTUAL, @DATA, @FERIAS, @BAIRRO)

É possível criar um SET: @MATRICULA = '00239', @NOME = 'José Mattos', @PERCENTUAL = 0.10..

Algo do tipo

solução!

Certo Anderson, você pode utilizar o comando dessa forma utilizando o SELECT, pois tanto o SET como o SELECT são utilizados para atribuir valores a variáveis, mas diretamente no comando INSERT não é possível, pois é retornado um erro de sintaxe

Algumas diferenças entre as duas funções são:

SET

  1. Atribui um valor a uma variável
  2. Para cada variável utiliza-se uma nova instrução SET
  3. Se a instrução SET não retornar nenhuma linha, o valor da variável ficará como NULL

SELECT

  1. Atribui um valor ou vários valores a uma variável
  2. Pode inicializar várias variáveis locais
  3. Se a instrução SELECT não retornar nenhuma linha, a variável não sofrerá alteração no seu valor atual
  4. Atribui valores a uma variável, a partir de uma consulta em uma tabela.

Então a sua query pode ficar desta forma:

DECLARE @MATRICULA VARCHAR(5), @NOME VARCHAR(100), @PERCENTUAL FLOAT, @DATA DATE, @FERIAS BIT, @BAIRRO VARCHAR(100)

SELECT @MATRICULA = '00239',  @NOME = 'José Mattos', @PERCENTUAL = 0.10, @DATA = '20100120', @FERIAS = 1, @BAIRRO = 'Meier'

INSERT INTO [TABELA DE VENDEDORES] VALUES
(@MATRICULA, @NOME, @PERCENTUAL, @DATA, @FERIAS, @BAIRRO)

Vou deixar aqui para você a documentação do SQL Server onde aborda sobre SET e SELECT e que pode ajudar a esclarecer um pouco mais sobre este assunto.

Espero ter ajudado, qualquer dúvida é só falar e bons estudos!