DECLARE @ResourceLocalizedValues TABLE (
    [LanguageId]     INT            NOT NULL,
    [EntityType]     INT            NOT NULL,
    [ResourceKey]    NVARCHAR (200) NOT NULL,
    [LocalizedValue] NVARCHAR (MAX) NOT NULL,
    [Description]    NVARCHAR (200) NULL
)

INSERT @ResourceLocalizedValues([LanguageId], [EntityType], [ResourceKey], [LocalizedValue]) VALUES (1, 7, 'Cellular_Module',N'Cellular Module')
INSERT @ResourceLocalizedValues([LanguageId], [EntityType], [ResourceKey], [LocalizedValue]) VALUES (1, 8, 'Cellular_Module',N'Cellular Module')

INSERT @ResourceLocalizedValues([LanguageId], [EntityType], [ResourceKey], [LocalizedValue]) VALUES (1, 7, 'FILE_TYPE_CellularModule',N'Cellular Module')
INSERT @ResourceLocalizedValues([LanguageId], [EntityType], [ResourceKey], [LocalizedValue]) VALUES (1, 8, 'FILE_TYPE_CellularModule',N'Cellular Module')


MERGE INTO [dbo].[ResourceLocalizedValues] AS TARGET  
USING @ResourceLocalizedValues AS SOURCE  
ON TARGET.[LanguageId] = SOURCE.[LanguageId]
	AND TARGET.[EntityType] = SOURCE.[EntityType]
	AND TARGET.[ResourceKey] = SOURCE.[ResourceKey]
WHEN NOT MATCHED BY TARGET THEN
INSERT ([LanguageId], [EntityType], [ResourceKey], [LocalizedValue])
VALUES (SOURCE.[LanguageId], SOURCE.[EntityType], SOURCE.[ResourceKey], SOURCE.[LocalizedValue])
WHEN MATCHED THEN    
UPDATE SET	TARGET.[LocalizedValue] = SOURCE.[LocalizedValue]
OUTPUT $ACTION, SOURCE.*;
