luni, 5 septembrie 2011

Oracle Validare Rapida pe Insert

O varianta prescurtata pentru validarea existentei unei inregistrari in momentul in care se doreste a se face un insert intr-o tabela:


INSERT INTO tabela
(id, label, status)
SELECT 1, 'label value', 'done'
FROM dual
WHERE not exists (select * from tabela
where tabela.id = 1 and tabela.label =
'label value' and tabela.status = 'done');


In exemplul de mai sus, in cazul in care exista o inregistrare cu valorile pe acre dorm sa le scriem nu se va insera o noua inregistrare, in caz contrar se va insera o inregistrare noua in tabela.

Niciun comentariu:

Trimiteți un comentariu