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

Langage SQL Discussion :

Evaluation de son code SQL


Sujet :

Langage SQL

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 44
    Points : 30
    Points
    30
    Par défaut Evaluation de son code SQL
    Bonjour,


    Comment peut-on savoir que notre code SQL est :

    1) correct ? En effet, on peut avoir un résultat qui paraisse cohérent, mais peut-être qu'il n'est pas tout à fait correct et que des données n'ont pas été sélectionnées alors qu'elles auraient du l'être...

    2) le plus optimal : je pense (mais ne suis pas une experte!) qu'il y a plusieurs manières d'écrire un code SQL pour avoir un même résultat.
    Il faut qu'il soit bien écrit, puis performant.

    Merci d'avance,

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 897
    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 : 21 897
    Points : 53 135
    Points
    53 135
    Billets dans le blog
    6
    Par défaut
    vastes questions et réponses simple :

    1) en faisant des jeux d'essais avec des résultats obtenus manuellement et en vérifiant que le résultat d'une requête est la même que le résultat manuel du jeu d'essai.
    Ensuite dans de grandes bases en écrivant la requête de plusieurs façons et en comparant les résultats.

    2) les plans d'exécution des requêtes permettent de savoir quel est le coût de chaque requête. Il suffit alors de comparer pour savoir quelle requête est meilleure.
    Mais attention, l'optimisation passe en premier par un bon modèle de données respectant les formes normales, en second par l'indexation et en troisième par des statistiques régulièrement mise à jour et des index régulièrement défragmentés, avant même l'écriture des requêtes... Car souvent deux écritures différentes d'une même requête vont conduire au même plan d'exécution...

    3) pour comparer deux résultats de requête il suffit d'appliquer une autre requête :
    https://blog.developpez.com/sqlpro/p...ats-identiques

    A +

  3. #3
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 338
    Points : 39 726
    Points
    39 726
    Billets dans le blog
    9
    Par défaut
    Et, pour compléter, comme le choix du chemin d'accès dépend très fortement des statistiques, il faut garder à l'esprit que ce qui est vrai sur une plate forme d'exécution, ne l'est pas forcément sur une autre. La stratégie choisie par l'optimiseur en recette par exemple peut être très différente de celle choisie en production.

Discussions similaires

  1. Comment bien déboguer son code ?
    Par D[r]eadLock dans le forum Débuter
    Réponses: 47
    Dernier message: 02/04/2024, 16h06
  2. Réponses: 1
    Dernier message: 07/05/2014, 18h27
  3. Comment livrer proprement son code PL/SQL ?
    Par dedesite dans le forum PL/SQL
    Réponses: 8
    Dernier message: 12/05/2011, 10h30
  4. Propriété de son code source.
    Par chocobn49 dans le forum Langages de programmation
    Réponses: 6
    Dernier message: 06/07/2004, 14h40
  5. [mise en page] pour bien indenter son code
    Par bihorece dans le forum C++Builder
    Réponses: 4
    Dernier message: 06/08/2003, 16h14

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