Я пытаюсь массово вставить записи в сервер sql. Я использую тип таблицы, определяемой пользователем, для передачи коллекции записей из моего приложения .net. Пожалуйста, взгляните на запрос на вставку ниже.
INSERT INTO MachineItems([Name],[Price],[Quantity],[ItemGroupID],[SubGroup] ,[IsDefault],
[IsRemovable],[MachineTypeID],[ItemType],[CreatedBy],[CreatedOn] )
SELECT mi.Name
,mi.Price
,mi.Quantity
,(SELECT ID from ItemGroups WHERE NAME=mi.ItemGroup) as ID
,mi.SubGroup,
CASE
WHEN mi.IsDefault ='Yes' THEN 1
WHEN mi.IsDefault ='No' THEN 0
WHEN mi.IsDefault IS NULL THEN 0
END ,
CASE
WHEN mi.IsRemovable ='Yes' THEN 1
WHEN mi.IsRemovable ='No' THEN 0
END ,
(SELECT ID from MachineTypes WHERE Name=mi.MachineType),
(SELECT ID from MachineItemTypes WHERE Name=mi.ItemType),
mi.CreatedBy
,mi.CreatedOn
FROM @MachineItems mi
Что я хочу сделать, так это поставить галочку перед вставкой записей, существует ли запись с [MachineTypeID] и [Name] в таблице или нет. Если он не существует, вставьте Eles Update в запись.
Как я могу сделать это с типом таблицы, определяемым пользователем?