Gör det inte. Tänk inte ens på det. Du kommer att döda alla prestationer och samtidighet du har.
Du måste ta reda på varför du har dubbla PK-värden. Om du lämnar det till databasen själv att hantera, till exempel genom att använda en INT IDENTITY-kolumn, behöver du egentligen inte oroa dig för någonting. SQL Server kommer att se till att dessa värden verkligen alltid garanteras vara unika.
Så egentligen är rekommendationen:omarbeta din lösning och låt databasen hantera det unika med ID:en - då kommer du inte ha något behov alls av någon låsning eller något.