web-dev-qa-db-fra.com

ms sql xml type de données converti en texte

dans MS Sql, il existe des types de données qui ne sont pas pris en charge par delphi 7, le type de données xml en est un exemple.

Je souhaite convertir le type de données XML en type de données texte, afin de pouvoir le gérer dans delphi.

Existe-t-il un moyen de convertir du XML en texte?

24
none

Un simple casting suffira:

select cast(XMLCol as nvarchar(max)) as XMLCol 

Ou pour non-unicode:

select cast(XMLCol as varchar(max)) as XMLCol 

Vous ne pouvez pas convertir explicitement en un type de données "texte".

J'ai ajouté le as XMLCol pour garantir que les données converties portent le même nom que la colonne. Vous n'avez pas besoin de ça, bien sûr.

MODIFIER:

Quelques liens. Vous êtes encouragé à utiliser nvarchar (max) au lieu de text malgré tout. Microsoft a déclaré qu'il allait déprécier ces types dans les prochaines versions. nvarchar (max) devrait vous offrir 2 Go:

http://www.petefreitag.com/item/734.cfm

http://www.teratrax.com/articles/varchar_max.html

http://msdn.Microsoft.com/en-us/library/ms187752 (v = SQL.90) .aspx

50
James Wiseman
SELECT CAST(YourXMLColumn as nvarchar(max))
    FROM YourTable
10
Joe Stefanelli