在Sql Server中启用DTD支持

时间:2014-08-22 23:59:55

标签: sql sql-server xml

我需要存储在数据库列中的各种xml文档。这些文档包含对DTD的引用,SQL Server不会导入xml,因为它存在安全风险。 如何在数据库上启用DTD支持,以便我可以插入xml内容。

1 个答案:

答案 0 :(得分:1)

您必须首先CONVERT

MSDN

  

您可以使用包含DTD的数据文件导入XML数据   OPENROWSET(BULK ...)函数然后指定CONVERT   命令的SELECT子句中的选项。的基本语法   命令是:

     
    

INSERT ... SELECT CONVERT(…) FROM OPENROWSET(BULK...)

  

示例:

INSERT T1
  SELECT CONVERT(xml, BulkColumn, 2) FROM 
    OPENROWSET(Bulk 'c:\temp\Dtdfile.xml', SINGLE_BLOB) [rowsetresults];