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 2.0 / 3.5 / 4.0
Parametri nulli
sabato 04 agosto 2007 - 19.59
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
_J_
Profilo
| Senior Member
273
messaggi | Data Invio:
sab 4 ago 2007 - 19:59
ragazzi buona sera!
ho creato una insert che inserisce dei dati presi da opportune txtbox e droplist mediante opportuni parametri.
a runtime però mi dice sempre
'formato stringa di input errato'
quando non seleziono nulla dalle droplist (notare che i campi del db relativi accettano i null...)
da premettere che le txbox sono 'correlate' alle droplist secondo questa 'meccanica':
in base al nome scelto nella drop ottengo il relativo valore in una textbox, e prendo il valore dalla textbox e lo uso nella insert.
le drop prendono i valori da database, e siccome volevo che in cima alla drop mi dicesse qualcosa del tipo 'scegli un nome', nel source aspx ho aggiunto un datalistitem di nome 'seleziona un nome' e di valore ="" (cioè vuoto...)
ebbene, quando non seleziono nulla dalle drop mi dà quel problema della stringa errata ,e penso sia collegato al value="" dell'item aggiunto...
ora non lo so se ci ho azzeccato, ma come potrei gestire i valori ""?
_J_
"Chi fa domande rischia di sembrare stupido,
chi non ne fa rischia di restare stupido..."
"Conosco me stesso? No, non parlo con gli estranei..."
nullatore
Profilo
| Junior Member
191
messaggi | Data Invio:
dom 5 ago 2007 - 07:56
Se non viene selezionato nulla nella DROP immagino che non ci sia nulla scritto nel TXB.Giusto?
Quindi è il problema è nell' INSERT quando la TXB è vuota. Ho capito bene?
~nullatore~
mai dire corto circuito virtuale
_J_
Profilo
| Senior Member
273
messaggi | Data Invio:
dom 5 ago 2007 - 08:29
sì, esatto, il problema è proprio quello...e se l'intuizione mi funziona dovrei associare il vuoto delle textbox al null.... il problema è che non so come farlo visto che con i null non ho avuto molto spesso a che fare..
_J_
"Chi fa domande rischia di sembrare stupido,
chi non ne fa rischia di restare stupido..."
"Conosco me stesso? No, non parlo con gli estranei..."
nullatore
Profilo
| Junior Member
191
messaggi | Data Invio:
dom 5 ago 2007 - 15:33
puoi per esempio scrivere (sto scrivendo al volo,,,speriamo non ci siano errori)
cmd.Parameters.Add("@par1", SqlDbType.VarChar,30);
cmd.Parameters["@par1"].Value = (string.IsNullOrEmpty(TuaTextBox.Text))?(DBNull.Value):(TuaTextBox.Text)
N.B. cmd è un SqlCommand.
Oppure se stai usando una storeprocedure puoi scrivere (dentro la SP) il parametro in questione con valore di default uguale a NULL, cosi poter scrivere nel tuo codice
if (!string.IsNullOrEmpty(TuaTextBox.Text))
{
cmd.Parameters.Add("@par1", SqlDbType.VarChar,30);
cmd.Parameters["@par1"].Value = TuaTextBox.Text;
}
~nullatore~
mai dire corto circuito virtuale
_J_
Profilo
| Senior Member
273
messaggi | Data Invio:
dom 5 ago 2007 - 15:54
e se provassi a settare i null come default direttamente nelle tabelle del database???
che ne dici?
_J_
"Chi fa domande rischia di sembrare stupido,
chi non ne fa rischia di restare stupido..."
"Conosco me stesso? No, non parlo con gli estranei..."
nullatore
Profilo
| Junior Member
191
messaggi | Data Invio:
dom 5 ago 2007 - 18:19
>e se provassi a settare i null come default direttamente nelle
>tabelle del database???
>che ne dici?
Non serve mettere ad una colonna il "NULL" come default.
Se la tua insert non impone un valore per quella colonna automaticamente viene scritto NULL.
~nullatore~
mai dire corto circuito virtuale
ghio
Profilo
| Newbie
41
messaggi | Data Invio:
dom 5 ago 2007 - 19:16
prova:
cmd.Parameters.Add("@par1", SqlDbType.VarChar,30);
if (!string.IsNullOrEmpty(TuaTextBox.Text))
{
cmd.Parameters["@par1"].Value = TuaTextBox.Text;
}
else
{
cmd.Parameters["@par1"].Value =DBNull.Value;
}
la guida di vusual studio riporta a proposito della classe DBNull:
Questa classe viene usata per indicare l'assenza di un valore noto, generalmente in un'applicazione di database.
Ciao, M
_J_
Profilo
| Senior Member
273
messaggi | Data Invio:
dom 5 ago 2007 - 21:27
sì, ho modificato il codice di nullatore ed ho fatto proprio come dici tu, e funziona alla perfezione, senza impostare null o altro..
era con il dbnull.value che non andavo d'accordo, ma alla fine ci siamo capiti
grazie ad entrambi!
_J_
"Chi fa domande rischia di sembrare stupido,
chi non ne fa rischia di restare stupido..."
"Conosco me stesso? No, non parlo con gli estranei..."
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 !