convertir varchar a integer Sql Server 2008

08/04/2009 - 17:13 por charles | Informe spam
Cordial Saludo.

Se tiene la siguiente instruccion:

select max(convert(integer,substring(pdNoDoc,1,(len(pdNoDoc)-1)))) as consec
from tabla

En Sql Server 2000 si funciona a la perfeccion; en el campo pdnodoc se
guarda un consecutivo numerico acompañado de una N; ejemplo: 7001N

En Sql server 2008 me sale el siguiente error:
Invalid length parameter passed to the LEFT or SUBSTRING function.

parece que esta version no permite convertir de varchar a integer...

Que puedo hacer??

Agradezco la ayuda y sugerencias que me puedan brindar.
 

Leer las respuestas

#1 Carlos Sacristan
08/04/2009 - 17:36 | Informe spam
No es un tema de versiones, más bien creo que es de que los datos que tienes
son diferentes.

Si fuera un error de conversión te lo indicaría, pero en este caso el
mensaje hace referencia a que el valor del último parámetro de la función
SUBSTRING es incorrecto.


Un saludo
-
www.navento.com
Servicios de Localización GPS


"charles" wrote:

Cordial Saludo.

Se tiene la siguiente instruccion:

select max(convert(integer,substring(pdNoDoc,1,(len(pdNoDoc)-1)))) as consec
from tabla

En Sql Server 2000 si funciona a la perfeccion; en el campo pdnodoc se
guarda un consecutivo numerico acompañado de una N; ejemplo: 7001N

En Sql server 2008 me sale el siguiente error:
Invalid length parameter passed to the LEFT or SUBSTRING function.

parece que esta version no permite convertir de varchar a integer...

Que puedo hacer??

Agradezco la ayuda y sugerencias que me puedan brindar.



Preguntas similares