Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

SQL Server Katmai : SQL Server 2008 est son nom… Téléchargez la Beta !!!

 

Le prochain SQL Server venant d'être annoncé, voici que son nom est dévoilé. Ce sera :

SQL Server 2008

Vous pouvez aussi dès à présent télécharger cette version en beta dans sa CTP de juin, à l'adresse suivante : http://connect.microsoft.com/sqlserver

A noter que contrairement aux versions précédentes de SQL Server, les fonctionnalités s'ajouteront au fur et à mesure des CTP, qui devraient être disponibles tous les 2 mois environ. La volonté de Microsoft étant clairement de ne mettre dans une version que les fonctionnalités testées suffisamment et de rendre indépendantes les sorties des versions et le développement des fonctionnalités.

Quels sont donc les apports de cette version, cette liste va très certainement grossir comme indiqué plus haut. Voici quelques unes des choses que vous trouverez dans cette CTP.

Nouveaux types

Nouveaux types de date : datetime2, date, time et datetimeoffset permettant d'une part un découpage plus précis entre la date seule et l'heure seul, une plus grande précision (datetime2) dans ces mêmes types, et l'ajout du support du fuseau (datetimeoffset).

Les fonctions de traitement de date se retrouvent dotées, elles aussi, de nouveautés tel que le support de l'extraction date ISO et du fuseau horaire.

Clause MERGE

Support de la clause MERGE tel que définie par le standard ISO SQL, une telle clause permet d'effectuer une mise à jour conditionnelle. En fait on se trouve à pouvoir exécuter en une clause un DELETE, INSERT, UPDATE en fonction de la présence ou non d'un enregistrement et avec d'autres critères.

MERGE MaTable T1
    USING MaTable2 T2
    ON T1.Id = T2.Id
    WHEN MATCHED THEN
        UPDATE SET ChampA += ChampB
    WHEN NOT MATCHED THEN
        INSERT VALUES (ChampC, ChampD);

Ici on fait soit une mise à jour soit une insertion de valeur dans la table de destination (MaTable) en fonction de l'existence d'un enregistrement ayant le même ID.

Cette syntaxe permet de faciliter énormément les opérations de synchronisation de données.

Declarative Management Framework

C'est une avancé vers le modèle de gestion des serveurs chez Microsoft ce qui va permettre d'appliquer des règles au niveau d'un ou de plusieurs serveurs de base de données. Ces règles peuvent être obligatoires ou non, on est vraiment dans une optique à la GPO (Group Policy Objects) de Windows.

Ces règles sont applicables au niveau serveur, bases de données et même à des niveaux plus fins.

A terme l'ensemble de la plateforme serveur de Microsoft sera doté de telle fonctionnalité et tout cela est regroupé non seulement dans un Framework commun, mais est aussi définie dans un langage commun (SML).

Change Data Capture

Permet l'accès au données modifiées de tables, on pourra en SQL ou par le biais du client suivre de manière asynchrone (contrairement à des triggers) les modifications effectuées sur les données d'une ou plusieurs tables.

Très pratique pour éviter l'usage des triggers et permettra facilement l'accès à un historique des données.

Paramètres de type table

Autre demande d'amélioration demandée depuis très longtemps, le passage d'argument de type table à une procédure stockée ou une fonction.

CREATE TYPE monType
AS table (a int, b varchar(100))

CREATE PROC maProc (@liste monType READONLY) AS
INSERT
MaTable SELECT * FROM @liste

Cela ce fait en utilisant un type personnalisé SQL que l'on reprend dans la déclaration de la procédure. Remarquez le READONLY obligatoire derrière le paramètre.

Améliorations du langage

Quelques ajouts de syntaxes très pratiques dans SQL Server, pour les déclarations, les incréments, etc.

      DECLARE @var int =
      
SET @var += 1

Je sais c'est sorti dans VB 7 et c'est depuis des siècles dans les autres langages, mais en Transact-SQL çà va faire du bien.

Par ailleurs la clause INSERT se pare d'un passage par valeur multiple lui aussi très pratique (cela devrait réduire de plus de 50% les scripts SQL d'imports de données générés par DB PRO par exemple).

      INSERT MaTable (ChampA, ChampB
      
VALUES (1,2), (2,3), (3,4)

Voilà qui va limiter le Ctrl+C / Ctrl+V des claviers des DBA :o)

GROUPING SETS

On a ici l'ajout du support d'une syntaxe du SQL ISO, permettant d'avoir plusieurs niveau de regroupement dans le GROUP BY, on simule une sorte de sous total (le comportement est quasiment similaire à CUBE et ROLLUP).

SELECT    D.Annee, D.Trimestre, T.Pays,
        , SUM(F.MontantVente) AS MontantVente
FROM    dbo.FaitsVentes F     
        INNER JOIN dbo.DimDate D ON F.DateId = D.DateId
        INNER JOIN dbo.DimGeo T ON
            F.GeoId = T.GeoId
WHERE    D.Annee IN (2006, 2007)    
GROUP BY GROUPING SETS ((Annee, Trimestre, Pays)
        , (Annee, Trimestre)
        , (Pays)
        , () )
ORDER BY Annee, Trimestre, Pays

Et encore d'autres à découvrir dans cette CTP et plus encore dans les suivantes…

Bon téléchargement…

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Publié lundi 4 juin 2007 14:30 par christian

Commentaires

lundi 4 juin 2007 14:33 by christian

# re: SQL Server Katmai : SQL Server 2008 est son nom… Téléchargez la Beta !!!

Attendez quelques minutes pour le téléchargement... :o)

lundi 4 juin 2007 14:36 by Matthieu MEZIL

# re: SQL Server Katmai : SQL Server 2008 est son nom… Téléchargez la Beta !!!

Ha ha j'avais raison. (http://blogs.developpeur.org/christian/archive/2007/06/02/rendez-vous-ici-m-me-lundi-14h30.aspx).

Plus sérieusement, est-ce que la MinDate / MaxDate se calle sur celle de dotnet ou toujours pas ?

lundi 4 juin 2007 16:15 by christian

# re: SQL Server Katmai : SQL Server 2008 est son nom… Téléchargez la Beta !!!

Pour ce qui du datetime et smalldatime : non pour ne pas rombre la compatibilité... Pour les nouveaux type normalement oui !

lundi 4 juin 2007 17:25 by christian

# re: SQL Server Katmai : SQL Server 2008 est son nom… Téléchargez la Beta !!!

Le téléchargement est possible il faut préalablement remplir le questionnaire de la beta pour pouvoir y participer... Le téléchargement des fichiers readme et de la doc en ligne sont quant à eux libres.

Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- [Perso] Découvertes estivales : Linux (Part I) par Le blog de FremyCompany le il y a 1 heure et 59 minutes

- [Refactoring] ReSharper pour Visual Studio 2010 (Preview) par Thomas Jaskula le il y a 16 heures et 36 minutes

- [Refactoring] Analyser vos exceptions avec ReSharper Exceptional par Thomas Jaskula le il y a 17 heures et 50 minutes

- SharePoint 2007 : patterns & practices SharePoint Guidance par Philippe Sentenac [MVP SharePoint] le 07-03-2009, 09:56

- [Visual Studio 2010] Les tests cases c’est bien, mais je vais devoir tout réécrire ? par Etienne Margraff le 07-03-2009, 09:00

- MVP[Gribouillon].AddYear par The Grib's Lair [Sébastien PICAMELOT - MVP SharePoint] le 07-03-2009, 08:45

- Clinique INSIA - Projet de fin d’Etudes (Silverlight 3 MVVM et OutOfBrowser, WCF, TFS) - Part 1 par David REI le 07-02-2009, 23:38

- C’est la crise ? Bah pourquoi cramer du budget pub alors ? par Nix's Blog le 07-02-2009, 15:31

- Soyons MVP ! par TheSaib .NET blog le 07-02-2009, 12:15

- SharePoint : Gestion des Erreurs 6398, 7076 et 6482 par Blog Technique de Romelard Fabrice le 07-02-2009, 11:53