Procedimientos Almacenados y sp_xml_preparedocument

17/11/2004 - 00:10 por Juan Pedro Gonzalez | Informe spam
Hola,

Recientemente me he topado con una serie de problemas empleando un XML para
pasar una lista de registros a la base de datos. Por ejemplo, cuando trato
de pasar un texto que contiene una eñe me devuelve un error. Evidentemente
la base de datos debe ser capaz de recibir textos en los que se incluya la
eñe. Sospecho que se puede presentar el mismo problema con algunos
caracteres adicionales, como pudiesen ser las vocales acentuadas, o las
comillas simples.

¿Alguien se ha enfrentado en alguna ocasión con este problema? ¿Que solución
se puede adoptar? y otra pregunta importante ¿Con que caracteres se os ha
producido este error?

Saludos

Preguntas similare

Leer las respuestas

#1 Alberto D.
17/11/2004 - 03:53 | Informe spam
Intenta colocando <?xml version="1.0" encoding="ISO-8859-1" ?>

Saludos !!

"Juan Pedro Gonzalez" escribió en el mensaje
news:%
Hola,

Recientemente me he topado con una serie de problemas empleando un XML


para
pasar una lista de registros a la base de datos. Por ejemplo, cuando trato
de pasar un texto que contiene una eñe me devuelve un error. Evidentemente
la base de datos debe ser capaz de recibir textos en los que se incluya la
eñe. Sospecho que se puede presentar el mismo problema con algunos
caracteres adicionales, como pudiesen ser las vocales acentuadas, o las
comillas simples.

¿Alguien se ha enfrentado en alguna ocasión con este problema? ¿Que


solución
se puede adoptar? y otra pregunta importante ¿Con que caracteres se os ha
producido este error?

Saludos



Respuesta Responder a este mensaje
#2 Ody Barrera
17/11/2004 - 04:12 | Informe spam
Hola :

El problema esta en la definición del conjunto de caracteres que se utiliza
para la codificación del documento, este es un tema muy relacionado al XML,
por defecto el conjunto de caracteres es UTF-8. (Aquì tienes una referencia
de XML => http://www.dat.etsit.upm.es/~abarbero/curso/xml/xmltutorial.html).

Entonces para que puedas incluir eñes (ñ) y caracteres tildados (á,é,í,ó,ú)
que son propios de nuestro idioma tendrias que utilizar el Charset ISO-8859-1.

Al formar tu documento XML, no basta que definas el elemento raíz.
Por ejemplo :
SET @doc ='
<ROOT>
<Customer CustomerID="VINET" ContactName="Paul Henriot">
<Order CustomerID="VINET" EmployeeID="5" OrderDate="1996-07-04T00:00:00">
<OrderDetail OrderID="10248" ProductID="11" Quantity="12"/>
<OrderDetail OrderID="10248" ProductID="42" Quantity="10"/>
</Order>
</Customer>
<Customer CustomerID="LILAS" ContactName="Carlos Gonzlez">
<Order CustomerID="LILAS" EmployeeID="3" OrderDate="1996-08-16T00:00:00">
<OrderDetail OrderID="10283" ProductID="72" Quantity="3"/>
</Order>
</Customer>
</ROOT>'

Tendrias que incluir el encabezado del documento XML(que incluye la version,
y la codificación).

SET @doc ='
<?xml version="1.0" encoding="ISO-8859-1"> <= AGREGAR
<ROOT>
<Customer CustomerID="VINET" ContactName="Paul Henriot">
<Order CustomerID="VINET" EmployeeID="5" OrderDate="1996-07-04T00:00:00">
<OrderDetail OrderID="10248" ProductID="11" Quantity="12"/>
<OrderDetail OrderID="10248" ProductID="42" Quantity="10"/>
</Order>
</Customer>
<Customer CustomerID="LILAS" ContactName="Carlos Gonzlez">
<Order CustomerID="LILAS" EmployeeID="3" OrderDate="1996-08-16T00:00:00">
<OrderDetail OrderID="10283" ProductID="72" Quantity="3"/>
</Order>
</Customer>
</ROOT>'

Bueno espero que esto ayude a solucionar tu problema.

Saludos
Ody Barrera (Perú)
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida