[SQL] Quale data usare???

venerdì 22 febbraio 2008 - 10.10

marco.santilli Profilo | Junior Member

Nel tipo dati dei campi ci sono 2 soluzioni per le date:

-DateTime
-SmallDateTime

Non sono riuscito a capire la differenza

Me la potete dire???

Inoltre, quando utilizzare uno e quando l'altro????

Ciao e grazieeeeeeeee

alx_81 Profilo | Guru

>Non sono riuscito a capire la differenza
>Me la potete dire???
dai BOL:

datetime
from January 1, 1753, through December 31, 9999
accuracy: 3.33 milliseconds

smalldatetime
from January 1, 1900, through June 6, 2079
accuracy: 1 minute

Va da sè che già la precisione cambia. Oltre al range di date limitato dello smalldatetime, quest'ultimo approssima i primi 30 secondi (da 0 a 29) per difetto (il minuto più basso dell'intervallo) mentre per i secondi secondi al minuto successivo:

esempio
12/12/2005 10:50:36 --> 12/12/2005 10:51:00
12/12/2005 10:50:29 --> 12/12/2005 10:50:00

il datetime ha una precisione di 3,33 millisecondi.

esempi:
01/01/98 23:59:59.999 1998-01-02 00:00:00.000

01/01/98 23:59:59.995,
01/01/98 23:59:59.996,
01/01/98 23:59:59.997,
01/01/98 23:59:59.998 1998-01-01 23:59:59.997

01/01/98 23:59:59.992,
01/01/98 23:59:59.993,
01/01/98 23:59:59.994 1998-01-01 23:59:59.993

>Inoltre, quando utilizzare uno e quando l'altro????
In base a questi esempi dovresti essere in grado di scegliere. Quando devi dare priorità alla precisione più piccola (ad esempio sapere i secondi) utilizza datetime. Quando anche un minuto è sufficiente (potrebbe servirti anche solo la data senza l'ora) allora usa smalldatetime. Fino alla versione 2005 compresa non è possibile (purtroppo) separare data e ora, ma dalla 2008 avremo novità a riguardo (finalmente )

Il link che ti ho riassunto è il seguente:
http://msdn2.microsoft.com/en-us/library/ms187819.aspx
>
>Ciao e grazieeeeeeeee
di nulla!

Alx81 =)

http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5