IBM Books

Extension XML Administration et programmation

dxxInsertXML()

Objectif

Utilise deux paramètres d'entrée, le nom d'une collection XML activée et celui du document XML à décomposer. Renvoie deux paramètres de sortie, un code et un message retour.

dxxInsertXML(char(UDB_SIZE) collectionName,   /* input */
             CLOB(1M)       xmlobj,           /* input */
             long           returnCode,       /* output */
             varchar(1024)  returnMsg)        /* output */

Paramètres

Tableau 49. Paramètres dxxInsertXML()
Paramètre Description Paramètre IN/OUT
collectionName Nom d'une collection XML activée. IN
xmlobj Objet document XML de type CLOB. IN
returnCode Code retour renvoyé par la procédure mémorisée. OUT
returnMsg Message renvoyé en cas d'erreur. OUT

Exemples

Dans l'exemple ci-après, vous appelez la procédure dxxInsertXML() qui décompose le document XML d'entrée e:\xml\order1.xml, puis insère les données dans les tables de la collection SALES_ORDER, en fonction du mappage indiqué dans le fichier DAD utilisé pour l'activation de la collection.

#include "dxx.h"
#include "dxxrc.h"
 
EXEC SQL INCLUDE SQLCA;
 
EXEC SQL BEGIN DECLARE SECTION;
              char                  collection[64];  /* name of an XML collection */
              SQL TYPE is CLOB_FILE xmlDoc;          /* input XML document */
              long                  returnCode;      /* error code */
              char                  returnMsg[1024]; /* error message text */
              short                 collection_ind;
              short                 xmlDoc_ind;
              short                 returnCode_ind;
              short                 returnMsg_ind;
  EXEC SQL END DECLARE SECTION;
              
              /* initialize host variable and indicators */
              strcpy(collection,"sales_ord")
              strcpy(xmlobj.name,"c:\dxx\samples\cmd\getstart.xml ");
              xmlobj.name_length=strlen("c:\dxx\samples\cmd\getstart.xml ");
              xmlobj.file_option=SQL_FILE_READ;
              returnCode = 0;
              returnMsg[0] = '\0';
              collection_ind = 0;
              xmlobj_ind = 0;
              returnCode_ind = -1;
              returnMsg_ind = -1;
 
              /* Call the store procedure */
              EXEC SQL CALL db2xml!dxxInsertXML(:collection:collection_ind;
                              :xmlobj:xmlobj_ind,
                              :returnCode:returnCode_ind,:returnMsg:returnMsg_ind); 


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