The usual way for me to do this is to create a custom form, then use a query column to check the destination table for all matches with relevant input columns. If there’s a match, I show an error hint, else I allow them to be added.