当前位置: 首页 > 面试题库 >

在SQL中的CAST中使用与号

狄晟睿
2023-03-14
问题内容

SQL Server 2005上的以下代码段在与号“&”上失败:

select cast('<name>Spolsky & Atwood</name>' as xml)

有人知道解决方法吗?

更长的解释是,我需要更新XML列中的一些数据,并且我正在通过将XML值转换为varchar来进行搜索和替换类型的修改,并使用此转换进行替换和更新XML列。


问题答案:
select cast('<name>Spolsky &amp; Atwood</name>' as xml)

标准中XML不允许标记内的文字“&”号XML,并且此类文档将无法通过任何XML解析器进行解析。

AnXMLSerializer()将输出与号HTML编码的符号。

如下代码:

using System.Xml.Serialization;

namespace xml
{
    public class MyData
    {
        public string name = "Spolsky & Atwood";
    }

    class Program
    {
        static void Main(string[] args)
        {
            new XmlSerializer(typeof(MyData)).Serialize(System.Console.Out, new MyData());
        }
    }
}

将输出以下内容:

<?xml version="1.0" encoding="utf-8"?>
<MyData
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <name>Spolsky &amp; Atwood</name>
</MyData>

,用&amp;代替&



 类似资料:
  • 我一直在研究一个从oracle数据库生成xml的查询 其中“column”是一种类型 列列表的类型为 和 问题是,这必须转换成postgres,因为CAST和MULTISET在postgres中是不可用的,所以有没有办法在postgres语法中实现这一点

  • 问题内容: 我在SQLite3数据库中具有下表: 我想执行以下查询: 也就是说,我有几个批注ID的元组,我想获取每个这些元组的记录。sqlite3提示给我以下错误: 如何正确将其表示为SQL语句? 编辑 我意识到我并没有很好地解释我真正的追求。让我再尝试一下。 如果一个人给我他们感兴趣的任意术语列表,我可以编写如下的SQL语句: 但现在假设这个人想给我双方面的,如果形式,,… ,这里是和是。SQL

  • 除非通过无界通配符对其进行参数化,否则不允许转换为参数化类型。 Box<Integer> integerBox = new Box<Integer>(); Box<Number> numberBox = new Box<Number>(); //Compiler Error: Cannot cast from Box<Number> to Box<Integer> integerBox = (Bo

  • 问题内容: 如何在编写SQL查询的Linq中使用左联接? 问题答案: 使用Join关键字而不是Left join,并且必须使用“ INTO”关键字和“ DefaultIfEmpty()”方法,因为右表将返回空值。

  • 问题内容: 我正在尝试在几种不同的环境中重新部署我的ASP.NET MVC3应用程序,并想尝试使用SQL Azure。我想使用现有的LINQ结构和CreateDatabase创建这些数据库。 我想知道如何在SQL Azure上使用CreateDatabase,因为USE语句在平台上不起作用。 请回答任何建议,或者是否有更好的方法可以做到这一点。 问题答案: http://msdn.microsof

  • 问题内容: 我正在考虑使用Logstash和SqlServer作为数据源来实现ES。我最初使用river来从Sql服务器读取数据,但是我团队中的一位开发人员建议使用Logstash。任何人都可以指向有关Logstash和SQLServer入门的指南。我的目标是使用elasticsearch进行搜索。 谢谢 问题答案: 到目前为止,还没有用于读取SQL的Logstash API。对于受支持的输入AP