IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MS SQL Server Discussion :

[SQL 2K5][T-SQL]Documenter BD - Jointure pour FK


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Par défaut [SQL 2K5][T-SQL]Documenter BD - Jointure pour FK
    Bonjour,

    Pour obtenir les caractérististiques de toutes les colonnes de toutes les tables d'une base de données, j'ai commencé la requête suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    SELECT 
    	TABLES.NAME AS [TABLE],
    	COLUMNS.NAME [COLUMN], 
    	UPPER(TYPES.NAME) [TYPE],
    	COLUMNS.max_length [LENGTH],
    	CASE COLUMNS.is_nullable
    		WHEN 1 THEN 'YES'
    		ELSE 'NO'
    	END AS NULLABLE,
    	CASE COLUMNS.is_identity
    		WHEN 1 THEN 'YES'
    		ELSE 'NO'
    	END AS [IDENTITY],
    	CASE COLUMNS.is_computed
    		WHEN 1 THEN 'YES'
    		ELSE 'NO'
    	END AS COMPUTED,
    	REPLACE(REPLACE(REPLACE(REPLACE(COMPCOL.definition, ')', ''), '(', ''), '[', ''), ']', '') FORMULA,
    	REPLACE(REPLACE(REPLACE(REPLACE(CHK.definition, ')', ''), '(', ''), '[', ''), ']', '') [CHECK_CONSTRAINT],
    	REPLACE(REPLACE(DF.definition, '(', ''), ')', '') [DEFAULT]
    FROM sys.tables TABLES
    LEFT JOIN sys.columns COLUMNS ON TABLES.object_id = COLUMNS.object_id
    LEFT JOIN sys.types TYPES ON TYPES.user_type_id = COLUMNS.user_type_id
    LEFT JOIN sys.computed_columns COMPCOL ON COMPCOL.column_id = COLUMNS.column_id
    										AND COMPCOL.object_id = TABLES.object_id
    LEFT JOIN sys.check_constraints CHK ON CHK.parent_object_id = TABLES.object_id
    									AND CHK.parent_column_id = COLUMNS.column_id
    LEFT JOIN sys.default_constraints DF ON DF.parent_object_id = TABLES.object_id
    									AND DF.parent_column_id = COLUMNS.column_id
    ORDER BY TABLES.NAME, COLUMNS.column_id
    Maintenant je souhaiterais, pour chaque colonne, obtenir s'il y a lieu la table et la colonne référencées. Pour cela j'ai donc rajouté un:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LEFT JOIN sys.foreign_key_columns
    mais je ne parviens pas à trouver les relations correctes pour obtenir le bon résultat.

    Quelqu'un peut m'aider ?

  2. #2
    Membre Expert
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573

Discussions similaires

  1. Réponses: 4
    Dernier message: 16/07/2009, 13h36
  2. [SQL 2K5] Problème de version pour attacher une base
    Par Jinroh77 dans le forum Administration
    Réponses: 8
    Dernier message: 03/10/2008, 17h19
  3. [SQL 2K5][T-SQL]Processus consommateurs
    Par elsuket dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 01/08/2007, 12h28
  4. Fabriquer des requêtes sql à partir d'un document xml
    Par ktel dans le forum XQUERY/SGBD
    Réponses: 4
    Dernier message: 18/10/2005, 16h45
  5. [PL/SQL][down&upLOAD] table document fixée
    Par meufeu dans le forum Oracle
    Réponses: 18
    Dernier message: 30/09/2004, 09h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo