Tomber sans nom contraintes
Être une recrue, j'ai créé quelques clés étrangères sans un nom explicite.
Puis j'ai fondé SQL généré fou des noms comme FK__Machines__IdArt__760D22A7
. Suppose qu'ils vont être générés avec des noms différents à différents serveurs.
Est-il agréable de fonction à la baisse sans nom de FK contraintes passer comme arguments les tables et les champs en question?
Vous devez vous connecter pour publier un commentaire.
Il n'est pas intégré dans la procédure à suivre pour accomplir cela, mais vous pouvez construire votre propre en utilisant les informations contenues dans les vues information_schema.
Table en fonction exemple
De l'abandon d'un individu sans nom par défaut de contraindre sur une colonne, utilisez le code suivant:
Si vous voulez faire cela pour une colonne par défaut, qui est probablement plus fréquent que la question d'origine et je suis sûr que beaucoup de gens sur cette terre à partir d'une recherche sur Google, alors il suffit de changer la ligne:
à
Cela vous permettra de déposer un spécifique de la contrainte de clé étrangère basée sur tablename + nom de la colonne
Après avoir essayé les autres réponses je viens de fouiner dans les tables système jusqu'à ce que j'ai trouvé quelque chose de probablement à la recherche.
Celui que vous voulez, c'est Constraint_Column_Usage qui, selon les docs
Returns one row for each column in the current database that has a constraint defined on the column.
J'ai rejoint il de sys.des objets pour obtenir juste les clés étrangères.
Dans une procédure (il emprunte aux autres réponses. cheers les gars!):