Leer campo sql de una tabla

09/11/2010 - 15:18 por Paul | Informe spam
Hola,
Tengo un servidor SQL Server Express 2008, con la siguiente tabla:
Tabla1 (Id int, Descrip xml) --> Es decir que el campo Descrip es del
tipo xml.
He inserta el siguiente registro:
Insert INTO Tabla1 (Id, Descrip) VALUES (1, '<ROOT><VALORES
Nombre="Jordi" Edad="30"></VALORES></ROOT>')

El problema es que ahora no se como leerlo con una consulta Sql.

He probado con:
SELECT Descrip.value('(/VALORES//Nombre/node())[1]', 'varchar(50)')
AS Nombre,
Descrip.value('(/VALORES//Edad/node())[1]', 'varchar(30)') AS Edad
FROM Tabla1

Pero no obtengo el rresultado.

Alguna idea?

Gracias
 

Leer las respuestas

#1 cubaman
18/11/2010 - 10:51 | Informe spam
On 9 nov, 15:18, Paul wrote:
Hola,
Tengo un servidor SQL Server Express 2008, con la siguiente tabla:
Tabla1 (Id int, Descrip xml) --> Es decir que el campo Descrip es del
tipo xml.
He inserta el siguiente registro:
Insert INTO Tabla1 (Id, Descrip) VALUES (1,  '<ROOT><VALORES
Nombre="Jordi" Edad="30"></VALORES></ROOT>')

El problema es que ahora no se como leerlo con una consulta Sql.

He probado con:
SELECT  Descrip.value('(/VALORES//Nombre/node())[1]', 'varchar(50)')
AS Nombre,
Descrip.value('(/VALORES//Edad/node())[1]', 'varchar(30)') AS Edad
FROM   Tabla1

Pero no obtengo el rresultado.

Alguna idea?

Gracias



Buenas:
Y no seria mas sencillo y funcional guardar esos datos en una tabla
relacional de toda la vida? Siempre puedes generar su correspondiente
representación xml usando FOR XML en tu consulta.
Saludos.

http://social.msdn.microsoft.com/fo...46564c534/

Preguntas similares