In questo database live di SQL Server 2008 (build 10.0.1600), è presente una Events
tabella che contiene una text
colonna denominata Details
. (Sì, mi rendo conto che questa dovrebbe effettivamente essere una varchar(MAX)
colonna, ma chiunque abbia impostato questo database non l'ha fatto in questo modo.)
Questa colonna contiene registri molto grandi di eccezioni e dati JSON associati a cui sto cercando di accedere tramite SQL Server Management Studio, ma ogni volta che copio i risultati dalla griglia a un editor di testo, li tronca a 43679 caratteri.
Ho letto in varie posizioni su Internet che è possibile impostare il numero massimo di caratteri recuperati per i dati XML Tools > Options > Query Results > SQL Server > Results To Grid
su Illimitato, quindi eseguire una query come questa:
select Convert(xml, Details) from Events
where EventID = 13920
(Si noti che i dati nella colonna non sono affatto XML. L' CONVERT
inserimento della colonna in XML è semplicemente una soluzione alternativa che ho scoperto da Google che qualcun altro ha utilizzato per aggirare il limite che SSMS ha dal recupero dei dati da una colonna text
o varchar(MAX)
.)
Tuttavia, dopo aver impostato l'opzione sopra, aver eseguito la query e aver fatto clic sul collegamento nel risultato, ricevo ancora il seguente errore:
Impossibile mostrare XML. Si è verificato il seguente errore: si è verificata una fine del file imprevista. Riga 5, posizione 220160.
Una soluzione è aumentare il numero di caratteri recuperati dal server per i dati XML. Per modificare questa impostazione, nel menu Strumenti, fare clic su Opzioni.
Quindi, qualche idea su come accedere a questi dati? Convertire la colonna per varchar(MAX)
risolvere i miei guai?