IBM Books

Extension XML Administration et programmation

dxxShredXML()

Objectif

La procédure mémorisée dxxShredXML() est appariée à la procédure mémorisée dxxGenXML(). Pour que dxxShredXML() puisse s'exécuter, le fichier DAD doit indiquer des tables existantes, ainsi que des colonnes et des types de données cohérents avec celles-ci. Pour la procédure mémorisée dxxShredXML(), la relation clé primaire - clé associée entre les tables de jointure, créée par l'Extension XML lors de l'activation de la collection, n'est pas nécessaire. Cependant, les colonnes de condition de jointure indiquées dans le noeud RDB du noeud d'élément racine doivent exister dans les tables.

dxxShredXML(CLOB(100K)    DAD,            /* input */
             CLOB(1M)       xmlobj,           /* input */
             long           returnCode,       /* output */
             varchar(1024)  returnMsg)        /* output */

Paramètres

Tableau 48. Paramètres dxxShredXML()
Paramètre Description Paramètre IN/OUT
DAD Objet CLOB contenant le fichier DAD. IN
xmlobj Objet document XML de type XMLCLOB. IN
returnCode Code retour renvoyé par la procédure mémorisée. OUT
returnMsg Message renvoyé en cas d'erreur. OUT

Exemples

Voici un exemple d'appel de la procédure dxxShredXML().

#include "dxx.h"
#include "dxxrc.h"
 
EXEC SQL INCLUDE SQLCA;
 
EXEC SQL BEGIN DECLARE SECTION;
              SQL TYPE is CLOB dad;           /* DAD*/
              SQL TYPE is CLOB_FILE  dadFile; /* DAD file*/
              SQL TYPE is CLOB xmlDoc;        /* input XML document */
              SQL TYPE is CLOB_FILE xmlFile;  /* input XMLfile */
              long                  returnCode;      /* error code */
              char                  returnMsg[1024]; /* error message text */
              short       dad_ind;
              short                 xmlDoc_ind;
              short                 returnCode_ind;
              short                 returnMsg_ind;
  EXEC SQL END DECLARE SECTION;
 
              /* initialize host variable and indicators */
              strcpy(dadFile.name,"c:\dxx\samples\dad\getstart_xcollection.dad");
              dadFile.name_length=strlen("c:\dxx\samples\dad\getstart_xcollection.dad");
              dadFile.file_option=SQL_FILE_READ;
              strcpy(xmlFile.name,"c:\dxx\samples\cmd\getstart.xml ");
              xmlFile.name_length=strlen("c:\dxx\samples\cmd\getstart.xml ");
              xmlFile.file_option=SQL_FILE_READ;
              SQL EXEC VALUES (:dadFile) INTO :dad;
              SQL EXEC VALUES (:xmlFile) INTO :xmlDoc;
              returnCode = 0;
              returnMsg[0] = '\0';
              dad_ind = 0;
              xmlDoc_ind = 0;
              returnCode_ind = -1;
              returnMsg_ind = -1;
 
              /* Call the store procedure */
              EXEC SQL CALL db2xml!dxxShredXML(:dad:dad_ind;
                              :xmlDoc:xmlDoc_ind,
                              :returnCode:returnCode_ind,:returnMsg:returnMsg_ind); 


[ Début de page | Page précédente | Page suivante | Table des matières | Index ]