草庐IT

SQL-Dump

全部标签

sql-server - XML 解析和 T-SQL

给定表中XML字段的以下内容:1234SMITHKEVIN123412CASE34我如何获取Person/PersonID、LastName、Firstname信息?CaseNumber也是如此。我的下一个问题与上面类似,但让我们添加第二个命名空间:Contentinhere!!Empty请注意,我在那里有2个命名空间,它们也有“:xsi”和“:xsd”。我认为这些被称为模式。 最佳答案 试试这个:DECLARE@tableTABLE(IDINTNOTNULL,XmlContentXML)INSERTINTO@tableVALUES

sql-server - SSIS 使用过多内存将大型 (40GB+) XML 文件加载到 SQL Server 表中

我需要使用SSIS将一个大型(40GB+)XML文件加载到SQLServer2012数据库表中。我遇到问题是因为SSIS似乎试图将整个文档加载到内存中而不是流式传输它。这是我的SSIS包的更多详细信息。我创建了一个具有以下属性的XML源:数据访问模式:来自变量的XML文件(但可以是XML文件位置)变量名:指定我电脑中XML文件路径的变量。XSD位置:定义正在读取的XML的XSD的路径。XML结构简单,只有3个层级:带有标题信息的根元素一级定义对象集合定义单个对象的叶级别(每个对象都有一组固定的字段)我需要为每个叶元素插入一个数据库记录,从更高层次重复字段。换句话说,我需要展平XML层次

sql-server - 将 XML 节点转换为 SQL Server 中的行

考虑以下示例:declare@somexmlasxmlset@somexml='12345'上面的XML有一些ID值,我需要将它们转换为可在临时表中用于执行连接的数据行。我不太明白语法是否正确,我已经尝试了一些遇到的示例:SELECTT.r.value('.','int')asidFROM@somexml.nodes('/Settings/Users')T(r)返回:|ID||------||12345|以下内容:SELECTT.r.query('.')asidfrom@somexml.nodes('/Settings/Users/ID')asT(r)返回:|ID||---------

sql - 在 SQL 中读取 XML BOOLEAN 值

如何从SQL中的XML列读取boolean值。下面是示例代码。是否可以使用XQueryValue函数实现。DECLARE@XMLXML='falsetrue'我希望BAR_prior_report为False,BAR_multiple_branches为True 最佳答案 这会将字段返回为BIT列,大多数语言会将其解析为boolean值(SqlServer中没有boolean值)。SELECTNodes.node.value('(field[@name="BAR_prior_report"]/value)[1]','bit')ASB

sql - XML 到 SQL 结果集。多级嵌套

本质上,我正在尝试使用SQL将我拥有的XML转换为平面数据结构。我的XML采用以下格式(我已将XML更改为一个子集,以简化我的示例):1100ValueA200ValueB300ValueC1301ValueC22101ValueA200ValueB302ValueC3我正在寻找的输出如下:+---------+-----+----------+----------+|GroupId|Id|Value|ParentId|+---------+-----+----------+----------+|1|100|ValueA|NULL||1|200|ValueB|100||1|300|V

用于 XML 的 SQL 服务器

我在SQLServer中有一个表,它看起来像具有以下列名的任何其他表:primaryID|column1|column2|column3|column4|column5我需要获取该表中的不同字段并创建以下格式的XML:在这种情况下,节点是为表中的每条记录创建的。该节点针对该特定记录的每一列完成。我已经尝试了RAW、PATH、ROOT和EXPLICIT的所有可能组合,但均无济于事。我提出的建议在SQLServer中是否可行,还是我需要在其他地方执行? 最佳答案 您必须指定forxml路径才能获取所需的节点。这是基于您的示例的示例:CR

sql - 如何将 XML 插入 SQL

我尝试将XML文件添加到SQL2008。我的XML:SQL列:Name=SectionName,Cat=SectionIndex,Index=ItemIndex,Slot=ItemSlot.我的例子:DECLARE@inputXML='MYXMLfile'SELECTName=XCol.value('@Index','varchar(25)'),Cat=XCol.value('@Name','varchar(25)'),[Index]='Unknown',/*Indexfrom*/Slot='Unknown'/*Slotfrom*/FROM@input.nodes('/ItemList

sql-server - sql中openxml的动态列和记录

我有一个非常简单的xml文档。唯一的区别是元素可以改变。有一次我可能会:BobSmithJohnDoe下次我可能会:ClevelandOHChicagoIL我想编写一个select语句,根据我目前获得的xml文档生成一个动态表。例如:对于第一个:FirstNameLastName------------------------BobSmithJohnDoeEtc...第二个CityState-----------------------ClevelandOHChicagoILEtc...这两个例子没有任何关系(Bob不是来自克利夫兰等...)我只想使用相同的代码生成两个表...取决于x

sql - XML 甲骨文 : Extract specific attribute from multiple repeating child nodes

我无法理解我看到的其他问题,因为它们有点不同。我从网络服务viUTL_HTTP得到一个XML作为响应。XML具有重复的子节点,我只想提取1个特定值。响应XML:Form11234Form24442Form39995我需要提取节点只有节点="Form3".因此,在我的代码中,我收到了来自另一个函数的响应v_ds_xml_responseXMLTYPE;--Herewouldlietherestofthecode(omitted)preparingtheXMLandnextcallingthefunctionwithit:V_DS_XML_RESPONSE:=FUNCTION_CALL_W

sql-server - sql 查询 varchar(max) 列以根据其子项之一的值选择一个元素

我正在尝试搜索存储在varchar(max)列中的xml数据。下面是在varchar列中找到的xml数据字符串之一的示例在这个例子中,我将有一个名为@dsName的sql变量,当它的值与@dsName匹配并且它从属于任一节点或节点时,它将与节点匹配。介于两者之间或直到您到达的节点可能会有所不同。test0falseAdminfalsefalsefalsereade-mailandapproveordenyfalsefalsetrueloblookupfalsetruetruelobComboboxlobloblookuplobfalseloblookuptrueSTRINGWhatev