mysql里面有内置的操作xml的函数。分别是ExtractValue()和UpdateXML()函数。

语法:1EXTRACTVALUE (fiedname, XPathstring);

第一个参数:fiedname是String格式,为表中的字段名第二个参数:XPathstring (Xpath格式的字符串) ,如果不了解Xpath语法,可以在网上查找教程。作用:从目标XML中返回包含所查询值的字符串

UPDATEXML (fiedname, XPathstring, new_value);第一个参数:fiedname是String格式,为表中的字段名第二个参数:XPathstring (Xpath格式的字符串)

第三个参数:new_value,String格式,替换查找到的符合条件的数据 作用:改变文档中符合条件的节点的值

相关mysql视频教程推荐:《mysql教程》

1.首先我们创建一个测试的表。1CREATE TABLE `testtable` (   `testxml` text ) ENGINE=InnoDBDEFAULT CHARSET=latin1

2.然后为测试表添加一条记录。记录为xml格式。

3.我们首先使用EXTRACTVALUE函数查出名字为张三节点内容。可以在下面的输出框看见我们找到的张三节点内容,xpath格式如下1extractvalue(testxml,'/Student/Class/Name[self:text()="zhangsan"]'

4.现在我们有查询class节点下所有name节点的值。1extractvalue(testxml,'/Student/Class/Name'

5.接下来我们用updatexml函数来改变xml的节点内容。1

2

3extractvalue(testxml,'/Student/Class/Name[self:text()="zhangsan"]'),

Updatexml(testxml,'/Student/Class/Name[self:text()="zhangsan"]','updatename')

,把zhangsan节点内容换为updatename。

6.从上面的结果中看到xml结构在我们使用updatexml后,少了一个name节点。我们只需要替换时把更新值加上节点即可。1

2extractvalue(testxml,'/Student/Class/Name[self:text()="zhangsan"]'),

Updatexml(testxml,'/Student/Class/Name[self:text()="zhangsan"]','updatename')

7.使用Update语句更新数据库内容。1UPDATE testtableSET testxml=  Updatexml(testxml,'/Student/Class/Name[self:text()="zhangsan"]','updatename')

注意事项

使用UpdateXml我们只是改变了查出字段的内容,并没有更新数据库,如果你需要更新数据库,需要用update语句更新

mysql查询返回xml格式_MySQL数据库查询操作XML的经验分享相关推荐

  1. mysql 索引修复_mysql数据库索引损坏及修复经验分享

    推荐:Windows Server 2003 下配置 MySQL 集群(Cluster)教程这篇文章主要介绍了Windows Server 2003 下配置 MySQL 集群(Cluster)教程,本 ...

  2. mysql数据库函数转义函数_MySql数据库-查询、插入数据时转义函数的使用

    最近在看一部php的基础视频教程,在做案例的时,当通过用户名查询用户信息的时候,先使用了转义函数对客户提交的内容进行过滤之后再交给sql语句进行后续的操作.虽然能看到转义函数本身的作用,但是仍然有一些 ...

  3. mysql查询php输出表格_MySql数据库查询结果用表格输出PHP代码示例_PHP教程

    //在表格中显示表的数据,常用方式 function ShowTable($table_name){ $conn=mysql_connect("localhost","r ...

  4. mysql字段获取当前日期格式_mysql数据库,获取当前日期及格式化

    MYSQL 获取当前日期及日期格式 获取系统日期: NOW() 格式化日期: DATE_FORMAT(date, format) 注: date:时间字段 format:日期格式 返回系统日期,输出 ...

  5. mysql插座返回6M数据_MySQL数据库设计与应用智慧树期末答案

    [单选题]目前在因特网上提供主要应用有电子邮件.WWW浏览远程登录和( ) A. 文件传输 B. 协议转换 C. 关盘检索 D. 电子图书馆 [多选题]缓和曲线的作用是为了( ). A. 解决超高引起 ...

  6. mysql中关系怎么弄_mysql数据库关系操作

    ### mysql数据库 #### 知识要点: 1. 数据操作增.删.改 2. 外键约束要求 3. 一对多表关系 4. 一对一表关系 5. 多对多表关系 6. 外键约束的参照操作 ### 数据操作 # ...

  7. MySQL 第三章3.1 数据库查询(where)

    MySQL 第三章3.1 数据库查询(where) 3.1.3 查询条件 where子句     where 子句会根据条件对from 子句一行一行的进行判断,当条件为true时,这行就被包含到whe ...

  8. linux mysql 实战_Linux平台MySQL多实例项目实施_MySQL数据库基础与项目实战06

    Linux平台MySQL多实例项目实施_MySQL数据库基础与项目实战06 视频教程学习地址 Oracle/MySQL数据库学习专用QQ群:336282998.189070296 学完风哥本课程能熟悉 ...

  9. 数据库中操作XML(openXML)

    最近公司项目需要在数据库中操作XML,因此系统的学习了一下 一.openxml的格式 OPENXML( idoc int [ in] , XPathnvarchar [ in ] , [ flags ...

最新文章

  1. 插入排序算法(基于Java实现)
  2. shell 批量添加用户健壮版
  3. 发起一个ajax请求,发送ajax请求
  4. 游戏类型区分(做游戏的朋友可以看看)
  5. linux 用户创建、管理、权限分配
  6. uniapp滑动切换tab标签_Web前端,Tab切换,缓存,页面处理的几种方式
  7. 化学方程式作评、数学上成知识百科……那些“别人家的老师”有何特别?
  8. Win11右键刷新怎么恢复 Win11右键刷新恢复教程分享
  9. linux怎么编译sharedptr,如何使用智能指针(例如auto_ptr r shared_ptr)在Linux上使用C++生成链接列表数据结构?...
  10. java 解锁关闭文件占用_程序员:Java文件锁定、解锁和其它NIO操作
  11. Mujoco入门教程1-xml文件学习
  12. Ubuntu 环境下 vim 打造成 IDE
  13. Java与数据结构——树(一)
  14. Fiddler之自动修改数据包(Free HTTP插件)
  15. T229470 A. 小智的疑惑(暴力)
  16. Lumen 中对 Dingo API 异常接管并自定义响应结果
  17. 转载【电波话题】10:电波群友关于广播电台短波带宽的讨论
  18. acr38u PHP调用,ACS ACR38智能卡读写器驱动下载_ACS ACR38智能卡读写器驱动官方下载-太平洋下载中心...
  19. 惊了 消息中间件合集:MQ(ActiveMQ/RabbitMQ/RocketMQ)+Kafka+笔记
  20. 使用LM2575代替7805

热门文章

  1. So Easy! 让开发人员更轻松的工具和资源
  2. Odyssey.js – 使用现成模板在线创建互动的故事
  3. EF for Firebird
  4. 转]从一个男人关注的事情上 可以看出他的修养和抱负
  5. 金蝶Apusic应用服务器的数据源管理(转)
  6. 计算机c语言二级题型,计算机二级C语言题型和评分标准
  7. ajax html页面传参数,jQuery AJAX:如何将大型HTML标记作为参数传递?
  8. app vue 真机运行_使用 HBuilder 将 Vue 项目打包成手机 App
  9. android 美颜录像,Android 关于美颜/滤镜 利用PBO从OpenGL录制视频
  10. java调用外联服务用xml,Spring IOC 依赖注入的两种方式:XML和注解