fosforo (Normal User)
Expert
Messaggi: 391
Iscritto: 06/04/2009
|
Ciao
L'obiettivo è aggiornare una tabella di un DB SQL.
Leggo il mio dato dal DB e popolo una TextBox:
txtName.Text = reader["name"].ToString().Replace(" ", "");
Riscrivo la TextBox con il nuovo valore.
A questo non riesco ad aggiornare il DB, sembra che il valore della TextBox rimanga quello vecchio
e nel DB ritrovo sempre lo stesso valore nonostante abbia riscritto i dati.
Grazie anticipatamente.
|
|
fosforo (Normal User)
Expert
Messaggi: 391
Iscritto: 06/04/2009
|
Risolto con:
txtName.Text = txtName.Text.Replace(" "," ");
Non so se è corretto ma funziona.
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6402
Iscritto: 03/01/2010
|
Io non ho capito nulla...
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
fosforo (Normal User)
Expert
Messaggi: 391
Iscritto: 06/04/2009
|
Hai ragione.
In più non funziona.
Rifo da capo.
Dovrei editare un campo di un DB SQL.
Ho pensato di creare una form con una TextBox che mi mostra il contenuto attuale nel DB:
txtName.Text = reader["name"].ToString().Replace(" ", "");
Ora vorrei riscrivere la TextBox e, dopo aver premuto un pulsante, il nuovo contenuto della TextBox
aggiorna i dati sul DB.
|
|
Mikelius (Member)
Expert
Messaggi: 525
Iscritto: 14/04/2017
|
Perchè usi il metodo Replace?
Non basta una semplice assegnazione?
Codice sorgente - presumibilmente C# / VB.NET |
record del DB=textBox.Text.ToString();
|
Ultima modifica effettuata da Mikelius il 29/08/2017 alle 12:24 |
|
fosforo (Normal User)
Expert
Messaggi: 391
Iscritto: 06/04/2009
|
Pensavo anch'io
Ma mi riscrive il valore letto dal DB.
Cioè,il valore letto dal DB è "TEST", lo vedo a video nella TextBox, riscrivo la TextBox come "PROVA",
e mi riscrive TEST nel DB.
Come se non prendesse quello che ho riscritto.
|
|
Mikelius (Member)
Expert
Messaggi: 525
Iscritto: 14/04/2017
|
posta il codice
|
|
fosforo (Normal User)
Expert
Messaggi: 391
Iscritto: 06/04/2009
|
Per leggere il DB:
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Stringa"].ConnectionString);
conn.Open();
e metto il dato nella TextBox:
txtName1.Text = reader["name"].ToString().Replace(" ", "");
Per riscrivere nel DB;
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionString["Stringa"].ConnectionString);
conn.Open();
string insertQuery = "UPDATE Users SET name = @name";
com.Parameters.AddWithValue("@name", txtName1.Text);
Spero sia sufficiente.
|
|
Mikelius (Member)
Expert
Messaggi: 525
Iscritto: 14/04/2017
|
Con conosco SQL , ma non credo si una cosa completamente diversa ragionare con esso:
Codice sorgente - presumibilmente Plain Text |
txtName1.Text = reader["name"].ToString().Replace(" ", "");
|
Qui mi sa che inserisci dentro txtName1 , la stringa reader["name"] sostituendone gli spazii.
Codice sorgente - presumibilmente Plain Text |
txtName1.Text = reader["name"].ToString();
|
Non sarebbe più giusto?
-------------------------------------------------
Codice sorgente - presumibilmente Plain Text |
com.Parameters.AddWithValue("@name", txtName1.Text)
|
Il metodo, AddWithValue (String, Object), come secondo parametro accetto un Object. Nel tuo caso non sarebbe la stringa su txtName, quindi
Codice sorgente - presumibilmente Plain Text |
com.Parameters.AddWithValue("@name", txtName1.Text.ToString() )
|
?
Ultima modifica effettuata da Mikelius il 29/08/2017 alle 15:57 |
|