Je travaille avec une base de données relationnelle sql server 2000 dont l'utilisation de clé étrangère déclarée en DELETE ON CASCADE est interdite par l'administrateur. Je souhaite utiliser XSLT pour générer un code sql qui me permettrait de supprimer en cascade l'enregistrement d'une table ainsi que tous les enregistrements des tables qui lui sont reliés.

L'idée est la suivante.

1. je génère (OPEN XML sous sql server) le fichier XML correspondant à une requête sql qui contient tous les enregistrements que je souhaite supprimer.
2. Transformation 1 : je mets à plat le fichier XML en classant correctement les noeuds (les premiers noeuds du fichier XML correspondraient aux tables les plus basses dans ma structure de base de données) car il faudra supprimer ces enregistrements en premier pour respecter les contraintes référentielles.
3. Transformation 2 : je génère les instructions DELETE TABLE WHERE clé = xxx à partir de ce fichier.

Existerait-il un lien internet qui traite de ce sujet (j'ai beaucoup cherché et je n'ai rien trouvé) ? Je n'ai jamais utilisé les Schémas XML mais il me semble qu'ils permettraient de réaliser ce type d'opération (il faut être capable de connaître la clé de chaque table (noeud) pour les étapes 2 et 3).

Merci.