1.需要读取的XML 格式:
1 23 4 109803009000 5 <商品中文名> 其他定制型软件 商品中文名> 6 <海关监管条件 /> 7 <检验检疫类别 /> 8 <版本号 /> 911 179803003000 12 <商品中文名> 定制型应用软件 商品中文名>13 <海关监管条件 />14 <检验检疫类别 />15 <版本号 />1618 242922399020 19 <商品中文名> 灭藻醌 商品中文名>20 <海关监管条件 />21 <检验检疫类别 />22 <版本号 />23
2.SQL 代码
IF OBJECT_ID('XML_HSData') IS NULL BEGIN CREATE TABLE XML_HSData ( HS编码 NVARCHAR(50) , 商品中文名 NVARCHAR(100) , 海关监管条件 NVARCHAR(20) , 检验检疫类别 NVARCHAR(30) , 版本号 NVARCHAR(10) ) ENDELSE BEGIN TRUNCATE TABLE XML_HSData ENDDECLARE @h INT -- 定义xml句柄DECLARE @doc XML -- 定义xml对象SELECT @doc = BulkColumnFROM OPENROWSET(BULK 'C:\hsData.xml', SINGLE_BLOB) AS xmlData -- 获得xml对象EXECUTE sp_xml_preparedocument @h OUTPUT, @doc -- 获得xml句柄-- 插入表中INSERT INTO XML_HSData SELECT * FROM OPENXML(@h, '/DocumentElement/hsData', 2) WITH XML_HSDataEXECUTE sp_xml_removedocument @h -- 删除xml句柄SELECT * FROM XML_HSData
3. 效果: