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

État des lieux de la sécurité cloud-native
L’État des lieux de la sécurité cloud-native vous offre une analyse complète des problématiques, des tendances et des priorités qui sous-tendent les pratiques de sécurité cloud-native dans le monde entier. Une lecture indispensable pour renforcer votre stratégie de sécurité dans le cloud. Une mine d’infos exclusives pour élaborer votre stratégie de sécurité cloud-native.
Les articles les plus consultés
A travers cette chaîne
A travers ITPro
- L’utilisation des données pour survivre !
- Les projets d’intégration augmentent la charge de travail des services IT
- Databricks lève 1 milliard de dollars !
- 9 défis de transformation digitale !
- Stockage autonome, Evolutivité & Gestion intelligente, Pure Storage offre de nouvelles perspectives aux entreprises
Les plus consultés sur iTPro.fr
- Les risques liés à l’essor fulgurant de l’IA générative
- Pourquoi est-il temps de repenser la gestion des vulnérabilités ?
- Reporting RSE : un levier d’innovation !
- De la 5G à la 6G : la France se positionne pour dominer les réseaux du futur
- Datanexions, acteur clé de la transformation numérique data-centric
Sur le même sujet

10 grandes tendances Business Intelligence

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

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
