Dudas con datetime y smalldatetime

01/10/2004 - 02:04 por Damon Hill {uy} | Informe spam
Gente:

Tengo dos preguntas:

1.- Resulta que cuando quiero ingresar una hora (ej. '10:30') en un campo SMALLDATETIME me sale un
error informando que no ha sido posible la conversión entre DATETIME y SMALLDATETIME. La solución que
encontré es cambiar el diseño de la tabla a DATETIME. ¿Por qué pasa esto?

2.- Cuando agrego una hora en un campo DATETIME (ej. '10:30') me ingresa '01/01/1900 10:30 AM', esto
es lo que veo por lo menos en el Administrador Corporativo. ¿Puedo ingresar sólo el tiempo y no la
fecha? ¿cómo?

Desde ya muchas gracias por su tiempo.

Saludos!

Mauricio López
Maldonado - Uruguay

Preguntas similare

Leer las respuestas

#1 Miguel Tubia
01/10/2004 - 12:22 | Informe spam
Hola,
bueno no soy un experto, pero voy a intentar echarte un cable.
Lo de las fechas a mi me rompio la cabeza
Sobre la primera, quizás sea por como lo intentas meter la hora, si pudieras
pasar el trozo de consulta... De todos modos, podrías meterlo en una
smalldatetime si al meterlo haces un convert a smalldatetime, pruebalo a
ver.
Sobre la segunda, tienes que meter la fecha y la hora, todo. Si no indicas
todo, por ejemplo solo la hora, te pone la minima fecha posible, en este
caso 01/01/1900, y si pones solo la fecha te pone 00:00. Si solo te interesa
recuperar una parte o hacer comparaciones por fecha, por ejemplo, prueba con
las distintas opciones de convert. Quizas datepart tb te pueda servir.
De todos modos, para grabar solo la hora podrías considerar la opcion de
ponerlo como char(5), quizás te pueda servir. Luego con convert lo puedes
pasar a datetime para poder trabajar con ello si te hace falta.
Espero no haberme liado mucho y haberte echado un cablecillo
Un saludo


"Damon Hill {uy}" (agregar .UY y la H)> escribió en el
mensaje news:%
Gente:

Tengo dos preguntas:

1.- Resulta que cuando quiero ingresar una hora (ej. '10:30') en un campo


SMALLDATETIME me sale un
error informando que no ha sido posible la conversión entre DATETIME y


SMALLDATETIME. La solución que
encontré es cambiar el diseño de la tabla a DATETIME. ¿Por qué pasa esto?

2.- Cuando agrego una hora en un campo DATETIME (ej. '10:30') me ingresa


'01/01/1900 10:30 AM', esto
es lo que veo por lo menos en el Administrador Corporativo. ¿Puedo


ingresar sólo el tiempo y no la
fecha? ¿cómo?

Desde ya muchas gracias por su tiempo.

Saludos!

Mauricio López
Maldonado - Uruguay


Respuesta Responder a este mensaje
#2 Maxi
01/10/2004 - 14:22 | Informe spam
Hola, poder podes!! pero porque no nos pasas como estas haciendo el insert
de ese SmallDateTime


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Damon Hill {uy}" (agregar .UY y la H)> escribió en el
mensaje news:%
Gente:

Tengo dos preguntas:

1.- Resulta que cuando quiero ingresar una hora (ej. '10:30') en un campo


SMALLDATETIME me sale un
error informando que no ha sido posible la conversión entre DATETIME y


SMALLDATETIME. La solución que
encontré es cambiar el diseño de la tabla a DATETIME. ¿Por qué pasa esto?

2.- Cuando agrego una hora en un campo DATETIME (ej. '10:30') me ingresa


'01/01/1900 10:30 AM', esto
es lo que veo por lo menos en el Administrador Corporativo. ¿Puedo


ingresar sólo el tiempo y no la
fecha? ¿cómo?

Desde ya muchas gracias por su tiempo.

Saludos!

Mauricio López
Maldonado - Uruguay







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.769 / Virus Database: 516 - Release Date: 24/09/2004
Respuesta Responder a este mensaje
#3 ulises
01/10/2004 - 16:29 | Informe spam
1) Si solo estás ingresando la hora te la debería aceptar
ya que asumiría la fecha como 1900-01-01, el mensaje que
indicas lo envía cuando a un tipo smalldate le asignas un
campo datetime que tiene fechas fuera del rango permitido
por el smalldatetime (menor o igual 1899 y mayor a 2079
creo --revisa el BOL--).

2) Si siempre graba fecha y hora, ya que lo que guarda es
un campo compuesto de dos valores enteros de 4 bytes cada
uno (para el datetime), el primero es el número días que
hay desde el 1900-01-01 y el segundo el número de 3.33
milisegundos transcurridos en el día.

Saludos,
Ulises

Gente:

Tengo dos preguntas:

1.- Resulta que cuando quiero ingresar una hora (ej.


'10:30') en un campo SMALLDATETIME me sale un
error informando que no ha sido posible la conversión


entre DATETIME y SMALLDATETIME. La solución que
encontré es cambiar el diseño de la tabla a DATETIME. ¿Por


qué pasa esto?

2.- Cuando agrego una hora en un campo DATETIME (ej.


'10:30') me ingresa '01/01/1900 10:30 AM', esto
es lo que veo por lo menos en el Administrador


Corporativo. ¿Puedo ingresar sólo el tiempo y no la
fecha? ¿cómo?

Desde ya muchas gracias por su tiempo.

Saludos!

Mauricio López
Maldonado - Uruguay


.

Respuesta Responder a este mensaje
#4 Damon Hill {uy}
02/10/2004 - 21:58 | Informe spam
Gracias a los tres, voy a probar nuevamente, ahora con los datos que me dan y les cuento ;-)


Saludos!

Mauricio López
Maldonado - Uruguay
-
1) Si solo estás ingresando la hora te la debería aceptar
ya que asumiría la fecha como 1900-01-01, el mensaje que
indicas lo envía cuando a un tipo smalldate le asignas un
campo datetime que tiene fechas fuera del rango permitido
por el smalldatetime (menor o igual 1899 y mayor a 2079
creo --revisa el BOL--).

2) Si siempre graba fecha y hora, ya que lo que guarda es
un campo compuesto de dos valores enteros de 4 bytes cada
uno (para el datetime), el primero es el número días que
hay desde el 1900-01-01 y el segundo el número de 3.33
milisegundos transcurridos en el día.

Saludos,
Ulises
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida