草庐IT

exchange-server-2010

全部标签

sql-server - MsSQL xml 解析为十进制

我正在用这个存储过程处理xmlselectcol.query('./AgreementId').value('.','uniqueidentifier')as[AgreementId],x.query('./GrossValue').value('.','decimal(19,4)')as[GrossValue]into#AdvanceInvoicesfrom@XML.nodes('/DataFromERP/CustomObjects/Agreements/Agreement')asref(col)crossapplyref.col.nodes('AdvanceInvoices/Adv

sql - 在 SQL Server 中计算 XML 中的非空节点

我需要计算所有非空的b节点(所以结果应该是2)。1g我正在使用下面的代码,但这会返回所有节点的计数(包括空节点)。selecttop1rc.XmlContent.value('count(//a/b)','int')fromTablerc 最佳答案 如果你使用//a/b/text()而不是仅仅使用//a/b,那么你会得到2DECLARE@xXML='1g';SELECT@x.value('count(//a/b/text())','int'); 关于sql-在SQLServer中计算XM

sql-server - SQL Server 中的 XQuery 与 OpenXML

我在SQLServer表中有这个XML:111SmithJonesBrown222WhiteBloggsMcDonald想要这样的结果集:MeetingIDName111Smith111Jones111Brown222White222Bloggs222McDonald使用selectfromopenxml很容易,但我使用XQuery失败了。有人可以帮助我吗,也许还可以给出这两种方法的优缺点? 最佳答案 一旦您修复了无效的XML(元素需要以结束标记结束),您应该能够使用它:SELECTMeetings.List.value('(id)

c# - 使用 XML 定义文件以编程方式创建 SharePoint 2010 内容类型

有什么方法可以使用XML定义文件以编程方式创建SharePoint2010内容类型?可以通过以下方式添加SPFields:SPContext.Current.Web.Fields.AddFieldAsXml("");是否有任何类似的方法可以以编程方式将内容类型添加到网站集/网站? 最佳答案 您可以通过编程方式创建/添加内容类型,但不能使用XML定义(据我所知)。您必须构建它,将其添加到内容类型集合,然后手动将您的字段引用添加到字段链接集合。一个粗略的例子是:using(SPSitesite=newSPSite("http://loc

sql - 在 Sql Server 的 xml 中从最后获取第 n 个元素

请考虑这个XML:1000NimaAgha1001LighaLigha1002JighaJigha1003AbaAba我想编写一个获取数字的函数,然后获取第n个Person元素和Name。例如,如果0传递到我的函数,我返回Aba,如果1传递到我的函数,我返回Jigha。 最佳答案 这应该有效。将@index变量的值设置为要查找的记录的编号,相对于列表的末尾:declare@indexint=1declare@xmlxml='1000NimaAgha1001LighaLigha1002JighaJigha1003AbaAba'sele

sql-server - 使用同一行中的另一个列值更新 SQL Server 2005 中的 XML 节点(在 XML 列中)

我有一个包含XML列(XMLColumn)和VARCHAR列(ABCColumn)的临时表.我试图用同一行的ABCColumn中的值替换XMLColumn中特定XML节点的值。我需要为临时表中的每一行执行此操作。如果没有一个游标可以保存每次提取的替换值,这是否可行?我尝试使用对临时表进行更新XmlColumn.modify('replacevalueof...with...')但在这种情况下我没有变量。我需要获取XYZColumn的值并将其用作替换值。我见过的每个示例都使用变量或硬编码值-而不是同一行的列值。此外,我正在使用SQLServer2005。有人有什么想法吗?

sql - 从 SQL Server 中的 xml,获取下一个兄弟值

我有一个看起来像这样的表:CREATETABLECustomerXmlData(CustomerIdint,CustomerDataxml)CustomerId链接到主客户表,CustomerData是一个如下所示的xml文档ABC500XYZ600有几十万这样的行。在伪代码中,我想要做的是“找到Product的平均Value,其中Name='XYZ'”。我知道如何根据元素属性或基于在文档中具有唯一的父元素来获取值,但在这种情况下这些都没有用。我找不到任何可以让我找到我想要的Name然后获取下一个兄弟的值的东西。我可以使用FORXML并创建一个边缘表,但我是否必须使用游标遍历它?我希望

xml - 如何在 SQL Server 2008 中合并 2 个 XML 变量

假设我在SQLServer2008中有2个具有以下XML的XML变量DECLARE@FIRSTXML='JohnBob',@SecondXML='NewBob39';我想要以下输出:JohnNewBob39基本上我想将2个XML变量的内容合并到一个变量@Second应该优先的地方(如果一个节点同时存在于@First和@Second,应该考虑@Second里面的节点。我采用的方法是首先获取两个根元素中所有唯一元素的列表,如下所示:WITHALLFieldsAS(SELECTx.y.value('local-name(.)','varchar(50)')AsElementFROM@Seco

c# - 在 Visual Studio 2010 中将一个 xml 文件注入(inject)另一个(合并两个 xml 文件)

我正在做一个项目,我必须把翻译放在XML中。现在xml翻译文件是自动生成的,但不是我的项目部分。我和他们必须共享生成的XML。因此,当我在他们的“主”XML中输入我的XML片段时,它会在文件重新生成时被覆盖。当前的解决方案是将我的翻译保存在一个单独的文件中,并且每次都将其复制粘贴到“主”XML文件中。有没有办法自动执行此操作?我尝试了xmlInclude选项,但VisualStudio无法识别或使用它。我想在“主”XML中生成某种占位符,而VisualStudio会“以某种方式”用我单独文件中的XML替换占位符。有什么想法吗? 最佳答案

sql-server - SQL Server XML 操作 - 只能插入非文档节点

符合主题SQLServerXMLmodifywithnoresult而在插入新节点之前我得到了错误XQuery[modify()]:Onlynon-documentnodescanbeinserted.Found"xs:string?".新节点的主体:有什么办法可以解决吗?DECLARE@newNodeDatavarchar(max)=...@newNodeData变量的一些文本修改然后declare@xmlxml;select@xml=t.xmlData//t.xmlDataisntexttypefromtabletwhereid=123set@xml.modify('declare