
Chapter 6 Echange de données avec des bases de données qui prennent en charge XML
Génération de requêtes SQL/XML
SQL/XML est une extension XML du langage SQL (Structured Query Language). Avec SQL/XML, vous extrayez des données relationnelles en utilisant une syntaxe SQL étendue et produisez un résultat en utilisant un format XML. Les cinq fonctions principales de SQL/XML sont les suivantes :
- XMLELEMENT : permet d'éditer un élément avec un nom, une liste d'attributs (facultative) et une liste de valeurs (facultative)
- XMLATTRIBUTES : pour éditer une liste d'attributs avec des noms et des valeurs
- XMLAGG : pour éditer sur plusieurs lignes une concaténation d'éléments, depuis une seule valeur XML correspondant à une seule colonne
- XMLCONCAT : pour éditer sur une même ligne une concaténation d'éléments, depuis plusieurs valeurs XML correspondant à plusieurs colonnes
- XMLFOREST : pour éditer sur une même ligne une concaténation d'éléments, depuis plusieurs valeurs SQL correspondant à plusieurs colonnes. Le nom et la valeur d'une colonne devient le nom et la valeur d'un élément
Un modèle XML permet de générer des requêtes SQL/XML pour des éléments globaux, quel que soit le langage XML cible (XSD, DTD ou XDR). Vous devez commencer par établir une correspondance entre un modèle XML et un MPD, puis attacher la définition étendue de modèle SQL/XML au modèle XML mis en correspondance.
Le meilleur moyen pour mettre en correspondance un modèle XML et un MPD consiste à utiliser l'Assistant Générateur XML à partir d'un MPD. Le modèle XML généré est automatiquement mis en correspondance avec le MPD et lié à la définition étendue de modèle SQL/XML. Si nécessaire, vous pouvez modifier cette correspondance via l'onglet Correspondance des feuilles de propriétés d'éléments et de types complexes.
Pour plus d'informations sur l'Assistant Générateur XML, reportez-vous à la section "Génération d'un modèle XML via l'Assistant Générateur XML", dans le chapitre "Génération d'autres modèles à partir d'un MPD" du manuel Guide de l'utilisateur du Modèle Physique de Données
.
Pour plus d'informations sur la génération d'une requête SQL/XML à partir d'un MPD, reportez-vous à la section "Génération de requêtes SQL/XML", dans le chapitre "Génération d'autres modèles à partir d'un MPD", dans la manuel Guide de l'utilisateur du Modèle Physique de Données
.
Les requêtes SQL/XML générées ne peuvent pas être paramétrées.
WARNING! Attention
La procédure suivante suppose que vous avez ouvert un modèle XML dans l'espace de travail et que vous l'avez mis en correspondance avec un MPD.
Pour générer des requêtes SQL/XML :
- <Si la définition étendue de modèle SQL/XML est déjà attachée au modèle XML, passez directement à l'étape 6> Sélectionnez Modèle→Définitions étendues de modèle.
La boîte de dialogue Liste des définitions étendues de modèle s'affiche.
- Cliquez sur le bouton Importer une définition étendue de modèle.
La boîte de dialogue Sélection des définitions étendues de modèle s'affiche.
- Dans l'onglet Général, sélectionnez SQL/XML.
- Cliquez sur OK.
SQL/XML apparaît dans la boîte de dialogue Liste des définitions étendues de modèle.
- Cliquez sur OK.
La définition étendue de modèle SQL/XML apparaît dans l'arborescence de l'Explorateur d'objets, attachée au modèle.
- <facultatif> Double-cliquez sur un élément global dans le diagramme pour afficher sa feuille de propriétés.
- Dans l'onglet Aperçu, cliquez sur le sous-onglet SQL/XML.Query pour afficher la requête SQL/XML.
L'onglet Aperçu est en lecture seule, vous ne pouvez pas modifier le script.
- Cliquez sur OK.
- Sélectionnez Outils→Génération étendue.
La boîte de dialogue Génération s'affiche avec SQL/XML sélectionné dans l'onglet Cibles.
- Cliquez sur le bouton Sélectionner un chemin en regard de la zone Répertoire pour sélectionner un chemin d'accès pour les requêtes SQL/XML.
- Dans l'onglet Sélection, sélectionnez les éléments globaux pour lesquels vous voulez générer une requête SQL/XML. (L'exemple ne comporte qu'un seul élément)
- Cliquez sur OK.
La boîte de dialogue Résultats s'affiche avec un chemin pour chaque requête SQL/XML sélectionné (une seule dans l'exemple).
- Sélectionnez le chemin d'une requête SQL/XML, puis cliquez sur Editer.
La requête SQL/XML est affichée dans la fenêtre de l'éditeur. (extrait)
- Répétez l'étape 13 pour éditer une autre requête SQL/XML.
ou
Cliquez sur Fermer dans la boîte de dialogue Résultats.
Une fois générées, les requêtes SQL/XML sont traitées par les interpréteurs SQL dans des bases de données qui prennent en charge XML.
Copyright (C) 2007. Sybase Inc. All rights reserved.
|
|