sql >> Databasteknik >  >> Database Tools >> SSMS

Hur infogar man en NEWID() / GUID / UUID i kodredigeraren?

NEWID() i sig är en funktion. när anropas returnerar ett GUID-värde.

Du behöver inte lägga det i ett separat fönster och sedan kopiera klistra in värde därifrån. Sätt helt enkelt den funktionen där du vill ha GUID-värdet och när frågan exekveras vid körning kommer värdet som returneras av den här funktionen att användas.

Till exempel i en Insert-sats

INSERT INTO TableName (Col1 , Col2, Col3)
VALUES (1 , 'Value 1', NEWID())  

Om du vill att col3 ska ha ett GUID-värde behöver du inte kopiera och klistra in värdet som returneras från NEWID()-funktionen utan du använder själva funktionen. Vid körning kommer ett guidningsvärde att återställas och infogas i col3.

På samma sätt om du skulle uppdatera

UPDATE TableName 
  SET Col3 = NEWID()
WHERE <Some Condition>

Återigen behöver du inte kopiera och klistra in värdet som returneras från NEWID()-funktionen, bara använd själva funktionen.

Ett annat alternativ skulle vara om du är någonstans i din kod där du inte kan anropa NEWID() funktion. Du skulle deklarera en variabel av typen UNIQUEIDENTIFIER anropa funktionen lagra dess värde till den variabeln och sedan använda den variabeln inuti din kod något som ...

DECLARE @GUID_Value UNIQUEIDENTIFIER;
 SET @GUID_Value = NEWID();

-- Now use this variable anywhere in your code.  

Lägger till i tangentbordsgenväg

Av någon konstig anledning om du vill lägga till en genväg till ditt SSMS för att generera GUID för dig. Du skulle behöva två saker.

  1. Skapa en lagrad procedur som returnerar GUID-värdet .
  2. Lägg till en kortkommando för att anropa den lagrade proceduren.

Proc Definition

CREATE PROCEDURE get_Guid
AS 
 SELECT NEWID();

Lägg till det i genvägar

Från ditt SSMS går du till Verktyg --> Alternativ --> Miljö --> Tangentbord

lägg till den lagrade procedurens namn till genvägen du vill använda. Klicka på OK. Stäng SSMS och öppna det igen och du är klar.

Som visas i klippbilden ovan, om du nu trycker på CTRL + 0 det kommer att generera ett GUID-värde för dig i samma frågefönster.



  1. PHPMYADMIN ,,Fel vid bearbetning av begäran Felkod:200 Feltext:OK

  2. Hur man ansluter till lokal instans av SQL Server 2008 Express

  3. phpMyAdmin - #1932 Tabell existerar inte (sortering används) efter ominstallation

  4. Stoppa SQL Server från att köras tills det behövs