updatexml函数

updatexml()函数 updatexml()是一个使用不同的xml标记匹配和替换xml块的函数。

作用:改变文档中符合条件的节点的值 语法: updatexml(XML_document,XPath_string,new_value)

 第一个参数:是string格式,为XML文档对象的名称,文中为Doc

 第二个参数:代表路径,Xpath格式的字符串例如//title【@lang】 

第三个参数:string格式,替换查找到的符合条件的数据 updatexml使用时,当xpath_string格式出现错误,mysql则会爆出xpath语法错误(xpath syntax) 例如: select * from test where ide = 1 and (updatexml(1,0x7e,3)); 由于0x7e是~,不属于xpath语法格式,因此报出xpath语法错误。

1',2,updatexml(1,concat(0x7e,database()),1))#解析
1'代表闭合sql语句

2为sql语句中的字符之一

updatexml(1,concat(0x7e,database()),1))占位3,之所以需要用concat去连接字符串是因为在updatexml的第二个参数中出行预期之外的参数会产生报错,将结果进行传递,从而得到想要的数据。

 

posted @ 2024-12-12 17:21  JIKX-  阅读(427)  评论(0)    收藏  举报