草庐IT

Linq-to-SQL

全部标签

SQL Server 表审计触发器

我有两个表Customers和AuditTable。当我修改Customers表时,我需要在AuditTable中插入一条新记录:CREATETABLE[dbo].[AuditTable]([Id][int]IDENTITY(1,1)NOTNULL,[StateBefore][nvarchar](max)NULL,[StateAfter][nvarchar](max)NULL)我需要将Customer状态的XML表示放入StateBefore和StateAfter中,更新前后。Customer表是:CREATETABLE[dbo].[Customer]([Id][int]IDENTIT

sql-server - 使用来自另一个链接表的 XML 片段的 T-SQL XML 更新

我正在寻找一种方法来更新(.modify('insertinto..')表中的XML列,其中包含来自另一个由外键链接的表的xml片段。例如,我的表结构如下(简化):每个表中的字段1到5可以忽略;他们唯一的目的是解释字段Xx。每个表中的字段Xx都定义为XML,并预先填充了一个XML片段,该片段包含来自标签、表名内的表中的字段。在此列表之后描述了XML片段。表B和表C有一个外键FK_A,将它们链接到表A。表A-B和表A-C是一对多的(A中的一条记录可以在B和C中有多条记录)。现在,我需要实现的Xx字段样本值之前:AvalueAvalueAvalueAvalueAvalueBvalue1Bv

c# - 使用 Dapper 从 T-SQL 存储过程返回 XML 字符串

我正在从事一个将大型VB6应用程序转换为.NET的项目。我决定创建一个项目来为现有的VB6ADO代码提供外观,我在其中使用令人惊叹的Dapper扩展方法来处理VB6ADO函数过去执行的所有数据库代码。我必须在我的新项目中支持的功能之一是能够从T-SQL存储过程(通过FORXML)获取XML字符串结果。Dapper不支持返回我可以看到的这个XML。因此,我实现了ADO.NETExecuteXmlReader方法来提供此返回值。我的项目还使用DapperDynamicParameters来捕获存储过程所需的所有输入/输出参数。我不知道该怎么做,是如何将DynamicParameters转换

c# - C# 中的 LINQ to XML。枚举没有结果?

我目前正在尝试从Web服务检索数据,例如,如果分数超过90,我想对结果进行搜索。我试图在不进行搜索的情况下带回结果,但没有得到任何结果。有人可以帮我看看我哪里出错了吗?FundNamesPayloadxmlresponse=newFundNamesPayload();xmlresponse=search.SearchByName("Australiansuper","GUID-Here","Y");MemoryStreamXmlStream=newMemoryStream();StreamReaderXmlReader=newStreamReader(XmlStream);XmlSer

xml - XSL : How to change attribute X when attribute Y is 'A' , B' 或 'F'?

我正在处理XML请求,据此我需要更改元素的属性值如果另一个属性值等于一个或多个值。Xpath无法更新XML本身(据我所知),我一直在研究XSL,但它非常复杂,我通常不使用XML。这是我正在使用的XML的简化版本:如果类型等于PLANE或CAR,我需要在映射block中将操作从ADD_NEW更改为UPDATE_OLD。我一直在查看人们的其他XSL示例,并试图思考如何启动它,但没有成功。我使用的工具支持XSL并有一个自定义软件,我可以将XSL模板放入其中,它将应用到我指定的XML消息。但我不确定从哪里开始——冒着听起来像“请为我做我的工作,SO用户”的风险,如果有人至少可以给我一个起点,让

sql - 将 SQL 结果集转换为 XML

我正在寻找一种可以将SQL结果集序列化和/或转换为XML的工具。从SQL结果集中简化XML生成简单而微不足道,但这不是我需要的。解决方案必须是数据库中立的,并且只接受常规的SQL查询结果(不使用dbxml支持)。该工具的一个特殊挑战是提供嵌套的XML匹配来自基于行的结果的任何模式。中间步骤太慢且浪费——这需要一步完成;没有RS->object->XML,最好没有RS->XML->XSLT->XML。由于大型结果集和大型XML,它必须支持流式传输。有什么办法吗? 最佳答案 对于SQLServer,您确实应该考虑在查询中使用FORXML

c# - 我如何告诉 LINQ 忽略不存在的属性?

以下代码有效,但前提是XML的每个元素都具有“Id”属性。但是,如果元素没有id属性,LINQ会抛出NullReferenceException。如何指定如果没有Id属性,则只分配一个null或空白?usingSystem;usingSystem.Linq;usingSystem.Xml.Linq;namespaceTestXmlElement2834{classProgram{staticvoidMain(string[]args){XElementcontent=newXElement("content",newXElement("item",newXAttribute("id",

xml - 我如何选择 XElements where Attribute ... (LINQ2XML)

如何使用Linq选择id==id&&key==key的值xml:de-DEGeneralAllgemeineKundende-DEGeneralAllgemeineVerträge这是我的方法方法(字符串模块,字符串键)...varvalue=(fromlinlocalization.Elements("Localization").Elements("Module")wherel.Attribute("id").Equals(module)&&l.Element("Key").Value.Equals(key)selectl.Element("Value").Value);

xml - 从 Sql Server 列中的 XML 中提取数据

我刚刚发现(必然)TSQL有一些功能可以从包含XML的列中提取数据。我有一个包含XML数据的SqlServer列(虽然列类型不是xml...它是varchar)。我应该从列中提取数据的子集。简化的条目看起来像这样:declare@Tableastable(idchar(1),datacolumnxml)insertinto@tableselect'a',''insertinto@tableselect'b',''iddatacolumn--------------------------------------------ab所以,我想提出一个查询,它会返回以下内容:iddata---

xml - 在 SQL Server 中,是否可以将多个插入替换为采用 XML 参数的单个插入?

所以我有一个现有的ASP.NET解决方案,它使用LINQ-to-SQL将数据插入SQLServer(5个表,总共110k条记录)。我过去曾读到XML可以作为参数传递给SQLServer,但我的谷歌搜索显示将XML直接存储到表中的结果。我宁愿采用该XML参数并将节点作为记录插入。这可能吗?它是如何完成的(即XML参数如何用于在T-SQL中插入记录,XML应如何格式化)?注意:我正在研究其他选项,例如SQL批量复制,我知道SSIS是一个不错的选择。我想知道这种XML方法是否可行。 最佳答案 XML的格式应与普通XML文档一样。然后您只需