Bonjour
Il y a avait plusieurs erreurs voici le script corrigé :
DECLARE @xml xml
SET @xml='<x>mon Zolie xml</x>'
DECLARE @i INT
DECLARE @query VARCHAR(8000)
EXEC sp_xml_preparedocument @i OUTPUT, @xml
BEGIN TRANSACTION
set @query = 'SELECT * FROM OPENXML ('+ convert( VARCHAR(4000), @i ) +', ''/TABLE/ATTRIBUTES'', 0) WITH (MaTable)'
EXEC sp_xml_removedocument @i
COMMIT
Le contenu de XML n'était pas du XML de plus un BEGIN TRANSACTION est toujours suivit plus loin de COMMIT et pas de END.
Cordialement