Problema con double

05/10/2005 - 19:44 por Técnicos Aydai | Informe spam
Cuando creo una sql, y pongo un valor del tipo double y lleva decimales, en
un insert, me da un error diciendo que no puede convertir el valor de un
nvarchar en un double, alguien save la solucion???

Preguntas similare

Leer las respuestas

#1 Kev
05/10/2005 - 20:16 | Informe spam
Si colocas el codigo insert quizas se entenderia mejor
revisa que el valor para double no este entre comillas simples

Salu2

Kevin Guisbert S.
guisbertkevin(arroba)gmail.com
"Técnicos Aydai" wrote in message
news:%
Cuando creo una sql, y pongo un valor del tipo double y lleva decimales,
en
un insert, me da un error diciendo que no puede convertir el valor de un
nvarchar en un double, alguien save la solucion???


Respuesta Responder a este mensaje
#2 A.Poblacion
05/10/2005 - 21:54 | Informe spam
"Técnicos Aydai" wrote in message
news:%
Cuando creo una sql, y pongo un valor del tipo double y lleva decimales,


en
un insert, me da un error diciendo que no puede convertir el valor de un
nvarchar en un double, alguien save la solucion???



Si metes un double dentro del texto de la Sql, asegúrate de que al
convertirlo en cadena le pones un punto (y no una coma) para separar los
decimales.
Si no te quieres preocupar de esos detalles de conversión, lo mejor es
que uses una sentencia parametrizada (poniendo @Variable en lugar del valor
del double) y luego uses un SqlParameter para meter el double. Cuando lo
haces asi, ya se encarga ado.net de hacer la conversión de formato como sea
necesario.
Respuesta Responder a este mensaje
#3 Tecnicos Aydai
06/10/2005 - 10:30 | Informe spam
Muchas gracias A.Poblacion, pero me gustarias saber como usar los
sqlparameters, ya que lo estoy intentando pero no se hacerlo funcionar.
"A.Poblacion" escribió en
el mensaje news:
"Técnicos Aydai" wrote in message
news:%
Cuando creo una sql, y pongo un valor del tipo double y lleva decimales,


en
un insert, me da un error diciendo que no puede convertir el valor de un
nvarchar en un double, alguien save la solucion???



Si metes un double dentro del texto de la Sql, asegúrate de que al
convertirlo en cadena le pones un punto (y no una coma) para separar los
decimales.
Si no te quieres preocupar de esos detalles de conversión, lo mejor es
que uses una sentencia parametrizada (poniendo @Variable en lugar del
valor
del double) y luego uses un SqlParameter para meter el double. Cuando lo
haces asi, ya se encarga ado.net de hacer la conversión de formato como
sea
necesario.


Respuesta Responder a este mensaje
#4 A.Poblacion
06/10/2005 - 16:32 | Informe spam
"Tecnicos Aydai" wrote in message
news:
He intentado hacer lo mismo, lo de los parametros con las fechas, y


cuando
intento grabar una fecha 31/10/05 me da el siguiente error :

"The conversion of a char data type to a datetime data type resulted in an
out-of-range datetime value.

The statement has been terminated."

y no tengo ni idea de que puede ser, porque sin embargo, lo hago con fecha
del 6/10/05 y me lo hace bien.



6/10/05 = 10 de Junio, y no da error. 31/10/05=dia 10 del mes 31, y da
un error. Para que funcionase tendrías que darle la vuelta al dia y el mes,
o reconfigurar el formato de fechas del servidor (SET DATEFORMAT DMY). O,
mejor todavía, usar un SqlParameter (lo mismo que comentábamos para los
doubles):

Dim cmd as New SqlCommand("Update Mitabla set micampofecha=@fecha",
conexion)
Dim parm as New SqlParameter("@fecha", SqlDbType.DateTime)
parm.Value = DateTime.Now 'O cualquier otra fecha
cmd.Parameters.Add(parm)
conexion.Open()
cmd.ExecuteNonQuery()
conexion.Close()
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida