Domanda

nextUpdate può essere qualsiasi valore orario di data in passato.Sto cercando di aggiornare il campo nextUpdate alla data di oggi, ma mantenendo il tempo invariato e quindi aggiungere 8 ore.

ottengo

.

Errore durante la conversione della stringa in DateTime

T-SQLE:

UPDATE 
    business.dbo.db_schedule  
SET 
    nextUpdate = DATEADD(hh, 8, CONVERT(datetime, CONVERT(VARCHAR(8), GETDATE(), 111) + ' ' + CONVERT(VARCHAR(8), nextUpdate, 108), 111))  
WHERE
    sno = 8
.

Il formato datetime nella mia posizione è 111

È stato utile?

Soluzione

UPDATE business.dbo.db_schedule
SET nextUpdate= DATEADD(hh, 8,
                DATEADD(d, DATEDIFF(D,nextUpdate,Getdate()),
                          nextUpdate))
where sno=8
.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top