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
ASP.NET 1.0/1.1
Formato data e formato stringa
mercoledì 31 maggio 2006 - 00.04
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Nicolaij
Profilo
| Newbie
5
messaggi | Data Invio:
mer 31 mag 2006 - 00:04
Ho un form in cui l'utente è chiamato a mettere una data del tipo gg/mm/aaaa, data che poi verrà salvata su db MS sqlserver in un campo di tipo date di uguale formato.
Al momento dell'executennquery viene rilevato un errore sui tipi di dati discordi.
Come posso aggirare il problema?
Esiste inoltre un modo per fare un controllo sui dati inseriti dall'utente?
Scusate le domande un po' stupide ma sono alle prime armi...
Grazie a tutti e buona serata
micto27
Profilo
| Senior Member
385
messaggi | Data Invio:
mer 31 mag 2006 - 06:17
>Ho un form in cui l'utente è chiamato a mettere una data del
>tipo gg/mm/aaaa, data che poi verrà salvata su db MS sqlserver
>in un campo di tipo date di uguale formato.
>Al momento dell'executennquery viene rilevato un errore sui tipi
>di dati discordi.
>Come posso aggirare il problema?
ovviamente non so come hai scritto il CommandText dell'oggetto SqlCommand
utilizzato per effettuare l'INSERT o l'UPDATE sul database.
Ipotizzo che tu abbia utilizzato un SqlCommand senza parametri e con il commandtext ottenuto
concatenando parti fisse "UPDATE miatabella set Data = " e parti variabili (i dati digitati sul form).
Io ti consigierei di usare invece dei command con parametri in quanto, oltre a risultare
molto più leggibili permettono anche di evitare problemi di tipizzazione come quello che
hai descritto.
Ne risulterebbe qualcosa del genere:
dim mioCommand as new SqlCommand
mioCommand.CommandText = "UPDATE miatabella SET Data1 = @data1 WHERE chiave = @id"
mioCommand.Parameters.Add("@data1", SqlDbType.DateTime).Value = CDate(Me.txtData1.text)
mioCommand.Parameters.Add("@id", SqlDbType.Int).Value = Cint(Me.txtID.text)
mioCommand.Connection = ....
mioCommand.ExecuteNonQuery
>
>Esiste inoltre un modo per fare un controllo sui dati inseriti
>dall'utente?
>
i validatori: ce ne sono di più tipi
verifica obbligatorietà di un certo campo
verifica conformità nei confronti di una regular expression
verifica range di valori
+ un tipo custom per sviluppare controlli più specifici.
Ciao, Michele
bluland
Profilo
| Guru
1.149
messaggi | Data Invio:
mer 31 mag 2006 - 08:16
inoltre potresti dare all'utente la possibilita' di inserire la data scegliendola da un calendario date cosi si e' piu' sicuri sull'inserimento....
saluti
ENzo
Nicolaij
Profilo
| Newbie
5
messaggi | Data Invio:
mer 31 mag 2006 - 19:14
Grazie gentilissimi, provo subito ^^
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 !