您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

SqlServer解析XML数据

bubuko 2022/1/25 19:36:37 sqlserver 字数 7684 阅读 758 来源 http://www.bubuko.com/infolist-5-1.html

1 --建表 2 create table xml_table(id int identity primary key, xmldata xml) 3 --插入数据 4 insert into xml_table(xmldata) values 5 ('<?xml version="1.0" enc ...
 1 --建表
 2 create table xml_table(id int identity primary key, xmldata xml)
 3 --插入数据
 4 insert into xml_table(xmldata) values 
 5 (<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 6     <REQUEST>
 7     <AKB020>00010102</AKB020>
 8     <MSGFMT>ZRHIS</MSGFMT>
 9     <REQUEST_SN>159800</REQUEST_SN>
10     <BAC060>ZRHIS03</BAC060>
11     <USERID></USERID>
12     <PASSWD></PASSWD>
13     <PARAM1></PARAM1>
14     <PARAM2></PARAM2>
15     <PARAM3></PARAM3>
16     <PARAM>
17         <CURRENT_PAGE>1</CURRENT_PAGE>
18         <PAGE_COUNT>30</PAGE_COUNT>
19         <ZKE283>1</ZKE283>
20     </PARAM>
21     </REQUEST>
22 )
23 --查询表
24 select * from xml_table
25 --查询BAC060值
26 select xmldata.query(/REQUEST), xmldata.query(/REQUEST/BAC060) from xml_table --这样只能查到含节点的内容
27 select xmldata.value((/REQUEST/BAC060)[1], nvarchar(120)) from xml_table--查询到ZRHIS03值 ZRHIS03
28 --查询PARAM节点内的PAGE_COUNT值
29 select xmldata.query(/REQUEST), xmldata.query(/REQUEST/PARAM/PAGE_COUNT) from xml_table --这样只能查到含节点的内容
30 select xmldata.value((/REQUEST/PARAM/PAGE_COUNT)[1], nvarchar(120)) from xml_table--查询到ZRHIS03值30
31 --增加节点TESTSTR
32 update xml_table 
33 set xmldata.modify(insert <TESTSTR>这是增加的节点</TESTSTR> before (/REQUEST/USERID)[1] )
34 --查询增加的节点TESTSTR
35 select xmldata.value((/REQUEST/TESTSTR)[1], nvarchar(120)) from xml_table--这是增加的节点
36 --删除节点
37 update xml_table
38 set xmldata.modify(delete /REQUEST/TESTSTR)

最近接到个新项目,需要利用存储过程操作XML,不需要代码传参,直接用存储过程返回XML参数,对于我来还是很感谢这个项目的,比较没接触过的可以学习更多

趁现在晚上有点时间先预习一下,先从增删改查学起,学习过程记录一下,供自己以后查阅

SqlServer解析XML数据

原文:https://www.cnblogs.com/studypanp/p/13237164.html


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶