Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Problema con DateAdd ed i millisecondi
venerdì 15 luglio 2011 - 19.20
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
dompa72
Profilo
| Senior Member
245
messaggi | Data Invio:
ven 15 lug 2011 - 19:20
Ho due campi uno con la data e l'altro con l'indicazione dei millisecondi, con la funzione DateAdd vorrei sapere perché non mi restituisce il risultato correttamente ma viene approssimato in un modo che non capisco. Purtroppo non posso cambiare il formato da datetime in datetime2.
Il database è Sql Server 2005 (quindi non esiste il DateTime2)
Esiste un modo per risolvere???
un esempio
USE tempdb;
CREATE TABLE dbo.foo(
DataRiga datetime NOT NULL,
Millisecondi smallint not null
);
INSERT dbo.foo
VALUES ('20110620 00:00:01', 1)
, ('20110620 00:00:01', 2)
, ('20110620 00:00:01', 3)
, ('20110620 00:00:01', 4);
select * from dbo.foo;
SELECT DATEADD(millisecond, millisecondi, datariga) as DataCompleta
from dbo.foo;
/* Output:
DataRiga Millisecondi
----------------------- ------------
2011-06-20 00:00:01.000 1
2011-06-20 00:00:25.000 2
2011-06-20 00:00:55.000 3
2011-06-20 00:01:16.000 4
DataCompleta
-----------------------
2011-06-20 00:00:01.000
2011-06-20 00:00:25.003
2011-06-20 00:00:55.003
2011-06-20 00:01:16.003
*/
DROP TABLE dbo.foo;
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
ven 15 lug 2011 - 20:24
>Esiste un modo per risolvere???
No, dato che l'accuratezza del data type datetime è pari a 3,33ms quindi i risultati saranno arrotondati ad incrementi di .000, .003, o .007 secondi.
Come sempre trovi tutto sui Books Online:
http://technet.microsoft.com/en-us/library/ms187819.aspx
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
dompa72
Profilo
| Senior Member
245
messaggi | Data Invio:
ven 15 lug 2011 - 21:06
>>Esiste un modo per risolvere???
>No, dato che l'accuratezza del data type datetime è pari a 3,33ms
>quindi i risultati saranno arrotondati ad incrementi di .000,
>.003, o .007 secondi.
>Come sempre trovi tutto sui Books Online:
>
http://technet.microsoft.com/en-us/library/ms187819.aspx
>
>Ciao!
>--
>Lorenzo Benaglia
>Microsoft MVP - SQL Server
>
http://blogs.dotnethell.it/lorenzo/
ho trovato anche questo documento
http://stackoverflow.com/questions/1334143/sql-server-datetime2-vs-datetime
ma per avere una precisione al millesimo con sqlserver 2005 che devo fare???
Per ora ho aggiornato la macchina al 2008 sperando di non avere problemi con lo SCADA.
Grazie della risposta
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
ven 15 lug 2011 - 21:09
>ma per avere una precisione al millesimo con sqlserver 2005 che
>devo fare???
SQL Server 2005 non offre alcun data type di tipo data e ora con tale precisione.
>Per ora ho aggiornato la macchina al 2008 sperando di non avere
>problemi con lo SCADA.
Cos'è lo "SCADA"?
>Grazie della risposta
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
dompa72
Profilo
| Senior Member
245
messaggi | Data Invio:
ven 15 lug 2011 - 23:18
>>ma per avere una precisione al millesimo con sqlserver 2005 che
>>devo fare???
>SQL Server 2005 non offre alcun data type di tipo data e ora
>con tale precisione.
>
>>Per ora ho aggiornato la macchina al 2008 sperando di non avere
>>problemi con lo SCADA.
>Cos'è lo "SCADA"?
lo SCADA è un sistema di supervisione per macchine di officina, oltre alla supervisione consento anche di interfacciare l'uomo alla macchina (HMI Human Machine Interface).
su questo sono abbastanza "ferrato"
http://it.wikipedia.org/wiki/SCADA
http://www.ing.unisi.it/biblio/ebook/sistemi_scada.pdf
uno dei più utilizzati è www.wonderware.it/
oppure quello della rockwell automation (
http://www.rockwellautomation.com/it/rockwellsoftware/factorytalk/
)
oppure quello Siemens (
http://www.automation.siemens.com/mcms/human-machine-interface/en/visualization-software/scada/Pages/Default.aspx
)
Grazie ancora
>
>>Grazie della risposta
>Prego.
>
>Ciao!
>--
>Lorenzo Benaglia
>Microsoft MVP - SQL Server
>
http://blogs.dotnethell.it/lorenzo/
Torna su
Stanze Forum
Elenco Threads
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 !