NEWID()
zelf is een functie. wanneer aangeroepen, wordt een GUID-waarde geretourneerd.
U hoeft het niet in een apart venster te plaatsen en vervolgens de plakwaarde van daaruit te kopiëren. Plaats die functie gewoon daar waar u de GUID-waarde wilt hebben en wanneer de query tijdens runtime wordt uitgevoerd, wordt de waarde die door deze functie wordt geretourneerd, gebruikt.
Bijvoorbeeld in een Insert-statement
INSERT INTO TableName (Col1 , Col2, Col3)
VALUES (1 , 'Value 1', NEWID())
Als u wilt dat col3 een GUID-waarde heeft, hoeft u de waarde die wordt geretourneerd door de functie NEWID() niet te kopiëren, maar u gebruikt de functie zelf. Tijdens runtime wordt een richtwaarde opnieuw afgestemd en in col3 ingevoegd.
Evenzo als u aan het updaten was
UPDATE TableName
SET Col3 = NEWID()
WHERE <Some Condition>
Nogmaals, u hoeft de waarde die wordt geretourneerd door de functie NEWID() niet te kopiëren en te plakken, gebruik gewoon de functie zelf.
Een andere optie zou zijn dat u zich ergens in uw code bevindt waar u de NEWID()
niet kunt aanroepen functie. Je zou een variabele van het type UNIQUEIDENTIFIER declareren, de functie aanroepen, de waarde ervan opslaan in die variabele en die variabele vervolgens in je code gebruiken, zoiets als ...
DECLARE @GUID_Value UNIQUEIDENTIFIER;
SET @GUID_Value = NEWID();
-- Now use this variable anywhere in your code.
Toevoegen aan sneltoets
Om de een of andere vreemde reden als u een snelkoppeling aan uw SSMS wilt toevoegen om GUID's voor u te genereren. Je zou twee dingen moeten doen.
- Maak een opgeslagen procedure die de GUID-waarde retourneert.
- Voeg een sneltoets toe om die opgeslagen procedure op te roepen.
Proc-definitie
CREATE PROCEDURE get_Guid
AS
SELECT NEWID();
Voeg het toe aan snelkoppelingen
Ga vanuit uw SSMS naar Extra --> Opties --> Omgeving --> Toetsenbord
voeg de naam van de opgeslagen procedure toe aan de snelkoppeling die u wilt. Klik OK. Sluit SSMS en open het opnieuw en je bent klaar om te gaan.
Zoals getoond in de bovenstaande snipshot, als je nu op CTRL . drukt + 0 het zal een GUID-waarde voor u genereren in hetzelfde queryvenster.