0
votes

SQL Server: relation entre les colonnes dans différentes tables

Je voudrais trouver un moyen de comprendre s'il existe une relation entre deux colonnes présentes dans deux tables différentes.

Par exemple dans la table [Ventes]. [VentesOrderHeader] , j'ai une colonne salopeOrderid et dans une autre table [Personne]. [EmailAddress] < / Code>, il y a businessentitéticulaire .

Comment puis-je vérifier s'il y a une table qui crée une relation entre ces 2 colonnes? Ou comment puis-je être sûr qu'il n'y a pas de relation entre ces 2 colonnes?


4 commentaires

Avez-vous essayé informations_schema.key_column_USAGE ?


Utilisez-vous un logiciel pour voir des tables? Certains logiciels comme MS Access vous permettent de voir les relations.


Pouvez-vous être sûr que le concepteur de la base de données a réellement ajouté des contraintes de clé étrangère? Existe-t-il aucune information de conception concernant cette base de données disponible?


Dupliqué possible de Comment trouver des dépendances de clé étrangère dans SQL Server? < / a>


3 Réponses :


0
votes

Information_schema est ce que vous recherchez. Vous pouvez voir si une colonne donnée est utilisée dans une contrainte en exécutant

SELECT * FROM INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE WHERE TABLE_NAME = 'Person' AND COLUMN_NAME = 'BusinessEntityID'


0 commentaires

0
votes

Vous pouvez effectuer une solution suivante pour trouver les tables qui référence [ventes]. [VentesOrderHeader]:

EXEC sp_fkeys @pktable_name = N'SalesOrderHeader',@pktable_owner = N'Sales';


0 commentaires

-1
votes

Je m'excuse avant la main pour ce qui suit: xxx


1 commentaires

Certaines explications de ce code et la CR occasionnelle aideraient beaucoup ici.