Inserimento data in DB

sabato 10 aprile 2004 - 12.49

ar Profilo | Newbie

Non riesco ad inserire le date con inclusa anche l'ora in un database SQLServer.

esaminate questo codice

dim orario as string=now()
dim inserisci as string="insert into (data) values ('"+oggi+"'")

eseguendo questo script mi viene sempre questo errore:
The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.

Come posso fare?

Brainkiller Profilo | Guru

Ciao,
puoi fare semplicemente così:

INSERT INTO Tabella (Campo) VALUES('2004-04-08 11:24:10.187')

oppure puoi creare una Stored Procedure in T-SQL su SQL Server e poi creare dei SqlParameter passandogli la data così come fai ora DateTime.Now

Se invece vuoi farlo così come hai scritto non è possibile, cerca di formattare la data così come indicato nell'esempio che ti ho fatto qui sopra.
Se usi DateTime.Now.ToString(yyyy-mm-dd) dovrebbe formattarti la data in quel modo.
ciao

david

ar Profilo | Newbie

DateTime.Now.ToString("yyyy-MM-dd") invece di DateTime.Now.ToString(yyyy-mm-dd)

comunque rimane il problema che non mi inserisce l'orario attuale ed io ho bisogno anche dell'orario.

ar Profilo | Newbie

Ho risolto con questa funzione


Function FormatNow(data as string, ora as string)
data=data
ora=ora

dim HH as string=mid(ora,1,2)
dim mm as string=mid(ora,4,2)


fulldata=data+" "+HH+":"+mm


End Function

Brainkiller Profilo | Guru

Si,
scusa dimenticanza mia :(
Puoi personalizzare la stringa come vuoi anche aggiungendo l'orario.
DateTime.Now.ToString("yyyy-MM-dd hh:mm")
oppure:
DateTime.Now.ToString("dd/mm/yyyy hh:mm")

insomma puoi decidere tu.
Ti consiglio questa via che è molto più flessibile rispetto ad usare la funzione Mid come un tempo.
ciao
david

ar Profilo | Newbie

Ho provato anche questo metodo DateTime.Now.ToString("dd/mm/yyyy hh:mm") però l'orario non viene formattato con i due punti che separe le ore dai minuti, ma bensì con il punto:

se io faccio:

dim oggi=DateTime.Now.ToString("yyyy-MM-dd hh:mm")

ho questo risultato
2004-04-12 09.45

l'unico modo in cui sono riuscito a formattare l'orario correttamente per poterlo inserire nel database è il MID
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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5