Bonjour,

Je reçois une liste en XML à placer en base.

bref je ne maitrise pas les sources et certaines ont les noeuds en majuscule et d'autres en minuscule
voilà le type de noeuds

Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
<SMS>
  <ID2>48c40c58-8eef-11e6-b3c7-1231420104ed</ID2>
  <TEL>xxxxxx</TEL>
  <MSG>Le message</MSG>
</SMS>
<SMS>
  <ID2>56c40c58-8eef-11e6-b3c7-1231420104aa</ID2>
  <TEL>xxxxxx</TEL>
  <MSG>Le message</MSG>
</SMS>


aujourd'hui je fais comme ça.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
	select
		t.x.value('ID2[1]','varchar(50)') as ID2,
		t.x.value('TEL[1]','varchar(50)') as TEL,
		t.x.value('MSG[1]','varchar(max)') as MSG
	from @INFOS_XML.nodes('/SMS') t(x)

mais comme on peut le voir je suis obligé de préciser mes noeuds en MAJ
j'ai essayé en minuscule comme ça par exemple t.x.value('id2[1]','varchar(50)') as ID2mais du coup il retrouve rien bien évidemment, comment faire pour ne pas tenir compte de la casse sur les noeuds ?

je ne peux pas passer tout le flux en min ou maj car la casse du message ou de l'id ne doit pas être perdue.

Merci de vos idées.
cH.