grabar horas

19/02/2004 - 21:48 por Leonardo Beron | Informe spam
Hola amigos una consulta como puedo hacer para poder grabar solo horas en un
campo el caso es que cuando elijo datetime graba na fecha o debo hacer algo
mas para uqe me grbae una hora???

Gracias por su ayuda
Leo

Preguntas similare

Leer las respuestas

#1 Maximiliano D. A.
19/02/2004 - 21:52 | Informe spam
si el campo es datetime, proba con convert, pero cual es el problema en
guardar fecha+hora?


Salu2
Maxi
Buenos Aires Argentina
Desarrollador Microsoft 3 Estrellas .NET
[Maxi_accotto[arroba]speedy[punto]com[punto]ar
MSN:


"Leonardo Beron" escribió en el mensaje
news:
Hola amigos una consulta como puedo hacer para poder grabar solo horas en


un
campo el caso es que cuando elijo datetime graba na fecha o debo hacer


algo
mas para uqe me grbae una hora???

Gracias por su ayuda
Leo







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.581 / Virus Database: 368 - Release Date: 09/02/2004
Respuesta Responder a este mensaje
#2 ulises
19/02/2004 - 22:08 | Informe spam
El campo siempre te almacenará fecha y hora, si haces

CREATE TABLE tabla ( campo datetime )
go
INSERT INTO tabla VALUES ( '11:10:00' )
go
SELECT * FROM tabla

obtendrás :

campo
1900-01-01 11:10:00.000
(1 row(s) affected)

que es la fecha base. La única forma que veo de manejarlo
es a través de CONVERT

SELECT CONVERT(char(08),campo,108) from tabla

11:10:00
(1 row(s) affected)

Saludos,
Ulises

"Leonardo Beron" escribió


en el mensaje
news:
Hola amigos una consulta como puedo hacer para poder




grabar solo horas en
un
campo el caso es que cuando elijo datetime graba na




fecha o debo hacer
algo
mas para uqe me grbae una hora???

Gracias por su ayuda
Leo
Respuesta Responder a este mensaje
#3 Javier Loria
20/02/2004 - 15:47 | Informe spam
Hola Leonardo:
No existe en SQL un tipo de datos apropiado para la hora, DateTime es lo
mas cercano para va SIEMPRE asociado a una fecha. Asi que puedes usar la
hora concatenada a 1/1/1900.
Una alternativa, es es guardar la hora como la cantidad de minutos,
minutos o millisegundos a partir de las 00:00 y almacenarlos en un Entero
(SmallInt->Minutos, Integer->Segundos, Long->Milisegundos). Luego
construyes una funcion que usa la funcion DATEADD para convertir a DateTime.
La ultima alternativa es usar un CHAR(5) y almacenar el valor en
caracteres.
Dependiendo que lo que planeas hacer con los datos (calcular
diferencias, llevar bitacora, etc) cada alternativa ofrece ventajas o
desventajas.
Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.

Leonardo Beron escribio:
Hola amigos una consulta como puedo hacer para poder grabar solo
horas en un campo el caso es que cuando elijo datetime graba na fecha
o debo hacer algo mas para uqe me grbae una hora???

Gracias por su ayuda
Leo
Respuesta Responder a este mensaje
#4 Adrian D. Garcia
20/02/2004 - 20:05 | Informe spam
La otra forma de hacer esto es que no guardes la hora en una columna del
tipo datetime sino del tipo CHAR. De esa forma luego no tendrias problemas
con las conversiones, a menos que luego desees manipular esta hora con
codigo T-SQL.

Saludos
Adrian D. Garcia
MCSD
NDSoft Consultoria y Desarrollo

"ulises" wrote in message
news:128b701c3f72c$97d92d00$
El campo siempre te almacenará fecha y hora, si haces

CREATE TABLE tabla ( campo datetime )
go
INSERT INTO tabla VALUES ( '11:10:00' )
go
SELECT * FROM tabla

obtendrás :

campo
1900-01-01 11:10:00.000
(1 row(s) affected)

que es la fecha base. La única forma que veo de manejarlo
es a través de CONVERT

SELECT CONVERT(char(08),campo,108) from tabla

11:10:00
(1 row(s) affected)

Saludos,
Ulises

"Leonardo Beron" escribió


en el mensaje
news:
Hola amigos una consulta como puedo hacer para poder




grabar solo horas en
un
campo el caso es que cuando elijo datetime graba na




fecha o debo hacer
algo
mas para uqe me grbae una hora???

Gracias por su ayuda
Leo
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida