S’il est impossible de connaître l’avancement d’une requête qui est en cours d’exécution dans une instance de SQL Server (cela est normal puisque l’exécution des requêtes n’est pas « linéaire »), il est en revanche possible de connaître l’avancement des tâches suivantes :
Archives mensuelles : septembre 2009
Quelle différence y a-t’il entre une colonne et un champ ? entre une ligne et un enregistrement ? entre une table et un tableau ?
Lors de mes lectures et participations au forum SQL Server de ce site, je vois souvent des participants remplacer le terme ligne par enregistrement ou record, mais aussi le terme colone par le terme champ ou encore field, et enfin le pire : table par tableau, probablement par analogie de la représentation des résultats de requête avec un fichier Excel.
Si certains diront que c’est approximativement la même chose, et que s’attacher a ce type de détails revient à chercher des poils sur les Å“ufs, je vais démontrer que faire cet abus de langage montre qu’on est assez imprécis …
Récupérer les options de session
Comment connaître la liste des options de session (par exemple SET NOCOUNT ON) que nous utilisons dans la session en cours ou bien dans le contexte d’exécution ?
Ce snippet est valable pour les options suivantes :
– DISABLE_DEF_CNST_CHK
– IMPLICIT_TRANSACTIONS
– CURSOR_CLOSE_ON_COMMIT
– ANSI_WARNINGS
– ANSI_PADDING
– ANSI_NULLS
– ARITHABORT
– ARITHIGNORE
– QUOTED_IDENTIFIER
– NOCOUNT
– ANSI_NULL_DFLT_ON
– ANSI_NULL_DFLT_OFF
– CONCAT_NULL_YIELDS_NULL
– NUMERIC_ROUNDABORT
– XACT_ABORT
Et pas pour les suivantes :
– TEXTSIZE
– LANGUAGE
– DATEFORMAT
– DATEFIRST
– LOCK_TIMEOUT
– ISOLATION LEVEL
Lister les triggers d’une base de données sous SQL Server 2005 et 2008
Voici un petit snippet pour trouver la liste de tous les triggers d’une base de données, ainsi que le type d’événement qui entraîne leur exécution …
Les dangers de la vérification de l’intégrité des données : la commande DBCC CHECKDB
La plupart du temps, lorsqu’on pose la question à des personnes qui débutent sous SQL Server, la réponse à la question : « comment faites-vous pour résoudre une erreur de page déchirée ou de somme de contrôle « , la réponse est bien souvent : « j’utilise la commande DBCC CHECKDB avec l’option REPAIR_ALLOW_DATA_LOSS » …
Et là , c’est le drame, car il existe avant cette options bien d’autres solutions.
Comme vous allez le voir, l’option REPAIR_ALLOW_DATA_LOSS est une option à utiliser en dernier recours, tellement les dégâts qu’elle peut causer sont dangereux …
Lire la suite
Lister les statistiques de colonnes et quelques une de leurs caractéristiques sous SQL Server 2008
Voici un petit snippet pour vous permettre de voir quelles sont les statistiques qui sont attachées aux colonnes des tables :
Trouver l’heure de dernier démarrage d’une instance SQL Server
Il est bon de savoir la dernière fois que le service SQL Server a été démarré.
Voici donc deux requêtes simples pour connaître celles-ci sous SQL Server 2005 et 2008 …
Lister les permissions dont un utilisateur dispose sous SQL Server 2005 et 2008 : la fonction fn_my_permission
La gestion des droits sous SQL Server étant complexe, puisqu’on peut octroyer des droits au niveau de l’instance et au niveau de la base de données, il est moins simple d’obtenir la liste complète des droits octroyés à un utilisateur, ou de connaître la liste des droits qu’on nous a octroyés.
Voyons comment obtenir cette liste de façon simple, avec la fonction fn_my_permission
Retrouver l’utilisation CPU d’une machine sous SQL Server 2005 et 2008
Avec SQL Server 2005, Microsoft a introduit les vues et fonctions de gestion dynamique qui facilitent grandement l’administration des serveurs.
Voyons comment utiliser celles-ci pour suivre la consommation de CPU d’une machine
[Snippets] Manipuler un fichier texte d’une colonne comme une table d’une colonne
Voyons comment on peut rendre abstraite la notion de fichier en T-SQL en combinant les commandes OPENROWSET et les vénérables CTE …