Ved du hvad betyder "blød sletning"? Det betyder, at hver "delete"-handling vil blive konverteret til SQL, der kun indstiller nogle deleted
flag til true
. Og hvis du vil indsætte en anden række med den samme værdi af unikke felter, som har en blød slettet række, får du denne besked.
Du har to måder at løse dette problem på:
- Lav dit unikke indeks med to kolonner:dit oprindelige unikke felt og
deleted
flag. Så vil du kun få denne fejl, når du forsøger at tilføje række med de eksisterende unikke felter værdier kun for ikke blødt slettet. - Undgå at foretage denne overtrædelse:Du bør udelukke muligheden for at tilføje række, der dublerer en anden i unikke felter.
Den anden er den bedste tilgang IMHO.