SSMS
 sql >> Base de Dados >  >> Database Tools >> SSMS

Como inserir um NEWID() / GUID / UUID no editor de código?


NEWID() em si é uma função. quando chamado retorna um valor GUID.

Você não precisa colocá-lo em uma janela separada e copiar e colar o valor de lá. Basta simplesmente colocar essa função lá onde você deseja o valor GUID e quando a consulta for executada em tempo de execução o valor retornado por essa função será usado.

Por exemplo, em uma instrução Insert
INSERT INTO TableName (Col1 , Col2, Col3)
VALUES (1 , 'Value 1', NEWID())  

Se você quiser que col3 tenha um valor GUID, você não precisa copiar e colar o valor retornado da função NEWID(), mas você usa a própria função. Em tempo de execução, um valor de guid será reajustado e inserido em col3.

Da mesma forma, se você estivesse atualizando
UPDATE TableName 
  SET Col3 = NEWID()
WHERE <Some Condition>

Novamente, você não precisa copiar e colar o valor retornado da função NEWID(), apenas use a própria função.

Outra opção seria supor que você está em algum lugar dentro do seu código onde você não pode chamar o NEWID() função. Você declararia uma variável do tipo UNIQUEIDENTIFIER chamaria a função armazenar seu valor para essa variável e então usaria essa variável dentro de seu código algo como ...
DECLARE @GUID_Value UNIQUEIDENTIFIER;
 SET @GUID_Value = NEWID();

-- Now use this variable anywhere in your code.  

Adicionando ao atalho de teclado


Por algum motivo estranho, se você deseja adicionar um atalho ao seu SSMS para gerar GUIDs para você. Você precisaria de duas coisas.
  1. Crie um procedimento armazenado que retorne o valor GUID .
  2. Adicione um atalho de tecla para chamar esse procedimento armazenado.

Definição do processo

CREATE PROCEDURE get_Guid
AS 
 SELECT NEWID();

Adicione-o aos atalhos


Do seu SSMS, vá para Ferramentas -> Opções -> Ambiente -> Teclado

adicione o nome do procedimento armazenado ao atalho desejado. Clique OK. Feche o SSMS e reabra-o novamente e pronto.



Como mostrado no instantâneo acima, agora se você pressionar CTRL + 0 ele irá gerar um valor GUID para você na mesma janela de consulta.