In a debate I have had with Joe Celko by emailing, I criticised his naming convention he expose in « SQL programming Style » (Morgan Kaufmann). Let me talk about this case…
Lire la suite
Bases de données système de MS SQL Server
Cet article explique à quoi servent les différentes bases de données système et comment les administrer.
Lire la suite
Terminologie : le terme RELATION ne désigne pas un lien entre deux tables
Une erreur hélas très courante est de désigner par le terme relation un lien entre deux tables, comme par exemple une contrainte d’intégrité référentielle ou une jointure. Mais d’où vient cette confusion ?
Lire la suite
Requêtes avec filtre paramétrés
Dans certaines requêtes il est nécessaire de prévoir que la clause WHERE (ou HAVING) puisse être augmentées ou diminuées de différentes expressions logiques (prédicats) en fonction de certains paramètres. La plupart du temps, les développeurs vont réaliser cela en utilisant des requêtes construites dynamiquement. Ceci n’est pas toujours intéressant notamment lorsque l’on exige des performances Voici quelques techniques de contournement afin d’obtenir le même effet avec des requêtes statiques.
Comment modifier les paramètres de session SQL Server
SQL Server permet de paramétrer la session de l’utilisateur qui se connecte avec différents flags. Cependant, comment faire en sorte que toute connexion par défaut à SQL Server emprunte les mêmes flags définis une fois pour toute ?
Lire la suite
Calculs de tous les arrangements (mathématiques) avec une requête SQL
Certains pensent impossible de réaliser des traitements mathématiques complexes à l’aide de requêtes SQL. Voici la démonstration que SQL n’a pas de limite, du fait qu’il s’agit d’un langage complet…
En une seule requête voici le calcul de tous les arrangements possible d’un ensemble de données…
Trois petites fonctions de calcul de jointures
Voici trois petites fonctions pour ceux qui utilisent du SQL dynamique, afin de réaliser de manière automatique différentes jointures entre deux tables…
Lire la suite
Une fonction renvoyant une série sous forme de table
Il arrive parois que l’on ait besoin épisodiquement d’une série de nombre continue. Voici une fonction permettant cela…
Lire la suite
Rétro ingéniérie des données SQL Server : exporter les lignes sous forme INSERT
Cet article propose une procédure afin d’exporter les données de vos tables sous forme d’ordre INSERT INTO.
Nous poursuivrons cette série d’article consacré à la rétro ingénierie avec un article consacré à l’écriture d’une procédure de création des tables, puis une dernière consacrée aux objets de code (fonctions, procédures, triggers).
Extensions uniforme ou extensions mixtes ?
SQL Server stocke les pages des fichier de données (tables, index, blobs…) dans des blocs de 8 pages appelés « extents » (extensions en français). Autant une page ne peut appartenir qu’à un seul objet, autant une extension peut comporter des pages de différents objets. Est-il possible de force la mise en place d’extension ne contenant qu’un seul et même type d’objet ? La réponse est oui, mais n’est pas sans conséquences !
Lire la suite