> Data > XML et SQL SERVER

XML et SQL SERVER

Data - Par Renaud ROSSET - Publié le 24 juin 2010
email

Les informations échangées entre les différents systèmes, les différentes applications le sont de plus en plus auSQL Server, se sont adaptées. En effet, SQL Server à, entre autre, pour objectif de faciliter le travail avec les données. Pour cela, SQL Server dispose d'un ensemble d'instructions pour extraire des informations relationnelles au format XML ou bien l'opération inverse qui consiste à lire des données au format XML afin de stocker les informations dans une structure relationnelle classique.

Ces 2 étapes sont nécessaires et permettent de confier au moteur de base de données la plupart des transformations depuis ou vers le format XML à SQL Server. Mais SQL Server propose plus en offrant la possibilité de créer des colonnes de type XML. En intégrant directement les informations XML dans la structure relationnelle classique, SQL Server offre plus de souplesse en terme de stockage. Ce type XML est bien plus qu'un simple champ texte car SQL Server rend possible l'indexation des colonnes de type XML mais également la mise à jour, l'ajout et la suppression de données dans le document XML lui-même.

Ce sont ces trois fonctionnalités (extraire les informations au format XML, importer des données XML, stocker des données au format XML) de SQL Server qui sont exposées ci-dessous.

XML et SQL SERVER

L’instruction SELECT dispose de l’option FOR XML qui permet de mettre au format XML les données issues de la requête. L’option FOR XML peut être utilisée dans les 4 modes suivants:

• RAW
• AUTO
• EXPLICIT
• PATH

– FOR XML RAW Avec cette option chaque ligne de résultat est un élément de type row (ligne) qui possède comme attribut les colonnes retournées par la requête. Voir Figure 1. Il est toutefois possible d’influer sur cette mise en forme par défaut en ajoutant la directive ELEMENTS (for xml raw,elements). Ainsi les valeurs issues des différentes colonnes ne sont elles plus présentées comme des attributs de la balise row mais plutôt comme la valeur de sous éléments de RAW. Voir Figure 2.

L’option TYPE permet quant à elle de récupérer les valeurs directement au format XML. Les données à ce format peuvent alors être enregistrées directement dans une colonne au format XML. Enfin, avec l’option XMLSCHEMA, il est possible de récupérer directement un fichier XSD de description de la structure des données au format XML.

– FOR XML AUTO Cette option est sans aucun doute la plus connue car c’est aussi la plus facile d’accès. Les données vont être retournées sur un ou plusieurs niveaux en respectant la hiérarchie des données. Cependant, dans le cas où la structure est complexe, il est préférable d’utiliser l’option EXPLICIT. Cependant, pour des requêtes simples le résultat est très pratique. Voir Figures 3 et 4.

Téléchargez cette ressource

Cybersécurité des collectivités : Enjeux, Perspectives & Solutions

Cybersécurité des collectivités : Enjeux, Perspectives & Solutions

Villes, intercommunalités, métropoles, départements et régions sont particulièrement exposés aux risques de cybersécurité. Ce livre blanc Stormshield présente les défis cyber que rencontrent les collectivités, les solutions et perspectives pour qu’elles puissent assurer leur mission d’utilité publique, en toute sécurité.

Data - Par Renaud ROSSET - Publié le 24 juin 2010