par Itzik Ben-Gan. Mise en ligne : 29 Novembre 2006, Parution SQL Magazine : Juin 2005
T-SQL est le langage principal pour l’accès aux données côté serveur et la manipulation de celles-ci dans SQL Server. L’application des meilleures pratiques vous aidera à exploiter au mieux ses possibilités. En vous appuyant sur la liste de contrôle suivante, vous serez certain d’avoir un code T-SQL performant et convivial en termes de maintenance.- Utilisez des solutions basées sur des ensembles. Ce type de solution est généralement plus rapide, plus simple et moins longue que des solutions à base de curseur. Les solutions basées sur des ensembles permettent à l’optimiseur SQL Server d’évaluer plusieurs plans d’exécution et de choisir le plus performant au lieu d’imposer une approche particulière. Les curseurs nécessitent beaucoup de temps de traitement et il vaut donc mieux les éviter dans la mesure du possible. Les solutions itératives sont appropriées dans quelques cas et il est important de les identifier au lieu d’envisager d’emblée ce type d’approche.
- Ecrivez plusieurs solutions. Ne vous contentez pas de la première solution qui marche. Elaborez systématiquement plusieurs solutions, comparez leurs performances, leur simplicité et leur évolutivité, puis choisissez celle qui répond le mieux à vos besoins.
- Privilégiez le code conforme ANSI. Utilisez autant que possible du code conforme à la norme ANSI. L’écriture de code standard présente de nombreux avantages : elle facilite le portage, pas seulement entre plates-formes de base de données, mais aussi vers de futures versions de SQL Server. De même, la signification du code standard est claire, à la différence de certaines constructions propriétaires, telles que *= ou =* pour des jointures externes. Envisagez d’employer du code non standard uniquement lorsque T-SQL fait appel à une fonction propriétaire extrêmement avantageuse en termes de performances ou une fonctionnalité qui n’a pas d’alternative standard.
- Employez les procédures stockées. Privilégiez cette approche au lieu de mettre en oeuvre toute la logique dans l’application. Les procédures stockées permettent de partager la logique applicative et fournissent un procédé d’encapsulation, de sorte que vous pouvez réviser leur implémentation sans affecter l’application tant que l’interface de la procédure reste inchangée. Les procédures stockées constituent un très bon outil pour contrôler la sécurité et l’intégrité des données, pour réduire le trafic réseau en évitant de multiples allers et retours entre le client et le serveur, et pour réutiliser les plans d’exécution.
- Spécifiez des noms de colonne dans la liste SELECT de votre requête. Spécifiez systématiquement une liste de colonnes explicite ; évitez le symbole * dans la liste SELECT de vos requêtes et expressions de table (par ex. vues, tables dérivées, fonctions inline). En indiquant uniquement les noms des colonnes nécessaires, vous laissez à l’optimiseur le soin d’envisager des index de couverture. Et vous n’avez pas de souci à vous faire en cas de changement du schéma des objets sous-jacents.
- Ne supposez jamais qu’il existe un ordre physique des données. Une erreur courante commise par les programmeurs T-SQL débutants est de s’appuyer sur un certain ordre physique des données. Souvenez-vous que ce langage repose sur le modèle relationnel, lequel est à son tour basé sur la théorie des ensembles. Une table (ensemble) n’a pas d’ordre prédéterminé de ses lignes. Lorsque vous devez trier les donnée
Liste de contrôle T-SQL
Téléchargez cette ressource

Comment accélérer la transformation des environnements de travail ?
Dans un monde professionnel en pleine mutation, la mobilité, l’efficacité énergétique, la sécurité et l’intelligence embarquée sont devenues des critères décisifs pour les équipements informatiques. Découvrez comment les nouveaux PC Microsoft Surface dotés des processeurs Snapdragon X Series s’imposent comme une réponse stratégique aux nouveaux enjeux IT.
Les articles les plus consultés
A travers cette chaîne
A travers ITPro
- 10 grandes tendances Business Intelligence
- Stockage autonome, Evolutivité & Gestion intelligente, Pure Storage offre de nouvelles perspectives aux entreprises
- Intelligence Artificielle : DeepKube sécurise en profondeur les données des entreprises
- Databricks lève 1 milliard de dollars !
- Les projets d’intégration augmentent la charge de travail des services IT
Les plus consultés sur iTPro.fr
- Cloud et IA générative : le secteur de la santé visé
- La progression latérale dans les cyberattaques échappe encore à la détection !
- Panorama de la maturité cyber des entreprises françaises
- L’IA n’est pas une stratégie, elle est au service de VOTRE stratégie. Alors posez-vous donc les bonnes questions !
- Les banques subissent la concurrence des PayTechs plus agiles
Sur le même sujet

Les projets d’intégration augmentent la charge de travail des services IT

10 grandes tendances Business Intelligence

La blockchain en pratique

Intelligence Artificielle : DeepKube sécurise en profondeur les données des entreprises

ActiveViam fait travailler les data scientists et les décideurs métiers ensemble
