Problema con fechas extraño

12/01/2006 - 14:58 por Carmelo J. Morales Muñoz | Informe spam
¡hola!

Tengo una aplicación c# en una maquina con windows XP, la base de datos
también en el mismo ordenador. Pero ahora la base de datos la he copiado a
un ordenador windows98, y al acceder a la base de datos en este equipo (que
es la misma bbdd) me da error al pasar una fecha. La configuración regional
la tengo identica, aunque uno es win98 y el otro xp, los servidores, msde.
El cliente siempre en el mismo ordenador, win xp

¿alguna idea?.


esta es la consulta que hago a la base de datos:

set @Fecha1 = Convert(varchar(10),@Fecha1,103)
set @Fecha2 = Convert(varchar(10),@Fecha2,103)

SELECT DIARIO.ID, DIARIO.Fecha, CUENTAS.Cuenta, DIARIO.Descripcion,
DIARIO.Importe, DIARIO.TipoCuenta, DIARIO.IdCuenta, DIARIO.Borrado
FROM DIARIO INNER JOIN
CUENTAS ON DIARIO.IdCuenta = CUENTAS.ID
WHERE (DIARIO.Fecha >= @Fecha1 AND DIARIO.Fecha <= @Fecha2) AND
(DIARIO.Borrado = 0)

http://www.gestionagricola.com
http://www.carmelosoft.com

Preguntas similare

Leer las respuestas

#11 Carmelo J. Morales Muñoz
13/01/2006 - 00:25 | Informe spam
Solucionado! casi me da vergüenza decir lo que era, en fin, resulta que
el usuario en la otra base de datos lo tenía en english... mil perdones!

cada día aprendo algo... chao y mil gracia spor la paciencia1


http://www.gestionagricola.com
http://www.carmelosoft.com

"Carmelo J. Morales Muñoz" escribió en el mensaje
news:%
¡hola!

Tengo una aplicación c# en una maquina con windows XP, la base de datos
también en el mismo ordenador. Pero ahora la base de datos la he copiado a
un ordenador windows98, y al acceder a la base de datos en este equipo
(que
es la misma bbdd) me da error al pasar una fecha. La configuración
regional
la tengo identica, aunque uno es win98 y el otro xp, los servidores, msde.
El cliente siempre en el mismo ordenador, win xp

¿alguna idea?.


esta es la consulta que hago a la base de datos:

set @Fecha1 = Convert(varchar(10),@Fecha1,103)
set @Fecha2 = Convert(varchar(10),@Fecha2,103)

SELECT DIARIO.ID, DIARIO.Fecha, CUENTAS.Cuenta, DIARIO.Descripcion,
DIARIO.Importe, DIARIO.TipoCuenta, DIARIO.IdCuenta, DIARIO.Borrado
FROM DIARIO INNER JOIN
CUENTAS ON DIARIO.IdCuenta = CUENTAS.ID
WHERE (DIARIO.Fecha >= @Fecha1 AND DIARIO.Fecha <= @Fecha2) AND
(DIARIO.Borrado = 0)

http://www.gestionagricola.com
http://www.carmelosoft.com



Respuesta Responder a este mensaje
#12 Salvador Ramos
13/01/2006 - 11:58 | Informe spam
Hola,

Quería añadir que este tipo de problemas se puede evitar, haciendo que tus
aplicaciones no se vean afectadas por este tipo de cosas. Este artículo del
amigo Maxi te puede ayudar:
http://www.microsoft.com/spanish/ms...art157.asp

Un saludo
Salvador Ramos
Murcia - España

[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL Server y .NET)


"Carmelo J. Morales Muñoz" escribió en el mensaje
news:eaKbF%
Solucionado! casi me da vergüenza decir lo que era, en fin, resulta
que el usuario en la otra base de datos lo tenía en english... mil
perdones!

cada día aprendo algo... chao y mil gracia spor la paciencia1


http://www.gestionagricola.com
http://www.carmelosoft.com

"Carmelo J. Morales Muñoz" escribió en el
mensaje news:%
¡hola!

Tengo una aplicación c# en una maquina con windows XP, la base de datos
también en el mismo ordenador. Pero ahora la base de datos la he copiado
a
un ordenador windows98, y al acceder a la base de datos en este equipo
(que
es la misma bbdd) me da error al pasar una fecha. La configuración
regional
la tengo identica, aunque uno es win98 y el otro xp, los servidores,
msde.
El cliente siempre en el mismo ordenador, win xp

¿alguna idea?.


esta es la consulta que hago a la base de datos:

set @Fecha1 = Convert(varchar(10),@Fecha1,103)
set @Fecha2 = Convert(varchar(10),@Fecha2,103)

SELECT DIARIO.ID, DIARIO.Fecha, CUENTAS.Cuenta, DIARIO.Descripcion,
DIARIO.Importe, DIARIO.TipoCuenta, DIARIO.IdCuenta, DIARIO.Borrado
FROM DIARIO INNER JOIN
CUENTAS ON DIARIO.IdCuenta = CUENTAS.ID
WHERE (DIARIO.Fecha >= @Fecha1 AND DIARIO.Fecha <= @Fecha2) AND
(DIARIO.Borrado = 0)

http://www.gestionagricola.com
http://www.carmelosoft.com







Respuesta Responder a este mensaje
#13 Carmelo J. Morales Muñoz
13/01/2006 - 19:18 | Informe spam
Gracias por el Link, entonces, entiendo que cuando llamo a un procedimiento
almacenado, no puedo pasar directamente el valor de una fecha contenida en,
por ejemplo, un DateTimePicker. Ya que veo que la representa en dd/mm/aaaa,
sino que he de pasarla por mi cuenta a cadena en formato yyyy/mm/dd. ¿estoy
en lo cierto?.

bye!


http://www.gestionagricola.com
http://www.carmelosoft.com

"Salvador Ramos" escribió en el
mensaje news:
Hola,

Quería añadir que este tipo de problemas se puede evitar, haciendo que tus
aplicaciones no se vean afectadas por este tipo de cosas. Este artículo
del amigo Maxi te puede ayudar:
http://www.microsoft.com/spanish/ms...art157.asp

Un saludo
Salvador Ramos
Murcia - España

[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL Server y .NET)


"Carmelo J. Morales Muñoz" escribió en el
mensaje news:eaKbF%
Solucionado! casi me da vergüenza decir lo que era, en fin, resulta
que el usuario en la otra base de datos lo tenía en english... mil
perdones!

cada día aprendo algo... chao y mil gracia spor la paciencia1


http://www.gestionagricola.com
http://www.carmelosoft.com

"Carmelo J. Morales Muñoz" escribió en el
mensaje news:%
¡hola!

Tengo una aplicación c# en una maquina con windows XP, la base de datos
también en el mismo ordenador. Pero ahora la base de datos la he copiado
a
un ordenador windows98, y al acceder a la base de datos en este equipo
(que
es la misma bbdd) me da error al pasar una fecha. La configuración
regional
la tengo identica, aunque uno es win98 y el otro xp, los servidores,
msde.
El cliente siempre en el mismo ordenador, win xp

¿alguna idea?.


esta es la consulta que hago a la base de datos:

set @Fecha1 = Convert(varchar(10),@Fecha1,103)
set @Fecha2 = Convert(varchar(10),@Fecha2,103)

SELECT DIARIO.ID, DIARIO.Fecha, CUENTAS.Cuenta, DIARIO.Descripcion,
DIARIO.Importe, DIARIO.TipoCuenta, DIARIO.IdCuenta, DIARIO.Borrado
FROM DIARIO INNER JOIN
CUENTAS ON DIARIO.IdCuenta = CUENTAS.ID
WHERE (DIARIO.Fecha >= @Fecha1 AND DIARIO.Fecha <= @Fecha2) AND
(DIARIO.Borrado = 0)

http://www.gestionagricola.com
http://www.carmelosoft.com











Respuesta Responder a este mensaje
#14 Salvador Ramos
13/01/2006 - 19:30 | Informe spam
Efectivamente, si lo haces así podrás tener los problemas citados en el
artículo. Te aconsejo que te hagas en tu lenguaje de programación la
conversión al formato ANSI. Incluso se me ocurre que podrías crear un
control heredado del que estés utilizando que tuviese una propiedad
FechaANSI (o algo así) y que fuese ese valor el que enviases, ahorrandote
codificar esas conversiones.

Un saludo
Salvador Ramos
Murcia - España

[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL Server y .NET)


"Carmelo J. Morales Muñoz" escribió en el mensaje
news:
Gracias por el Link, entonces, entiendo que cuando llamo a un
procedimiento almacenado, no puedo pasar directamente el valor de una
fecha contenida en, por ejemplo, un DateTimePicker. Ya que veo que la
representa en dd/mm/aaaa, sino que he de pasarla por mi cuenta a cadena en
formato yyyy/mm/dd. ¿estoy en lo cierto?.

bye!


http://www.gestionagricola.com
http://www.carmelosoft.com

"Salvador Ramos" escribió en el
mensaje news:
Hola,

Quería añadir que este tipo de problemas se puede evitar, haciendo que
tus aplicaciones no se vean afectadas por este tipo de cosas. Este
artículo del amigo Maxi te puede ayudar:
http://www.microsoft.com/spanish/ms...art157.asp

Un saludo
Salvador Ramos
Murcia - España

[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL Server y .NET)


"Carmelo J. Morales Muñoz" escribió en el
mensaje news:eaKbF%
Solucionado! casi me da vergüenza decir lo que era, en fin, resulta
que el usuario en la otra base de datos lo tenía en english... mil
perdones!

cada día aprendo algo... chao y mil gracia spor la paciencia1


http://www.gestionagricola.com
http://www.carmelosoft.com

"Carmelo J. Morales Muñoz" escribió en el
mensaje news:%
¡hola!

Tengo una aplicación c# en una maquina con windows XP, la base de datos
también en el mismo ordenador. Pero ahora la base de datos la he
copiado a
un ordenador windows98, y al acceder a la base de datos en este equipo
(que
es la misma bbdd) me da error al pasar una fecha. La configuración
regional
la tengo identica, aunque uno es win98 y el otro xp, los servidores,
msde.
El cliente siempre en el mismo ordenador, win xp

¿alguna idea?.


esta es la consulta que hago a la base de datos:

set @Fecha1 = Convert(varchar(10),@Fecha1,103)
set @Fecha2 = Convert(varchar(10),@Fecha2,103)

SELECT DIARIO.ID, DIARIO.Fecha, CUENTAS.Cuenta, DIARIO.Descripcion,
DIARIO.Importe, DIARIO.TipoCuenta, DIARIO.IdCuenta, DIARIO.Borrado
FROM DIARIO INNER JOIN
CUENTAS ON DIARIO.IdCuenta = CUENTAS.ID
WHERE (DIARIO.Fecha >= @Fecha1 AND DIARIO.Fecha <= @Fecha2) AND
(DIARIO.Borrado = 0)

http://www.gestionagricola.com
http://www.carmelosoft.com















Respuesta Responder a este mensaje
#15 Joel Medina Osis
17/01/2006 - 12:48 | Informe spam
me paso lo mismo el windows 90 tienes que leer la fecha en formato
"dd/mm/yy" es decir tienes que declararlo a un varchar(8)
"Carmelo J. Morales Muñoz" escribió en el mensaje
news:%
¡hola!

Tengo una aplicación c# en una maquina con windows XP, la base de datos
también en el mismo ordenador. Pero ahora la base de datos la he copiado a
un ordenador windows98, y al acceder a la base de datos en este equipo
(que
es la misma bbdd) me da error al pasar una fecha. La configuración
regional
la tengo identica, aunque uno es win98 y el otro xp, los servidores, msde.
El cliente siempre en el mismo ordenador, win xp

¿alguna idea?.


esta es la consulta que hago a la base de datos:

set @Fecha1 = Convert(varchar(10),@Fecha1,103)
set @Fecha2 = Convert(varchar(10),@Fecha2,103)

SELECT DIARIO.ID, DIARIO.Fecha, CUENTAS.Cuenta, DIARIO.Descripcion,
DIARIO.Importe, DIARIO.TipoCuenta, DIARIO.IdCuenta, DIARIO.Borrado
FROM DIARIO INNER JOIN
CUENTAS ON DIARIO.IdCuenta = CUENTAS.ID
WHERE (DIARIO.Fecha >= @Fecha1 AND DIARIO.Fecha <= @Fecha2) AND
(DIARIO.Borrado = 0)

http://www.gestionagricola.com
http://www.carmelosoft.com



Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida