Blog > Mars 2012
Les nouveautés du moteur d'SQL Server 2012


Le moteur de base de données d'SQL Server 2012 apporte quelques nouveautés qui seront sans doute appréciées des développeurs. La première étant la fonctionnalité FileTable qui permet de stocker des fichiers dans des tables spéciales de SQL Server et d'y accéder à partir d'applications Windows comme s'ils étaient stockés dans le système de fichiers. On retrouve également la possibilité de créer des séquences (déjà bien connues sous d'autres SGBD). La syntaxe SQL est la suivante :
CREATE SEQUENCE maSeq AS INT
START WITH 0 INCREMENT BY 5;
La séquence est ensuite utilisable à l'intérieur d'une requête d'insertion :
INSERT INTO maTable (col1, ...) VALUES (NEXT VALUE FOR maSeq, ...)
La nouvelle instruction THROW, bien connue des développeurs C#, peut être utilisée pour lever une exception et transférer l'exécution à un bloc CATCH d'une construction TRY...CATCH. Pour l'utiliser, il suffit de définir un numéro d'erreur supérieur à 50000, un message et un état (entre 0 et 255). Ainsi, l'instruction suivante :
THROW 50001, 'Message de test', 1
Retournera l'erreur :
Msg 50001, Niveau 16, Etat 1, Ligne 1
Message de test
Côté requête Transact-SQL, on peut également découvrir 14 nouvelles fonctions intégrées dont des fonctions de conversion (PARSE, TRY_CONVERT, TRY_PARSE), des fonctions de manipulation de dates, les fonctions logiques CHOOSE et IIF, et les fonctions CONCAT et FORMAT pour les chaînes de caractères. 8 nouvelles fonctions analytiques viendront également enrichir la clause SELECT. LEAD et LAG étant à mon avis les plus intéressantes. Elles permettent d'accéder aux données d'une ligne ultérieure ou précédente dans le même jeu de résultats sans recourir à une jointure self-join. Prenons, par exemple, une table contenant des marges sur des ventes où nous souhaitons connaître l'évolution des marges sur les 3 premières ventes. L'utilisation de la fonction LAG serait alors la suivante :
SELECT TOP 3
Date, Marge, Marge - LAG(Marge, 1, Marge) OVER (ORDER BY Date) AS Evolution
FROM Vente
Résultat :
Date Marge Evolution
------------ ------ ----------
2012-01-18    1371     0
2012-01-22    1908     537
2012-01-23    2610     702

Pour plus d'informations : Les nouveautés du moteur SQL

Visual Studio 11 est arrivé en version Beta




Vous pouvez dès à présent télécharger Visual Studio 11 Beta : http://www.microsoft.com/visualstudio/11/fr-fr
Il est temps de découvrir ce que l'avenir du développement Microsoft nous réserve.

Le premier et plus troublant changement est au niveau de l'interface. Celle-ci a été entièrement retravaillé pour être compatible avec le style "Metro". Visual Studio 11 est maintenant d'un style très épuré, avec des couleurs très années 80 (bleu, gris). Beaucoup auront certainement du mal à subir cette régression d'une interface HD à une interface 16 couleurs. Mais il s'agit là d'une version beta, Microsoft laissera peut-être le choix d'interface dans la version définitive, enfin espérons le.
D'abord Windows 8, puis Visual Studio 11, Microsoft cherche décidément à revoir l'interface de ses produits.Au-delà de ça. Visual Studio 11 apporte tout de même pas mal de nouveautés, notamment l'explorateur de solution qui affiche bien plus d'informations et le contenu sélectionné sous forme de Preview (ce qui évitera d'ouvrir un grand nombre de fichiers dans l'éditeur tout en permettant une navigation fluide).

Voici les éléments mis en avant par Microsoft pour cette nouvelle version :
  • Les nouveaux éditeurs HTML et CSS étendent les capacités d'édition riches en fonctionnalités de Visual Studio, afin de rendre le développement sur HTML 5 et CSS 3 plus productif et d'enrichir le développement d'applications HTML traditionnelles.
  • Visual Studio 11 vous fournit les outils nécessaires à la création et au déploiement d'applications Windows Azure, y compris des modèles de projets, une expérience de débogage sans faille et des outils qui facilitent la publication.
  • De nouveaux modèles de projets rendent la création d'applications Windows 8 Metro et d'applications de Bureau Windows traditionnelles plus facile et plus rapide que jamais.
Pour plus d'informations, je recommande le blog de Loïc Baumann, MVP Microsoft travaillant pour Sogeti :
Visual Studio 11 - Premières impressions
Visual Studio 11 - Du nouveau pour les workspace (partie 1)
Visual Studio 11 - Du nouveau pour les workspace (partie 2)

Windows 8 : Vers une nouvelle interface


Microsoft développe actuellement son nouveau système d'exploitation, connu sous Windows 8.
Il est dès à présent possible de tester ce nouveau système à travers une version de Beta test : Windows 8 Consumer Preview.
Windows 8 est un système d'exploitation intégrant deux environnements. L'un est adapté aux écrans tactiles, l'autre aux PC traditionnels.

L'interface Metro
Les possesseurs de Xbox 360, voire de Windows Phone, ne seront pas dépaysés par la nouvelle interface de Windows 8 basée sur des tuiles de couleurs (voir image).
Outre cet écran d'accueil, l'interface entière a été revue. Microsoft risque donc gros en proposant une interface de nouvelle génération, inconnue des utilisateurs actuels de PC. Quant au slogan de cette nouvelle version "a new beginning...", reste à voir s'il s'agit du commencement de la fin ou non...
Dans tous les cas, Microsoft cherche à faire un bon en avant en terme d'innovation.


SQL Server Integration Services 2012


SQL Server Integration Services (SSIS) est la solution ETL de Microsoft. Il s'agit d'un outil permettant d'effectuer des synchronisations massives d'informations d'une base de données vers une autre. La version 2012 apporte plusieurs améliorations, notamment l'apparition de la source ODBC (OLE DB ne va bientôt plus être supporté).

Développement
Outre quelques nouveaux composants, les évolutions concernent surtout le design et l'ajout de fonctionnalités améliorant le confort des développeurs. Au niveau de l'interface, on remarquera par exemple :
fig. 1
fig. 2


fig. 3
fig. 4
  • La possibilité de zoomer/dézoomer dans les flux [fig. 1] ;
  • Un nouveau design de la plupart des éléments ;
  • L'ajout de raccourcis vers la boîte à outils et vers le panneau de variables [fig. 2] ;
  • Un nouvel agencement dans la boîte à outils, avec l'apparition d'une catégorie « favoris » [fig. 3].
Microsoft a également pensé à régler un énorme manque des versions précédentes : la fonctionnalité de retour arrière Ctrl-Z pour annuler la dernière action et un vrai copier/coller d'éléments (un collage au bon endroit et contenant l'ensemble des variables et connexions associées).
Concernant les tâches du flux de contrôle, on peut découvrir :
  • La tâche d'expression qui évalue une expression lors de l'exécution,
  • La tâche de control CDC pour configurer les CDC (Change Data Capture).
    Pour rappel, les CDC permettent de créer des tables de delta entre deux intégrations, très utiles lorsque l'on fait du chargement incrémental.
Au niveau des flux de données, voici quelques nouveautés :
  • Il est possible de faire des regroupements d'éléments [fig 4] ;
  • Des nouvelles fonctions sont disponibles dans les expressions : LEFT, TOKEN, TOKENCOUNT, REPLACENULL ;
  • Des nouveaux composants ont été ajouté pour utiliser les CDC : « CDC Source » et « CDC Splitter » ;
  • Il est possible de faire un débogage dans un composant de Script.
Mais la nouvelle fonctionnalité qui, à mon avis, est la plus intéressante, c'est le composant « Nettoyage DQS » qui permet d'appliquer des règles provenant de l'outil Data Quality Services. Une fonctionnalité qui permettra de dissocier la gestion de la qualité des données et le développement de flux d'intégration, qui sont des métiers différents.

Déploiement
En plus du mode « Legacy » habituel permettant de livrer les packages de manière indépendante, il est désormais possible de déployer un groupe de packages en mode projet. Ce nouveau mode permet de définir des métadonnées (chaînes de connexion par exemple) et des environnements (collection de variable permettant de configurer les packages) pour un projet, et donc pour un groupe de packages. On peut également féliciter l'apparition d'une base de données spécifique à SSIS : "SSISDB", et la possibilité d'installer SSIS sur plusieurs instances d'un même serveur. Les DBA seront donc ravi de découvrir un mode de déploiement bien plus rapide, simplifié et flexible.

Pour conclure, Microsoft n'a pas cherché la révolution technologique avec cette nouvelle version d'SSIS, mais plutôt l'amélioration du confort et de la productivité des développeurs et DBA.