Ну вот так можно:
Код:
ADOQuery1.SQL.Text := 'select * from tabli where nomer=:nomer and rnn=:rnn and title_tovar=:title_tovar and title_kontora=:title_kontora';
ADOQuery1.Parameters.ParamValues['nomer'] := nomer;
ADOQuery1.Parameters.ParamValues['rnn'] := rnn;
ADOQuery1.Parameters.ParamValues['title_tovar'] := title_tovar;
ADOQuery1.Parameters.ParamValues['title_kontora'] := title_kontora;
ADOQuery1.Open;
if not ADOQuery1.isEmpty then ShowMessage('Есть уже такая');
А еще можно просто создать уникальный индекс на таблицу и обрабатывать ошибку вставки повторного значения.