Über eine Eindeutigkeit, bspw.
SELECT * FROM Kunden WHERE Name=Mustermann
Ja und wo ist da das Problem? Du kannst doch die Datensätze, die du damit erhältst, zählen, oder etwa nicht?
Zählen ist keine gute Idee, weil dazu die gesamte Tabelle (oder zumindest der Index, wenn dieser angewendet wird) durchsucht werden muss.
Die effektivste Möglichkeit um herauszubekommen, ob ein Datensatz existiert, wäre
imho ein ANY oder EXISTS:
SQL-Code:
select
case when exists (
select 1 from Tabelle where Name='Mustermann'
)
then 1
else 0
end;
Das konkrete Problem (insert or update) ist natürlich bereits von Medium beantwortet.