Quindi ho ottenuto una colonna varbinary(max)
in SQL Server 2005 ed è piena di XML. Alcuni record hanno troncato XML in modo che non siano validi.XML non valido in una colonna varbinary (max) in SQL Server 2005
Questo significa che se corro un
SELECT CAST(myVarbinaryColumn as XML) ...
soffia pezzi.
Come posso filtrare/saltare xml non valido?
Quando ho fatto simile con un varchar che presumibilmente ha date che potrei usare ISDATE(blah) = 1
. Quindi un equivalente ISVALIDXML()
sarebbe bello.
Si prega di non commentare "Perché non è il tipo di dati XML della colonna comunque .." Questo è successo in passato e non ho una macchina del tempo.
Hmm interessante, i byte finali saranno sempre gli stessi in modo da poter filtrare quelli che non corrispondono? Fortunatamente in questo scenario gli xml utilizzano tutti lo stesso schema, quindi dovrebbero avere tutti un elemento radice di chiusura corrispondente –