Bonjour,
J'ai dans ma BDD un champs dont le contenu est en XML.
Si je fais une requete de ce type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
DECLARE @idoc int
DECLARE @doc varchar(1000)
SET @doc =(select TOP 1 monchamps
from mabaseJ
where monchamps like '%060606%')
-- Create an internal representation of the XML document.
EXEC sp_xml_preparedocument @idoc OUTPUT, @doc
-- Execute a SELECT stmt using OPENXML rowset provider.
SELECT *
FROM OPENXML (@idoc, '/document/formulaire/champs',2)
      WITH (nom varchar(10) '@nom',
            comment ntext 'text()')
Cette requete fonctionne mais je ne peux récupérer qu'une seule ligne. Si je mets TOP 2 j'ai une erreur m'indiquant qu'une sous-requete ne peut avoir qu'un seul résultat.

Connaissez-vous la syntaxe pour récupérer l'intégralité des lignes de mon champs xml ?
L'idéal serait de récupérer ces infos pour les traiter en php derrière. Mais peut-être serait-il plus simple de récupérer directement le champs en xml et le retraiter derrière ?

Mon champ en xml :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
<document><formulaire><champs nom="libelle">060606</champs><champs nom="objet">invitation</champs><champs nom="Nom">M. Dupont</champs></formulaire></document>