草庐IT

server_default

全部标签

sql-server - SSIS 中的 XML 列具有字节顺序标记

我在SSIS包中使用oledb数据源从数据库中提取列。该列是XML数据类型。在SSIS中,它被自动识别为数据类型DT_NTEXT。它转到一个脚本组件,我试图将它加载到System.Xml.XmlDocument中。这是我用来将xml数据转换为字符串的代码:System.Text.Encoding.Default.GetString(Row.Data.GetBlobData(0,Row.Data.Length))这是正确的方法吗?我看到的一件奇怪的事情是,在一台服务器上,我在结果字符串中得到了一个字节顺序标记,而在另一台服务器上却没有。我不介意知道为什么会这样,但我真正的愿望是如何在没有

xml - SQL Server 2008 XML 的 2mb 限制?

我正在尝试从SMSS输出一个长的XML结果。当我右键单击结果并“将结果另存为...”时,我只能得到一个2mb的文件吗?我已经通过工具->选项->查询结果->SQLServer->结果到网格更改了SMSS中的设置,使XML数据不受限制。但是,它似乎仍然截断了我的XML结果?那么,我怎样才能绕过这个问题并将我的XML结果输出到一个文件中呢?谢谢 最佳答案 我想我以前见过这个,这是结果网格的限制。尝试将结果直接输出到文件,看看会发生什么。 关于xml-SQLServer2008XML的2mb限

sql - 修改SQL Server中的xml元素名称

如何将元素名称从Cust更改为Customer?aaaaaaaaaabbbbbbbbbb当我使用下面的语句时select@myXml.query('/node()[1]/node()')forxmlraw('Customer')sql删除属性aaaaaaaaaabbbbbbbbbb 最佳答案 试试这个:SELECT@myXml.value('(/Cust/@id)[1]','int')AS'@id',@myXml.query('/node()[1]/node()')FORXMLPATH('Customer')给我一​​个输出:aaa

xml - 在 SQL Server 2005 中将 XML 数据转换为表格和 XML 格式

这是我的XML101103105108109110我需要制作一个XQuery来显示这样的结果intintxml1510110310524108109110我到了这里..intintxml1510110310524101103105使用这个declare@xmldocumentxml;set@xmldocument=(selectRoomTypesfromHotels);declare@tbtable(idint,totalint,fidxml);declare@idint;set@id=0;insertinto@tb(id,total,fid)selectp.value('../@Id

xml - 如何在不使用 SQL Server 中的 XQuery 对元素名称进行硬编码的情况下从 XML 中提取值?

我将xml存储在一个表中,表中包含我感兴趣的元素的名称/路径。我想在不硬编码路径和/或元素名称的情况下提取这些元素的值。我的xml结构不会改变,它总是有父/子/元素。是否可以将xml和table连接起来以获取元素的值?下面是我能够得到的例子。我认为可以将此解决方案扩展到ChildNode和Element上的JOIN但不确定如何使用.query()和.value()获取ChildNode和Element.感谢您的帮助。DECLARE@xmlxmlSET@xml='123456789'DECLARE@ProductElementtable(ProductNodenvarchar(100),

sql-server - 在 ADO.NET 中使用 SQLXML,谁需要处理?

我找不到这个问题的书面答案。如果我使用SqlXml对象将xml传递给StoredProc,谁负责处理我正在创建的XmlTextReader?到目前为止,根据我的发现,构造函数已经创建了我传入的xml的副本,所以我猜我可以在创建SqlXml对象后立即处理读取器。但这只是一个猜测,因为我不知道后来ado.net是否使用了reader。蒂亚马丁 最佳答案 你的假设是正确的。SqlXml的构造函数将XmlReader的内容存储在内存流中。它不包含对传入的XmlReader的引用。反编译的SqlXml构造函数:publicSqlXml(Xml

sql-server - Sql Server Xml 转表逻辑

我需要查询具有多个REPORT标记元素的Xml数据。需要对其进行过滤以仅返回REPORTID等于给定名称的行。我试过执行这个过滤器,但没有成功。有人可以在这里使用SqlServerXml函数为我指明正确的方向吗?基本上,我正在寻找以表格形式返回的结果集,如下所示:ID------123鉴于以下情况,我如何选择REPORTID(/TEST/REPORT/TITLE[@ReportId="ReportOne"])等于“ReportOne”的REPORT行?DECLARE@XmlXML,@ReportIdVARCHAR(200);SET@ReportId='ReportOne';SET@Xm

sql - 如何在 SQL Server 中的 xml 列中查询 xml 值

我在名为“AlgorithmLog”的表的[XMLValue]列中有类似以下代码的内容:0Default...<?xmlversion="1.0"?><intxmlns="http://schemas.microsoft.com/2003/10/Serialization/">1900</int>我想在节点中获取值“1900”所以这是我的查询:WITHXMLNAMESPACES('http://schemas.datacontract.org/2004/07/Adapters.Adapter'ASx,'http://schemas.datacontr

sql-server - 禁止重复列的 XML DML (Xpath) 查询。它应该在插入列之前测试它是否存在

updateserializedvaluesetvalue.modify('insertStronglyTypedImmediatefalsetruetruetruetruefalseDeskLabel1falsetrueDeskl0Auto1StringLostFocusfalseaslastinto(/GridDataTableProperties/VisibleColumns)[1]')whereTokenlike'%gridsettings%'当我使用此查询将节点添加到现有列时。每次运行时都会添加一列。我想要实现的是它应该检查是否存在具有映射名称的特定节点,如果存在则不添加该节

sql-server - 在 SQL 中优化 XML

我最近开始使用TSQL在表列中处理XML,发现它比您每天的平均速度慢得多3rd-Normal-Form-associative-tables-Query-joining,来self的对150万行进行的测试,我的意思是它比3rd-Normal-Form-associative-tables-Query-joining慢8倍。使用XML的好处是,如果以特定方式设置,它会阻止您设置额外的关联表(在我的测试中,我的关联表(许多=许多关系的连接表的大小达到了750万行,相比之下到我的表中,XML的大小为150万行,存储相同的信息)。不过请不要介意我的咆哮,这只是对我执行的2组表的测试。问题这对我