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

Développement SQL Server Discussion :

dernière utilisation d'une table


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mars 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2015
    Messages : 10
    Par défaut dernière utilisation d'une table
    Bonjour,


    Je dois analyser une BDD d'environ 400 tables et pour se faire, j'aimerais savoir quelles tables sont utilisées ou non.

    Y'a t-il moyen de récupérer pour chaque table, la dernière date de modif (INSERT, DELETE, TRUNCATE, UPDATE) ?


    Je vous remercie pour vos réponse
    mr h

  2. #2
    Membre émérite

    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Novembre 2014
    Messages
    817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 817
    Billets dans le blog
    2
    Par défaut
    bonjour

    Tu peux avec cette requête récupérer les listes des tables ordonnés par leur espace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    SELECT SCHEMA_NAME(o.schema_id) AS TABLE_SCHEMA, 
           o.name AS TABLE_NAME,
           8 * SUM(a.used_pages) AS VOLUME_KO
    FROM    sys.objects AS o
            INNER JOIN sys.indexes AS i
                  ON o.object_id = i.object_id
            INNER JOIN sys.partitions AS p 
                  ON p.object_id = i.object_id 
                     AND p.index_id = i.index_id
            INNER JOIN sys.allocation_units AS a 
                  ON a.container_id = p.partition_id
    GROUP BY SCHEMA_NAME(o.schema_id), o.name
    ORDER BY VOLUME_KO desc
    cordialement

  3. #3
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par mrhinn Voir le message
    Bonjour,


    Je dois analyser une BDD d'environ 400 tables et pour se faire, j'aimerais savoir quelles tables sont utilisées ou non.

    Y'a t-il moyen de récupérer pour chaque table, la dernière date de modif (INSERT, DELETE, TRUNCATE, UPDATE) ?


    Je vous remercie pour vos réponse
    mr h
    Ce n'est pas parce qu'une table n'a jamais de modification qu'elle n'est pas utilisée...

    Par exemple, une table "compteur" ou de paramétrage est alimentée une bonne fois pour toutes, lu très souvent, mais jamais modifiée.

    Et dans ce cas, aucun moyen à me connaissance de connaître "simplement" les tables réellement utilisée.

    Si ce n'est mettre en place un audit de la base, et répertorier toutes les tables effectivement présentes dans les requêtes passées durant un temps déterminé.

    Mais là encore, une journée type ne correspond pas forcément à la réalité : des traitements de fin de mois, de fin d'année ou autres événement particuliers peuvent parfaitement impliquer des accès à des tables qui ne servent pas le reste de l'année.

  4. #4
    Expert confirmé
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Par défaut
    Tu peux toujours également passer par la DMV sys.dm_db_index_usage_stats pour voir si ta table est utilisée un scan, un seek ou même si une mise à jour a été produite même si cette solution n'est pas parfaite non plus. Tu auras les dernières dates d'opérations correspondants à chaque type d'opération.

    ++

Discussions similaires

  1. dernière analyse d'une table
    Par big1 dans le forum Oracle
    Réponses: 7
    Dernier message: 04/09/2006, 17h31
  2. conception et utilisation d'une table
    Par lkryss dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 29/06/2006, 11h14
  3. Réponses: 6
    Dernier message: 09/06/2006, 18h22
  4. recherche utilisation d'une table
    Par xmanu dans le forum Access
    Réponses: 2
    Dernier message: 21/09/2005, 09h09
  5. date de dernière modification d'une table ?
    Par NiBicUs dans le forum Requêtes
    Réponses: 3
    Dernier message: 17/12/2004, 18h11

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