Juste un petit post pour présenter une instruction TSQL utile à connaître. Quand vous voulez obtenir un jeu d'enregistrement d'une table de façon aléatoire, il était commode d'utiliser la fonction NEWID (qui génère un GUID) dans une clause ORDER BY. select top 1000 * from person.contact order by newid() Le problème c'est que l'on arrive…Lire la suite TABLESAMPLE, une alternative à ORDER BY NEWID()
SQL Server
Vues indexées et optimisation
Les vues indexées sont un excellent vecteur d'optimisation et j'en suis un des ardents défenseurs !! Je les utilise depuis SQL Server 2000 pour optimiser des requêtes un peu complexes ou fréquemment utilisées. Le but de ce post n'est pas de détailler les vues indexées mais de présenter un problème qui m'est arrivé. Lors d'une…Lire la suite Vues indexées et optimisation
CREATE APPLICATION ROLE
Tout le monde connaît l'utilisation des rôles dans la sécurité des applications. On n'y échappe pas avec SQL Server puisque l'on peut définir (CREATE ROLE) et affecter (sp_addrolemember) des rôles au sein de sa base de données. On appelle ces rôles des : databases-roles. SQL Server 2005 offre un autre type de rôle qui sont les…Lire la suite CREATE APPLICATION ROLE
TechDays 2008
L'annonce des TechDays 2008 n'a pas dû vous échapper étant donné que c'est relayé sur la toile depuis des mois. J'en remet une louche en faisant un peu de pub pour la session que je co-anime avec Sébastien Pertus (un autre Bewisien dont je vous recommande le blog) : Gestion des textes et des images…Lire la suite TechDays 2008
Intellisense dans SQL Server 2008
Bon d'accord, ce n'est pas vraiment dans SQL Server 2008 mais bien dans l'éditeur de T-SQL SSMS (Management Studio). Comme pour Visual Studio, elle marche pour les mot-clés mais aussi de façon contextuelle dans les clauses SELECT, FROM, WHERE, etc.
Contrainte d’intégrité : Unique ou NULL
Problématique : On a besoin sur une table d’ajouter une contrainte d’intégrité qui est la suivante : je veux que les valeurs de mon champ soient uniques ou NULL (i.e. uniques sauf si elles sont nulles). J’ai rencontré souvent cette utilisation pour stocker des utilisateurs où l’on souhaite avoir l’unicité des N° de téléphone mais où ce…Lire la suite Contrainte d’intégrité : Unique ou NULL
Un aperçu visuel des nouvelles fonctionnalités de SQL Server 2008
Un schéma sympathique que je trouve particulièrement efficace pour représenter les nouvelles fonctionnalité de SQL Server 2008 au fil de leurs sorties : Je manque de temps mais je vais essayer de vous en présenter plus dans ce blog.
Le type HierarchyID de SQL Server 2008
Le type HierarchyID est un nouveau type de données de SQL Server 2008 (alias Katmai) qui permet de gérer comme son nom l'indique, des hiérarchies dans des tables relationnelles. Nous allons voir dans cet article que ce nouveau type apporte des réponses dans la modélisation d’arborescences dans les bases de données. Il ajoute des fonctionnalités…Lire la suite Le type HierarchyID de SQL Server 2008
Stopper un script de déploiement avec DBPros
Dans mon script de pré-déploiement, je souhaite arrêter le déploiement si une base de données n'existe pas. Comme indiqué en entête de Script.PreDeployment.sql, je me décide à utiliser la syntaxe de SQLCMD (qui sera utilisé pour jouer mon script). J'écris donc une commande de ce style : IF NOT EXISTS (SELECT 1 FROM [sys].[databases] WHERE [name] =…Lire la suite Stopper un script de déploiement avec DBPros
Gestion des variables dans Visual Studio Team Edition for Database Professionals SR1
J'étais super content que la SR1 de TeamDB (ou DBPros alias Visual Studio Team Edition for Database Professional) sorte enfin des cartons. En effet, j'en avais besoin pour utiliser les variables au niveau projet. J'ai été un peu déçu de voir qu'on ne pouvait les utiliser que dans un contexte restreint. Laissez moi vous décrire…Lire la suite Gestion des variables dans Visual Studio Team Edition for Database Professionals SR1