Как применить Обновление, если элемент существует, и Вставить в противном случае - PullRequest
0 голосов
/ 24 октября 2011

Как создать процедуру, которая идет из верхней части таблицы и сравнивает значение со значением NULL - если совпадение найдено, вставьте элемент в эту позицию.- Если нет, элемент вставляется в новую строку

Мне нужно исправить вторую строку, которая содержит нулевые значения в 4 последних столбцах независимо от значений в столбцах Id и PropertyId

Здесьскриншот моей БД

enter image description here

Вот примеры данных:

enter image description here

Теперь это работает так, что немне подходит, вместо этого он должен обновить строку с нулевыми значениями, как на последнем скриншоте

enter image description here

Но следующая запись должна перезаписать значение NULL для Item, ItemId, InstanceId иЭкземпляр

enter image description here

1 Ответ

1 голос
/ 24 октября 2011

Напишите хранимую процедуру, например:

create procedure INSERT_OR_UPDATE as
begin
  if exists ( select * from Numerations where <your condition> )
    begin
      update Numerations set < ... > where < ... >
    end
  else
    begin
      insert into Numerations values <...>
    end
end

Вы должны проверить синтаксис, потому что я не могу проверить свой код прямо сейчас.

...