Skip to main content
Announcements
Global Transformation Awards submissions are open! SUBMIT YOUR STORY
cancel
Showing results for 
Search instead for 
Did you mean: 
Sylv
Contributor II
Contributor II

Extraire fichier XML de champ de table MsSQL

Bonjour à tous,

 

Je sollicite votre aide afin de savoir comment extraire des milliers de fichiers XML (de structure différentes) contenus dans des champs d'une des mes tables Ms SQL. Je sais le faire manuellement pour un, mais j'aimerai savoir s'il est possible de le faire de manière automatique, c'est à dire sans renseigner le XPath à chaque fois ce qui dans mon cas serait impossible du fait des milliers de différentes structures XML dont je dispose.

 

Merci à tous par avance pour votre aide

Labels (4)
4 Replies
Shicong_Hong
Support
Support

Hi

It is impossible to read XML files with different structures, tFileInputXML and tExtractXMLFields components don't support dynamic schema. 

Regards

Shicong

Sylv
Contributor II
Contributor II
Author

Thank you for your answer, an alternative solution could be extract each schema XML and after that, import XML files created. However, I have some issues with this solution, I am not able to create for each row of my variable named "formulaire_nom", a file containing the schema XML which is in my variable "formulaire_schema". How can I do that ?

Thanks in advance

Shicong_Hong
Support
Support

@Sylv sorry, i don't understand what you are trying to do about your solution. Maybe you need to  explain it in more details. To me, without schema and loop xpath, tFileInputXML and tExtractXMLFields components don't know what data to be extracted.

 

 

Sylv
Contributor II
Contributor II
Author

Je veux automatiser la détection de mes schéma XML contenu dans le champ "formulaire_schema" de ma table MsSQL formulaire.  

J'ai bien compris qu'il n'était pas possible de le faire directement.

Comme solution alternative je propose donc de :

1 - Extraire pour chaque valeur "formulaire_schema", le champ dans un fichier xml en tant que texte (le fichier sera donc à plat) à l'aide de tFileOutputDelimited

2 - Importer ce fichier sur Talend pour récupérer le schéma XML qui sera détecter automatiquement par Talend lors de l'import tFileInputXML

J'ai réussi à le faire pour une valeur de mon champ "formulaire_schema", mais maintenant j'aimerai faire une boucle pour que ça le fasse automatiquement sur l'ensemble des valeurs de mon champ "formulaire_schema". À noter que je peux boucler sur le champ "formulaire_nom" de ma table, qui est le nom du schéma XML contenu dans "formulaire_schema".

Merci encore pour votre aide