sql >> Base de Datos >  >> RDS >> Sqlserver

servidor sql 2008 archivo xml a tabla

Estás ignorando el espacio de nombres XML que está definido en el elemento raíz:

<xml_objects xmlns="http://www.blank.info/ns/2002/ewobjects">
             ***********************************************

Debe agregar esto a su consulta:

;WITH XMLNAMESPACES(DEFAULT 'http://www.blank.info/ns/2002/ewobjects')
SELECT 
     xmldata.value('(@item_id)', 'NCHAR') AS item_id       
FROM 
    (SELECT CAST(x AS XML)
     FROM OPENROWSET(BULK 'C:\xmlfile.xml',
     SINGLE_BLOB) AS T(x)) AS T(x)
CROSS APPLY 
     x.nodes('//xml_objects/item_id') AS X(xmldata);