Convertire stringa in data

martedì 08 febbraio 2005 - 18.51

logobeam Profilo | Newbie

SELECT tipo, ora =
case tipo
WHEN 'ACK' THEN ora
WHEN 'HST' THEN CONVERT(DATETIME,ora,105)
END
FROM storico

Questa select non mi funzione e mi restituisce il seguente errore:
"Syntax error converting datetime from character string."

Io in definitiva dovrei effettuare un dateadd sul campo 'ora' quando tipo = 'HST'
ma mi da sempre errore di overflow.
P.S.
ora è definito come varchar(10)

Grazie mille

Brainkiller Profilo | Guru

Hai provato a fare dei test modificando il terzo parametro della Convert (nel tuo caso il 105) ?

Di solito quel tipo di errore (overflow) capita quando sono invertiti mese e giorno e/o viceversa.
PRobabilmente nella data che stai utilizzando ci sarà mese o giorno superiore a 12. E' così ?

ciao
david

freeteo Profilo | Guru

ciao,
non vorrei dire 1a stupidaggine ma mi sembra che il tipo vada fra apice singolo...

tipo: convert('datetime', miocampo, 105)

ciao

GvnnRules Profilo | Senior Member

Mettiamo che dobbiamo convertire la data di oggi, io uso questa sintassi:

CONVERT(Datetime,'10/02/2005 00:00:00',105)

Ciaoz
Gvnn
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