Ver Mensaje Individual
  #8 (permalink)  
Antiguo 28/08/2007, 21:26
Avatar de horizonte
horizonte
 
Fecha de Ingreso: octubre-2005
Ubicación: A 50cm del Monitor(el angulo depende del estado de animo)
Mensajes: 148
Antigüedad: 18 años, 6 meses
Puntos: 1
Re: Formato Fecha segun idioma del SQL.Server

Cita:
Iniciado por iislas Ver Mensaje
Horizonte

Esta consulta

select cast('2000-08-28 23:59:59' as smalldatetime)as Fecha

Da como resultado:

Fecha
------------------------------------------------------
2000-08-29 00:00:00

(1 row(s) affected)

Que conste, es un simple COPY-PASTE

Las fechas NUNCA se comparan con IGUAL (=), debe ser con >= o <=

A menos claro, que hagas un convert:

WHERE CONVERT(CHAR(8), GETDATE(), 112) = '20070828'
Iislas:

Ok, a mi me da lo mismo si lo ejecuto en el SQL.Server version ingles, pero si lo ejecutas desde el SQL.Server version castellano veras que te da el error antes mencionado.

Igualmente gracias por la ayuda porque descubri que si uso 'AAAAMMDD' en vez de 'AAAA-MM-DD' funciona en ambos idiomas.
Es decir, lo que antes daba error en el SQL(castellano) ahora funciona ok(la hora es opcional) asi:
Código:
select cast('20070828 23:59:59'as smalldatetime)as Fecha
Podria entonces concluir, que talvez el ANSI se refiere a 'AAAAMMDD' y no a 'AAAA-MM-DD'. Esto se basa en el query mencionado arriba, es decir si usan 'AAAA-MM-DD' funcionara ok para el SQL ver.Ingles, pero veran que les dara error en el SQL ver.Castellano, y viceversa si usan 'AAAA-DD-MM' funciona ok para SQL ver.Castellano y da error en SQL ver.Ingles. Pero si usamos el mismo query con 'AAAAMMDD' veran que funciona para ambos idiomas.

Desde ya muchas gracias a todos.
Saludos.
__________________
Mientras tanto aqui, en la Gran Ciudad...
Una nueva hora,...Comienza
:Zzz: