Résumé du SQL Saturday #501 à Paris par la célèbre Sarah Bessard

Je me suis rendu hier au SQL Saturdays organisés à Paris par le GUSS, un bel événement, beaucoup de monde, et une vue imprenable sur Paris.

J’ai eu l’honneur et l’avantage de faire la rencontre de la très célèbre Sarah Bessard, dont j’entendais régulièrement parler depuis mon rapatriement en France, sans pour autant l’avoir encore vue de mes yeux. Elle a résumé avec un humour qui n’a d’égal que son talent pour l’animation par une mise en scène d’un excellente session sur le Query Store en compagnie de Philippe Geiger, et d’une autre sur le processus de migration d’une version à l’autre de SQL Server, avec Arian Papillon, en sombrero et collier de fleurs … Preuve, s’il en fallait encore, de la nécessité de femmes dans ce mondes de barbus !

Je vous laisse donc vous délecter de ce résumé, car je n’aurais pas pu l’écrire mieux qu’elle. Croyez-le ou non, il colle très bien à la réalité !

@++ ;)

Vérifier la validité d’un SIRET – Algorithme de Luhn

Lors d’un chargement massif de données et/ou d’une migration, il est possible que la qualité des données soient altérées. Il faut alors tester leur qualité et valider chaque écart. Parmi ceux-ci, on peut trouver les numéro SIRET, qui permet l’identification d’un établissement ou d’une entreprise Française.

Cet identifiant numérique est constitué de 14 chiffres, et est articulé en trois parties :

  • le SIREN
  • le Numéro Interne de Classement, à quatre chiffres : c’est l’ordre de création de l’établissement par l’entreprise Française
  • une clé de contrôle, constituée d’un seul chiffre

Ce dernier est calculé à l’aide de l’algorithme de Luhn. Cet algorithme est aussi utilisé pour valider les numéros de carte bleue, et de nombreux identifiants distribués par les administrations de beaucoup de pays. Nous allons nous en servir pour vérifier la validité de SIRETs en l’implémentant spécifiquement pour ce type d’identifiant.

Lire la suite

Mesurer et remédier à la fragmentation des index fulltext

La fragmentation et la défragmentation des index relationnels est un sujet connu sur lequel la littérature ne manque pas. Mais on voit bien moins souvent des lignes sur les index fulltext, donc la fragmentation élevée nuit de la même façon aux performances des requêtes que leurs cousins relationnels.

Voici donc une requête qui permet de mesurer la fragmentation des index fulltext, et qui génère l’instruction de maintenance adéquate, le cas échéant :

Lire la suite

Scripter les index fulltext

Voici une petite requête qui permet d’extraire le script de création des index fulltext d’une base de données. Il génère également l’instruction de création du catalogue (CREATE FULLTEXT CATALOG) auquel chaque index est lié. Donc si l’on a plusieurs index attachés au même catalogue, le script teste si le catalogue existe déjà.

Lire la suite

Capture manuelle de plans de requête

Plusieurs des participants au forum SQL Server de Développez demandent comment optimiser une requête : ce billet leur est particulièrement destiné, puisqu’une optimisation de requête ne peut réellement se faire sans son plan d’exécution, le mieux étant aussi d’avoir la sortie de l’option de session SET STATISTICS IO, TIME ON, et le DDL (ordre CREATE TABLE) de la table et de ses index.
Lire la suite

Comment remplacer les espaces et tabulations en fin de lignes dans les modules de code sans trop d’effort ?

SQL Server Management Studio dispose d’un outil de recherche et de remplacement de texte, qui permet notamment de travailler avec des expressions régulières. Il m’arrive souvent dans des tâches de refactoring de trouver un très grand nombre d’espaces ou de tabulations à la fin des lignes, et je suis bien plus passionné par optimiser et standardiser le code que par supprimer ce type de micro-boulettes.

Lire la suite

Où est passé le panneau SSIS toolbox dans SSDT-BI 2013 ?

Ce panneau est ouvert automatiquement à l’ouverture d’un projet SSIS. Supposons maintenant que l’on ait fermé ce panneau après avoir ajouté un projet SSRS à la solution : à l’ouverture suivante du projet ou de SSDT-BI, le volet n’est plus là ! Pour le débutant que je suis, j’ai donc intuitivement ouvert le menu VIEW, mais ne l’y trouvais pas :

Lire la suite