Beaucoup plus simple qu’il n’y parait, mais attention. Ne tombez pas dans le piège à c…
Lire la suite
Archives mensuelles : août 2008
Faire un tri conditionnel
SQL permet d’utiliser l’expression CASE Ã bien des endroits. Un des endroits les moins attendu pour y placer la structure CASE est la clause ORDER BY…
Mais cette astuce permet de faire un tri conditionnel.
Lire la suite
Contrôler un code NNI (sécurité sociale)
Une petite fonction pour MS SQL Server afin de calculer une clef de sécurité sociale par rapport aux données du code NNI…
Lire la suite
De l’intérêt des devices pour les sauvegardes
La notion de device (unité de sauvegarde) a quasiment disparue des manuels de formation officiels de SQL Server. C’est à mon sens une hérésie, d’autant plus que les actuels dba sont de plus en plus boutonneux (je devrais dire juvéniles…) et désorganisés.
Or le device est le moyen le plus efficace pour ne pas perdre toutes ses sauvegardes lorsque l’on établis un plan comportant différents types de sauvegardes.
Lire la suite
Jointures externes… L’ancien et le nouveau monde !
Avant que la norme de 1992 (c’est vieux… certains lecteurs n’étais même pas nés…) ne statue sur la jointure externe, certains éditeurs avaient commencé à faire des jointures externes à leur mode… il en est ainsi de SQL Server.
Lire la suite
Tables temporaires et persistance
Certaines personnes ont une conception assez originale de ce qu’est une table temporaire. Ce gens là pensent naïvement qu’une table temporaire n’existe qu’en RAM… C’est bien évidemment totalement faux et cela pour deux raisons.
1) quelque soit sa forme, une table est une table et est traité de la même manière qu’elle soit temporaire ou pas
2) afin d’assurer la consistance transactionnelle (propriété ACID des SGBDR), il est nécessaire d’écrire les données sur un support Durable Lire la suite
Contraintes SQL et déférabilité…
Dans mon ouvrage sur SQL aux éditions Pearson Education, nous parlons de la notion de déférabilité des contraintes SQL (chapitre 3, paragraphe 7).
Un internaute qui a lu mon livre (oui, ça existe !) se posait la question suivante :
je n’ai pas compris la différence entre une contrainte NOT DEFERRABLE et une contrainte DEFERRABLE INITIALLY IMMEDIATE.
« Pas déférable » c’est forcement immédiat… mais « deférable immédiat » c’est quoi ? …la différence doit être subtile…
Voici la réponse que je lui ais apporté :
Lire la suite
Sauvegarder toutes les bases de données d’un serveur d’un seul coup
Voici une procédure destinée à opérer une sauvegarde globales de toutes les bases d’un serveur. Différentes options sont possible comme de sauvegarder aussi les bases systèmes ou utiliser une unité de sauvegarde (device).
Lire la suite
Une procédure pour trouver une table à travers toutes les bases
Voici une procédure permettant de rechercher toutes les bases contenant une table de nom @SCH.@TAB :
Lire la suite