spGetUniqueName

Parameters

Parameter Parameter Type Mode Description
@Name nvarchar(50) IN
@UniqueName nvarchar(50) INOUT

Definition

Copy


    CREATE PROCEDURE dbo.spGetUniqueName
@Name nvarchar(50),
@UniqueName nvarchar(50) OUTPUT
as

    Declare @UniqueID uniqueidentifier
    Declare @UniqueNameLength int
    Declare @TotalLength int 
    Declare @StuffStart int

    SET @UniqueID = NEWID()
    Set @UniqueNameLength = len(@UniqueID)
    Set @TotalLength = len(@Name) + @UniqueNameLength

    if @TotalLength > 50 
        BEGIN
            Set @StuffStart = Len(@Name) - (@TotalLength - 50)
            Set @UniqueName = STUFF(@Name, @StuffStart, @UniqueNameLength, @UniqueID)
        END
    else
        BEGIN
            Set @UniqueName = @Name + CAST(@UniqueID as nvarchar(50))
        END