草庐IT

web渗透之sql注入

全部标签

sql - 如何在 SQL Server 中选择 XML 列的顶级属性?

我在SQLServer中有一个XML列相当于:我想获取Test(根元素)的foo属性的值作为varchar。我的目标是:SELECTCAST(''ASxml).value('@foo','varchar(20)')ASFoo但是当我运行上述查询时,出现以下错误:Msg2390,Level16,State1,Line1XQuery[value()]:Top-levelattributenodesarenotsupported 最佳答案 JohnSaunders几乎是正确的:-)declare@DataXMLset@Data=''sel

sql-server - 如何使用 T-SQL 将表中的记录转换为 xml 格式?

我有一个简单的表格,想将其内容存储到硬盘驱动器上的xml中。整个表格应该有一个根元素,每个表格行一个元素,每个表格列一个子元素。我有什么可能性?非常感谢托马斯 最佳答案 如果您需要更多地控制生成的XML的外观,请查看SQLServer2005和更新版本中新的FORXMLPATH语句。这样的语句(基于臭名昭著的Northwind数据库):SELECTCustomerIDas"@CustomerID",CompanyName,Addressas"address/street",Cityas"address/city",Regionas"

asp.net - web.config、configSource 和 "The ' xxx' 元素未声明“警告

我使用configSource属性将极其笨拙的web.config文件分解为一些单独的文件(例如connectionStrings、身份验证、页面等)。这工作正常,但包含“片段”部分的各个xml文件会在VS中引起警告。例如,名为roleManager.config的文件用于角色管理器部分,如下所示:但是我在VS中的roleManager元素下看到一个蓝色波浪线,并且出现以下警告:The'roleManager'elementisnotdeclared我想这与有效的xml和模式等有关。有没有简单的方法来解决这个问题?我可以向各个文件添加什么吗?谢谢附言我听说像这样分解web.config

xml - 出现在 Web 服务模式中的 tns

我正在使用JAX-WS来运行一些示例Web服务。发布Web服务后,当我键入WSDLURL时,我可以看到WSDL文档。WSDL文档指的是如下所示的架构文档:−−−−−−我的问题是为什么'tns'出现在元素声明中?例如:tns:getTimeAsElapsed"/>我没有看到'tns'被声明为命名空间前缀的模式文档,模式文档只是以开头那为什么在引用其他元素时出现'tns'呢?这是JAX-WS生成的XML模式的默认行为吗? 最佳答案 根据w3,tns表示“此命名空间”,指的是当前文档。来源:https://www.w3.org/TR/ws

sql - 使用 LIKE 或类似的完整搜索操作搜索 XML

我想搜索XML值列以查看a是否包含字符串。我不知道架构,我想知道字符串是否包含在任何地方。我不知道XPATH是否适用于这种情况。相当于Selects.Name,ts.ValueXMLfromtablet(nolock)jointable2ts(nolock)ont.key_Id=ts.key_Idjointable3s(nolock)onts.key_Id=s.key_Idwheres.Namelike'%Lab%'andts.ValueXMLlike'%PreviewDateRange%'ERROR:Argumentdatatypexmlisinvalidforargument1of

sql-server - 更新 SQL Server 中的 XML 节点值

我需要将GroupID字段更新为0。我已经弄清楚如何检索该值,但现在更新它时遇到问题。任何帮助都会很棒!-11falseDeclare@Resultxmlset@Result=convert(xml,(selectProfileXMLfromprofileswhereid=23))SELECTx.value('.','int')IDFROM@Result.nodes('/ProblemProfile/GroupID')asR(x)更新我现在需要做的是更新每一行的值为'foo'的GroupIDdeclare@foointset@foo=-1UPDATEprofilesSETProfile

sql - 我可以在 t-sql 中查找/替换吗?

我基本上有一个xml列,我需要在每条记录中查找并替换一个标记值。 最佳答案 对于任何真实的东西,我会选择xpaths,但有时你只需要一个快速而肮脏的解决方案:您可以使用CAST将该xml列转换为常规varchar,然后进行常规替换。更新xmlTableSETxmlCol=REPLACE(CAST(xmlColasvarchar(max)),'[search]','[replace]')当您只需要运行快速查询来查找内容而不想处理xpath时,同样的技术也可以让搜索XML变得轻而易举。SELECT*FROMxmlTableWHERECA

sql-server - ms sql xml 数据类型转换为文本

在MSSql中有一些数据类型是delphi7不支持的,xml数据类型就是一个例子。我希望将XML数据类型转换为文本数据类型,以便我可以在delphi中处理它。有没有办法将xml转换为文本? 最佳答案 一个简单的转换就足够了:selectcast(XMLColasnvarchar(max))asXMLCol或者对于非unicode:selectcast(XMLColasvarchar(max))asXMLCol您不能显式转换为“文本”数据类型。我添加了asXMLCol以确保转换后的数据与列同名。当然,你不需要这个。编辑:几个链接。无论

sql-server - 与 NVARCHAR(MAX) 相比,SQL Server 中 XML 数据类型的性能损失是什么?

我有一个要保存日志条目的数据库。日志表中的一列包含序列化(到XML)对象,我团队中的一个人建议使用XML数据类型而不是NVARCHAR(MAX)。该表将“永久”保存日志(将来可能会考虑归档一些非常旧的条目)。我有点担心CPU开销,但我更担心DB会增长得更快(使用XML时,引用问题中的FoxyBOA的DB增加了70%)。我读过这个question它给了我一些想法,但我对澄清数据库大小是增加还是减少特别感兴趣。能否请您分享您在这方面的见解/经验。顺便说一句。我目前不需要依赖SQLServer中的XML功能(在特定情况下,我的优势几乎为零)。偶尔会提取日志条目,但我更喜欢使用.NET处理XM

sql-server - 将 XML 数据分解为 SQL Server 数据库列的最佳方式

将XML数据分解成各种数据库列的最佳方法是什么?到目前为止,我主要是像这样使用节点和值函数:INSERTINTOsome_table(column1,column2,column3)SELECTRows.n.value('(@column1)[1]','varchar(20)'),Rows.n.value('(@column2)[1]','nvarchar(100)'),Rows.n.value('(@column3)[1]','int'),FROM@xml.nodes('//Rows')Rows(n)但是我发现即使是中等大小的xml数据,这也变得非常慢。