SqlHints.com
DateTime2 é o novo tipo de dados introduzido no servidor Sql 2008 para armazenar data e valor de tempo. Como para o MSDN, a Microsoft sugere usar este novo tipo de dados para um novo trabalho em vez de DateTime.
A tabela seguinte resume algumas das principais diferenças entre este novo DateTime2 e o tipo de dados de Datetimia anterior.
DateTime | DateTime2 | |
Min Value | 1753-01-01 00:00:00 | 0001-01-01 00:00:00 |
Max Value | 9999-12-31 23:59:59.997 | 9999-12-31 23:59:59.9999999 |
Tamanho de Armazenamento | 8 Bytes | 6 a 8 bytes Nota: o Parâmetro n é opcional e se não for especificado, em seguida, fracionário segundos precisão de 7 dígitos e pode ser de 0 a 7 dígitos. For fractional seconds precision <3, takes 6 bytes For fractional seconds precision 3 or 4 it will take 7 bytes For fractional seconds precision >4 it will take 8 bytes |
Usage | Declare @now datetime | Declare @now datetime2(7) |
Compliance | Is not an ANSI/ISO compliant | Is an ANSI/ISO compliant |
Data e Hora Actuais função | GetDate() – retorna DB Data e Hora Actuais do Tipo de Dados DateTime
Exemplo: SELECIONE GETDATE() |
SYSDATETIME()– Ele retorna DB Data e Hora Actuais do Tipo de Dados DateTime2
Exemplo:SELECIONE SYSDATETIME() |
+/- dias | FUNCIONA
Exemplo: |
FALHA – a Necessidade de usar apenas a função DateAdd
Exemplo: |
DateTime2 com precisão de frações de segundos a 3 é o mesmo tipo de dados DateTime. And DateTime2 (3) uses 7 bytes of storage instead of 8 byte which old DateTime datatype uses and it also provides higher date range (i.e. 0001-01-01 a 9999-12-31) em comparação com o tipo de dados DateTime . Vejamos agora isto com um exemplo.:
DECLARE @nowDateTime DATETIME = GETDATE(), @nowDateTime2 DATETIME2(3)= SYSDATETIME()SELECT DATALENGTH(@nowDateTime) 'DateTime Storage Size', DATALENGTH(@nowDateTime2) 'DateTime2(3) Storage Size'
Result:DateTime Storage Size DateTime2 Storage Size --------------------- ---------------------- 8 7
LEIA TAMBÉM
- Varchar vs NVarchar
- Varchar vs Varchar(MAX)
- Char vs Varchar
- Texto vs Varchar(Max.)
- União vs Union All
- DateTime vs DateTime2
- SET QUOTED_IDENTIFIER ON vs SET QUOTED_IDENTIFIER OFF
- Procedimento Armazenado vs Função Definida pelo Usuário
- Chave Primária vs Única Tecla
- RAISERROR vs JOGAR
- Tabela Temporária vs Variável de Tabela
- Len() vs Datalength()
- Sequência vs Identidade
- DATEDIFF vs DATEDIFF_BIG
- LEFT JOIN vs ESQUERDA OUTER JOIN
- DIREITO de ASSOCIAÇÃO vs RIGHT OUTER JOIN
- JUNTAR vs INNER JOIN
- LEFT OUTER JOIN vs RIGHT OUTER JOIN
- SMALLDATETIME vs DATETIME