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

Administration SQL Server Discussion :

Modification schéma table suite aux lenteurs


Sujet :

Administration SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Octobre 2016
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2016
    Messages : 144
    Par défaut Modification schéma table suite aux lenteurs
    Bonjour à tous et à toutes et merci à ceux qui nous aident et font vivre ce forum

    Je rencontre un problème de lenteur pour toutes les requêtes exécutées sur une table nommée sérialisation

    La clé primaire de cette table est mappée sur une colonne de type varchar(200)

    Si je procède à changer ce tableau en faisant la création d'une colonne de type int identity définie comme clé primaire et je supprime l'ancienne clé et je la remplace par une contrainte d'unicité NOT null sur la colonne "No_seriev" définie récemment comme clé primaire (voir imprime écran) aurai-je une amélioration de la performance et un gain d’espace disque

    merci pour vos conseils
    Images attachées Images attachées  

  2. #2
    Membre très actif Avatar de Bernardos
    Homme Profil pro
    Consultant Senior dba sql server & Microsoft Business Intelligence
    Inscrit en
    Avril 2008
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant Senior dba sql server & Microsoft Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 333
    Par défaut
    le clé primaire de ce table est mappé sur une colonne de type varchar(200)
    beurk, faut pas c'est absolument catastrophique. la première réflexion serait déjà de s'assurer que 200 n'est pas une trop grosse valeur par rapport à la réalité. ca m'étonnerait beaucoup que tu ais des numéros de série de 200 caractères.


    Si je procède a changer ce tableau en faisant la création d'une colonne de type int identity définit comme clé primaire et je supprime l'ancien clé et je

    le remplace par une contrainte d'unicité NOT null sur le colonne "No_seriev" Définit récemment comme clé primaire (voir imprime écran) j'aurai t'il

    une amélioration du performance et gain d’espace disque
    oui et oui. c'est exactement ce qu'il faut faire. tu peux aussi ajouter une contrainte d'unicité sur ton numéro de série.
    Cordialement,
    Loïc

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 010
    Billets dans le blog
    6
    Par défaut
    Il faut que votre nouvelle colonne soit clef primaire et non pas simplement UNIQUE.

    Effectivement une colonne VARCHAR(200) est parfaitement idiot comme clef primaire !
    Et pour cause...

    Dans certaines opérations comme les GROUP BY et les ORDER BY invoquant cette colonne, le VARCHAR sera réaligné à 1/2 de la longueur max (algorithme interne de SQL Server) soit 100 octets, avant d'effectuer l'opération.


    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

Discussions similaires

  1. Réponses: 17
    Dernier message: 28/04/2010, 13h07
  2. Réponses: 2
    Dernier message: 17/11/2006, 15h23
  3. Réponses: 2
    Dernier message: 13/10/2005, 19h04
  4. ACCESS modif lien tables attachées
    Par Berched dans le forum Access
    Réponses: 4
    Dernier message: 23/06/2005, 12h08
  5. Modification de table
    Par Benbedo dans le forum Access
    Réponses: 3
    Dernier message: 23/06/2005, 08h49

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