IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

SQL Server 2005 Integration Services et XML


précédentsommairesuivant

Introduction

Très souvent, les fichiers XML sont utilisés à des fins de stockage de données de par leur portabilité au sein d'un système d'information et de la facilité de leurs utilisations. SSIS permet d'intégrer facilement le contenu de fichiers XML dans une base de données. Notre objectif est d'intégrer les données de notre fichier XML dans notre base de données via SSIS. Pour cela, nous nous baserons sur un exemple simple afin d'en comprendre les principales étapes.

Dans ce tutoriel, nous aborderons la création de projets BI avec SQL Server 2005, la création et configuration des sources de données ainsi que la création et configuration des destinations de données. De même, nous aborderons des opérations applicables à des fichiers XML, en particulier en amont d'un import de ceux-ci.

Dans un premier temps, nous présenterons notre exemple à savoir le fichier XML que nous allons intégrer ainsi que la destination de nos données à savoir la table proprement dite. Puis dans un second temps, nous verrons l'injection des données issues du XML dans notre base de données via SSIS. Enfin, nous allons découvrir les opérations de Merge et Diff pour différence de fichiers XML via une XML Task.

I. Présentation de notre exemple

Prérequis : d'un point de vue logiciel, vous devez disposer de Microsoft Visual Studio 2005 et Microsoft SQL Server 2005 au minimum (en dehors des versions Express qui ne prennent pas en charge SSIS). D'un point de vue connaissance, si vous n'êtes pas familiarisés avec SSIS, je vous conseille de lire ce tutoriel :

Présentation de SQL Server Intgération Services : SSIS, car nous ne reviendrons pas sur toutes les bases de l'outil.

Avant d'importer des données, il faut bien que notre fichier XML en contienne. Ci-dessous, notre petit exemple de produits que nous allons importer :

Liste de produits
Sélectionnez
<produits>
    <produit>
        <libelle>Brosse à dents</libelle>
        <nb>1</nb>
        <prix>2</prix>
    </produit>
    <produit>
        <libelle>lessive</libelle>
        <nb>2</nb>
        <prix>16</prix>
    </produit>
    <produit>
        <libelle>Mouchoirs</libelle>
        <nb>10</nb>
        <prix>3</prix>
    </produit>
    <produit>
        <libelle>bonbons</libelle>
        <nb>2</nb>
        <prix>5,99</prix>
    </produit>
    <produit>
        <libelle>fruits</libelle>
        <nb>5</nb>
        <prix>1</prix>
    </produit>
</produits>

Ce sont donc ces données ci-dessus que nous allons importer. De même, avant d'importer, il faut que notre destination de données existe. En l'occurrence, ci-dessous le script SQL permettant de créer notre table. Bien évidemment, il faut que notre base de données existe.

Table de produits
Sélectionnez
USE [ssis-xml]
GO
/****** Object:  Table [dbo].[Produits]    Script Date: 03/14/2009 18:21:46 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Produits](
    [Nom] [nvarchar](50) NULL,
    [quantite] [int] NULL,
    [Tarif] [float] NULL
) ON [PRIMARY]

précédentsommairesuivant

Copyright © 2011 Fleur-Anne BLAIN. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts. Droits de diffusion permanents accordés à Developpez LLC.