> Data > SQL 2008 : nouveaux types de données

SQL 2008 : nouveaux types de données

Data - Par Jérôme Gabillaud - Publié le 24 juin 2010
email

SQL Server 2008 propose donc une gestion optimisée de ces éléments avec les types: goemetry, geography et filestream. Mais ce n'est pas la seule évolution proposée par SQL Server 2008 au niveau des données. En effet, SQL Server 2008 propose une gestion plus fine des données de type date et heure en proposant différents types de données. SQL Server 2008 offre également la possibilité de gérer correctement les données hiérarchiques par l'intermédiaire du type hierarchyid et les différentesméthodes associées.

Mais avant de commencer à présenter ces différents points, il est important, de souligner, que lorsque vous écrivez du code Transact SQL depuis SQL Server Management Studio (SSMS) le complément automatique du code est maintenant actif. L'avantage est double car il évite les erreurs de saisie et permet également d'écrire plus rapidement le code. Il n'y a maintenant plus de doute possible quant à l'orthographe exacte d'une variable ou bien le nom d'une méthode.

SQL 2008 : nouveaux types de données

La gestion des dates et des heures est un problème connu de la part de tous. Ce problème devient encore un peu plus complexe lorsqu’il s’agit de faire correspondre des dates pour des utilisateurs qui travaillent avec des créneaux horaire différents, ce qui est le cas pour nos voisins d’outre-manche.

D’un autre côté, il est parfois simplement nécessaire de stocker une information de type heure/minutes/ secondes alors que parfois il s’agit de stocker une information avec une précision limitée au jour. Pour palier à toutes ces problématiques, SQL Server 2008 introduit une nouvelle génération de type date et heure. Ce nouvel ensemble de type vient en complément du type datetime existant. Les types introduits par SQL Server 2008 sont:

• datetime2 qui offre plus de précision que le simple type datetime.
• date qui permet de stocker uniquement une date (jour, mois et année) et donc aucune information de type heures, minutes ou secondes.
• time qui permet de stocker des informations de type heures, minutes, secondes et fraction de secondes avec une précision de 100 nanosecondes.
• datetimeoffset qui permet de stocker une information date et heure ainsi que le décalage par rapport à l’heure GMT.

Les types date et time permettent d’optimiser le stockage mais également d’avoir des informations plus cohérentes et plus faciles à manipuler. Par exemple, il est plus facile de comparer 2 dates au format date que si elles sont définies au format datetime en effet le format datetime contient en plus les heures, minutes et secondes et donc la comparaison au niveau des jours nécessite un formatage préalable des données.

Le script suivant permet d’illustrer les différents types. Comme cet exemple est fait sur une version CTP de SQL Server il est normal que le résultat soit au format US.
declare @jour date= getdate();
declare @heure time=getdate();
declare @date datetime2=getdate();
select jour=@jour,heure=@heure,date=@date;
jour                  heure                           date
———-            —————-                —————————
2008-01-04    15:00:54.5500000    2008-01-04 15:00:54.5500000

Téléchargez gratuitement cette ressource

Microsoft 365 : Sauvegarde + Sécurité

Microsoft 365 : Sauvegarde + Sécurité

Découvrez dans ce Guide iTPro, les bonnes pratiques et solutions technologiques pour sauvegarder et sécuriser les données et les identités Microsoft Office 365. Ce nouveau guide pratique et opérationnel a été réalisé par les experts DIB France.

Data - Par Jérôme Gabillaud - Publié le 24 juin 2010