Impossible de tronquer la table car elle est référencée par une contrainte de clé étrangère ?

Impossible de tronquer la table car elle est référencée par une contrainte de clé étrangère ?


Source : Stack Overflow [sql-server]

Correct ; vous ne pouvez pas tronquer une table qui a une contrainte de clé étrangère dessus.

En général, mon processus pour cela est :

  • Supprimer les contraintes

  • Tronquer la table

  • Recréer les contraintes.

(Le tout dans une transaction, bien sûr.)

Bien entendu, cela ne s’applique que si la table enfant a déjà été tronquée. Sinon, je prends une autre voie, entièrement dépendante de l’apparence de mes données. (Trop de variables pour entrer dans les détails ici.)

L’auteur original de la question a déterminé POURQUOI c’est le cas ; consultez cette réponse pour plus de détails.