代码如下:
declare @intDoc int --保存加载文档的句柄
declare @xmlContent varchar(max) --将要加载的xml内容
print(len(@xmlContent))
set @xmlContent='<persons><person name="luisan" sex="man" address="shannxibaoji"></person><person name="luisan" sex="man" address="shannxibaoji"></person><person name="luisan" sex="man" address="shannxibaoji"></person><person name="wanghong" sex="man" address="shannxibaoji"></person><person name="wanghong" sex="man" address="shannxibaoji"></person></persons>'
print(@xmlContent)
exec sp_xml_preparedocument @intDoc output,@xmlContent --将xml的内容加载到内存中
select * from
openxml(@intDoc,'persons/person')
with([name] varchar(10) '@name',[sex] char(3) '@sex',[address] char(20) '@address')--这块with貌似是将结果集重新整合成一个新表展示??
exec sp_xml_removedocument @intDoc --将处理过得xml从内存中删除
相关分类