Error Interno de Sql??

09/10/2006 - 12:29 por Ivan Pascual | Informe spam
Hola Foro,
Me sucede la siguiente situación, tengo un cliente con la version de SQL
server 2000 Personal edition.

Todo le funciona bien, el departamente de sistemas de dicho cliente ha
decido coger el Sql y instalar la version Sql Server Standar Edition 2000
con el SP4 para que mejore el rendimiento.

Ahora unas pantallas de mi aplicación dan un error donde dice que ha fallado
un Stored Procedure de la Bd y que es "error interno de Sql".

No lo entiendo alguien puede orienterme un poco y decirme que puede estar
pasando?

Gracias a todos.

Ivan Pascual

Preguntas similare

Leer las respuestas

#1 Maxi
09/10/2006 - 14:18 | Informe spam
Bueno habria que ver cual es el error de ese sp exactamente, te recomiendo
que hagas un debug de la aplicacion para detectar el sp y luego lo ejecutes
desde el QA a ver que pasa


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"Ivan Pascual" escribió en el mensaje
news:
Hola Foro,
Me sucede la siguiente situación, tengo un cliente con la version de SQL
server 2000 Personal edition.

Todo le funciona bien, el departamente de sistemas de dicho cliente ha
decido coger el Sql y instalar la version Sql Server Standar Edition 2000
con el SP4 para que mejore el rendimiento.

Ahora unas pantallas de mi aplicación dan un error donde dice que ha
fallado un Stored Procedure de la Bd y que es "error interno de Sql".

No lo entiendo alguien puede orienterme un poco y decirme que puede estar
pasando?

Gracias a todos.

Ivan Pascual

Respuesta Responder a este mensaje
#2 Ivan Pascual
10/10/2006 - 15:34 | Informe spam
Gracias Maxi por tu aportación.

Te he hecho caso, he ido al cliente a ver que sucedia.
Lo que me he encontrado es algo que no me se explicar, lo comento para
cultura general.
Resumiendo:
El cliente tiene un SqlServer 2000 Personal Edition, por motivos de
necesidad de aumentar el numero de concurrencias a la BD que en Personal
edition esta limitada, decide el cliente instalar SqlServer 2000 Standar
Edition.
En este momento un stored procedure que funcionaba con la personal edition
deja de funcionar.
He encontrado el motivo.

Este stored procedure recibe un parametro tipo text ya que le envio un xml.
Llamo al sp_xml_preparedocument y lo abro con el valor de la variable Text.
Hasta aqui ningún problema.

el error viene cuando tengo que updatear una tabla con los registros que
lleva el xml, trabajando con el OpenXml como si fuera una tabla normal, pues
bien. en el SqlServer 2000 Personal Edition puedo definir un campo del
OpenXml como tipo nText pero en la version SqlServer 2000 Standar Edition no
reconoce este tipo de campo, lo he de declarar como Varchar(8000). Aqui va
el codigo como ejemplo.

Update Tabla1
SET Campo1 = T1.Campo1,
Campo2 = T1.Campo2,
Campo3 = T1.Campo3
From
( Select
Campo1, Campo2, Campo3
From
OpenXml (@idoc2, '/Cliente/Tabla1/Registro', 1 )
With ( Campo1 varchar(8), Campo2 ntext, Campo3 ) ) AS T1
Where
Campo0= @IdCliente

Fijaros que el Campo2 esta definido como nText dentro del OpenXml.
En SqlServer 2000 Standar Edition no me deja declararlo como nText he de
hacerlo como Varchar(8000).

No lo acabo de entender por que motivo, pero así es.
Si hacemos un cambio en dicha sentencia, me deja utilizar nText como
definicion de campo, pero he de hacerlo de la siguiente manera:
1 - Primero creo una temporal con los datos del Xml
2 - Hago elUpdate de la temporal

Select
Campo1, Campo2, Campo3
Into TablaTmp
From
OpenXml (@idoc2, '/Cliente/Tabla1/Registro', 1 )
With ( Campo1 varchar(8), Campo2 ntext, Campo3 )


Update Tabla1
SET Campo1 = T1.Campo1,
Campo2 = T1.Campo2,
Campo3 = T1.Campo3
From
TablaTmp as T1
Where
Campo0= @IdCliente

Me resulta curioso.
Perdon por el rollo que os he metido pero me ha parecido interesanta de
saber.
Si alguin ve que hay algo mas agradeceria comentarios.
Gracias y hasta pronto.

Saludos

Ivan Pascual

"Ivan Pascual" escribió en el mensaje
news:
Hola Foro,
Me sucede la siguiente situación, tengo un cliente con la version de SQL
server 2000 Personal edition.

Todo le funciona bien, el departamente de sistemas de dicho cliente ha
decido coger el Sql y instalar la version Sql Server Standar Edition 2000
con el SP4 para que mejore el rendimiento.

Ahora unas pantallas de mi aplicación dan un error donde dice que ha
fallado un Stored Procedure de la Bd y que es "error interno de Sql".

No lo entiendo alguien puede orienterme un poco y decirme que puede estar
pasando?

Gracias a todos.

Ivan Pascual

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida