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
Plan de sécurité Microsoft 365
Les attaquants savent comment prendre le contrôle de votre tenant Microsoft 365, et vous, savez-vous comment le reprendre en main ?
Les articles les plus consultés
A travers cette chaîne
A travers ITPro
- Stockage autonome, Evolutivité & Gestion intelligente, Pure Storage offre de nouvelles perspectives aux entreprises
- Databricks lève 1 milliard de dollars !
- 9 défis de transformation digitale !
- Dark Web : où sont vos données dérobées ?
- ActiveViam fait travailler les data scientists et les décideurs métiers ensemble
Les plus consultés sur iTPro.fr
- IA au travail : productivité en hausse, lien humain en recul
- La souveraineté numérique commence par avoir le choix de son infrastructure
- Cybersécurité : pourquoi 95% des violations de données sont liées à l’humain, surtout en été
- La blockchain n’est pas seulement un défi à encadrer : c’est aussi une solution à exploiter
Articles les + lus
Cybersécurité : les entreprises françaises réclament un durcissement inédit de la réglementation
Cyber risques et IA : 78% des RSSI pointent une déconnexion inquiétante des dirigeants
Des Master Data aux data products : comment l’IA redéfinit le rôle du MDM
La bataille de la 6G se gagne dans la donnée en temps réel
Souveraineté des données : cessons de traiter le symptôme, attaquons-nous aux causes
À la une de la chaîne Data
- Cybersécurité : les entreprises françaises réclament un durcissement inédit de la réglementation
- Cyber risques et IA : 78% des RSSI pointent une déconnexion inquiétante des dirigeants
- Des Master Data aux data products : comment l’IA redéfinit le rôle du MDM
- La bataille de la 6G se gagne dans la donnée en temps réel
- Souveraineté des données : cessons de traiter le symptôme, attaquons-nous aux causes
