Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

SQL Server:XPATH-Abfrage schlägt fehl

Sie erhalten dies höchstwahrscheinlich, weil Sie irgendwo in Ihrem XML eine Dokumentdefinition wie diese verwenden:(MSDN-Beispiel der DTD)

<!DOCTYPE DOC [<!ATTLIST elem1 attr1 CDATA "defVal1">]><elem1>January</elem1>

Microsoft blockiert dies standardmäßig, da es eine potenzielle Sicherheitslücke schafft. Die Nachricht convert with style option 2 teilt Ihnen mit, dass Sie die teilweise Unterstützung für DTD aktivieren können, um dieses XML durch die Verwendung von CONVERT-Funktion in Bezug auf XML .

Ich habe keine persönliche Erfahrung damit, also kann ich nicht mehr als den Link zu MSDN anbieten.

Die einzige andere Möglichkeit besteht darin, die volle DTD-Unterstützung auf dem Server zu aktivieren, was Microsoft nicht empfiehlt.