空字符串是否有效的XML?

时间:2008-12-17 22:38:22

标签: xml string

这是一个有效的XML吗? 可以从MSSQL插入oracle xblob列或XML列吗?

4 个答案:

答案 0 :(得分:6)

没有。 spec表示格式良好的XML文档满足:

document ::=  prolog  element  Misc*

,其中

element ::= EmptyElemTag
              | STag content ETag 

答案 1 :(得分:3)

它不是XML文档 - 需要至少有一个,最多一个根元素。 (如果编码为UTF-8且版本为1.0,则XML声明是可选的 - XML推荐的生产22)。它是一个有效的XML 片段 - 作为空文本节点或空范围。

您必须定义“XML片段”在您的上下文中的含义。

答案 2 :(得分:3)

它不是有效的xml,但它可以插入到SQL Server 2005的XML列中。我不能代表Oracle,但我几乎愿意打赌它可以。

显然,对于SQL Server 2005,您需要换取单引号的双引号:

Insert Into MyTestTable(MyXmlColumn) Values('');

这很好用 - 我只是测试了它,插入成功了。

答案 3 :(得分:1)

它不是有效的xml。有效的xml需要带有编码类型和根节点的xml声明。无论Oracle或SQL Server是否会接受它,您都可以自行检查。