В Oracle, я могу сделать «вставить или обновить значения в таблицу» - PullRequest
0 голосов
/ 06 октября 2010

У меня есть таблица с двумя числовыми столбцами и уникальным ограничением для них обоих.Я хотел бы вставить новую пару значений, если пара уже существует.Какой самый простой способ сделать это?

Если я делаю

insert into TABLE values (100,200) 

и пара уже существует, я получаю ошибку ORA-00001, поэтому я хотел бы сделать что-то вроде

insert or update into TABLE values (100,200)

Ответы [ 2 ]

7 голосов
/ 06 октября 2010

Вы можете использовать MERGE

1 голос
/ 06 октября 2010

Вы можете попробовать что-то вроде:

insert into table
select :a, :b from dual
where not exists (select 1 from table where column1 = :a and column2=:b)
...