entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

0voto

Si el numero de días es igual o mayor a 10 da error en sql

Hola amigos tengo 2 consultas en una funciona bien pero en otra da error. He notado que cuando el numero de dias es igual o mayor que 10 da el error.. alguien sabe porque?

FUNCIONA
select Id, Subject, Location,Description, StartTime, EndTime, IsAllDayEvent, Color, RecurringRule from calendario where StartTime between '2014-12-01 00:00:00' and '2014-12-07 23:59:59'

NO FUNCIONA(no funciona cuando el dia es 14)
select Id, Subject, Location,Description, StartTime, EndTime, IsAllDayEvent, Color, RecurringRule from calendario where StartTime between '2014-12-08 00:00:00' and '2014-12-14 23:59:59'

EL ERROR ES ESTE:
Mens. 242, Nivel 16, Estado 3, Línea 1
La conversión del tipo de datos varchar en datetime produjo un valor fuera de intervalo.

1 Respuesta

1voto

Leonardo-Tadei Puntos227320

Hola combo,

no lo dice tu pregunta, pero supongo que estás usando como servidor de base de datos Microsoft SQL Server. Si es así, lo que te debe estar pasando es que el formato de la fecha del servidor es distinto al que estás usando (por ej. Año/día/mes) y la consulta falla con 14 porque no existe ese mes.

Acá hay una larga conversación sobre el tema http://www.lawebdelprogramador.com/foros/SQL_Server/1222039-como_convertir_varchar_a_datetime.html pero en resumen sugiere ver la configuración del servidor y ajustar las querys al formato devuelto o usar la función CONVERT() para previamente convertir el string en un datetime.

Saludos!

0voto

carlossevi comentado

Para complementar tu respuesta, dejo un par de enlaces:

Documentación oficial de Microsoft sobre el tipo datetime de Transact-SQL implementado en MS SQL Server.

Es posible cambiar la forma en que SQL interpreta las fechas con la función SET DATEFORMAT (documentación), el formato por defecto está relacionado con el idioma en el que está configurada la base de datos.

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta