locked
Horas RRS feed

  • Pergunta

  • Boas

    Como fazo para gravar apenas as horas?

    formato: hh:mm:ss

    Utilizo es comando mas não esta a dar.

    command.Parameters.Add("@horas", SqlDbType.Time).Value = TimeOfDay

    O campo na bd deve estar fomato como?

    Obrigdo

    quinta-feira, 12 de janeiro de 2012 18:21

Respostas

Todas as Respostas

  • Boa Noite,

    Se estiver com o SQL Server 2008 ou superior, use o tipo de dados TIME no seu banco de dados.

    [ ]s,

    Gustavo Maia Aguiar
    Blog: http://gustavomaiaaguiar.wordpress.com
    Vídeos: http://www.youtube.com/user/gmasql


    Classifique as respostas. O seu feedback é imprescindível
    quinta-feira, 12 de janeiro de 2012 21:31
  • Boas

    E utilizo este comando?

     

    Obrigado

    sexta-feira, 13 de janeiro de 2012 00:08
  • Flashed,

    Não isso não é um comando mas sim um novo Tipo de Dados que foi introduzido no SQL Server 2008 para armazenar somente valores no formato de horas.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    sexta-feira, 13 de janeiro de 2012 00:18
    Moderador
  • Ficou assim:

    Com este código:

    command.Parameters.Add("@ horas ", SqlDbType.DateTimeOffset).Value = TimeOfDay

    Na bd fica assim:

    09:48:12.0000000

     

    Porque tantos zeros?

    sexta-feira, 13 de janeiro de 2012 09:50
  • Bom Dia,

    Os zeros é porque o TIME tem uma precisão bem maior do que segundos. Você pode utilizar o tipo TIME(0) ao invés de simplesmente TIME. Se usar TIME(0), a precisão será até segundos.

    [ ]s,

    Gustavo Maia Aguiar
    Blog: http://gustavomaiaaguiar.wordpress.com
    Vídeos: http://www.youtube.com/user/gmasql


    Classifique as respostas. O seu feedback é imprescindível
    sexta-feira, 13 de janeiro de 2012 11:58
  • hehe nunca me lembrei dessa. Porque o que fica entre parenteses é a precisão do campo né?

    Como nvarchar(255). 255 é o numero de digitos.

     

    Obrigado

    sexta-feira, 13 de janeiro de 2012 12:07
  • Sim... Exatamente 


    Classifique as respostas. O seu feedback é imprescindível
    sexta-feira, 13 de janeiro de 2012 16:09