Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Aggiornare TextBox
Forum - C# / VB.NET - Aggiornare TextBox

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
fosforo (Normal User)
Expert


Messaggi: 391
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 8:34
Martedì, 29/08/2017
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.

PM Quote
Avatar
fosforo (Normal User)
Expert


Messaggi: 391
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 8:58
Martedì, 29/08/2017
Risolto con:

txtName.Text = txtName.Text.Replace(" "," ");

Non so se è corretto ma funziona.

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6402
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 11:42
Martedì, 29/08/2017
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à.
PM Quote
Avatar
fosforo (Normal User)
Expert


Messaggi: 391
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 11:57
Martedì, 29/08/2017
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.


PM Quote
Avatar
Mikelius (Member)
Expert


Messaggi: 525
Iscritto: 14/04/2017

Segnala al moderatore
Postato alle 12:19
Martedì, 29/08/2017
Perchè usi il metodo Replace?
Non basta una semplice assegnazione?

Codice sorgente - presumibilmente C# / VB.NET

  1. record del DB=textBox.Text.ToString();


Ultima modifica effettuata da Mikelius il 29/08/2017 alle 12:24
PM Quote
Avatar
fosforo (Normal User)
Expert


Messaggi: 391
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 12:33
Martedì, 29/08/2017
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.

PM Quote
Avatar
Mikelius (Member)
Expert


Messaggi: 525
Iscritto: 14/04/2017

Segnala al moderatore
Postato alle 12:36
Martedì, 29/08/2017
posta il codice

PM Quote
Avatar
fosforo (Normal User)
Expert


Messaggi: 391
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 14:09
Martedì, 29/08/2017
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.

PM Quote
Avatar
Mikelius (Member)
Expert


Messaggi: 525
Iscritto: 14/04/2017

Segnala al moderatore
Postato alle 15:56
Martedì, 29/08/2017
Con conosco SQL , ma non credo si una cosa completamente diversa ragionare con esso:


Codice sorgente - presumibilmente Plain Text

  1. 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

  1. txtName1.Text = reader["name"].ToString();


Non sarebbe più giusto?

-------------------------------------------------


Codice sorgente - presumibilmente Plain Text

  1. 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

  1. com.Parameters.AddWithValue("@name", txtName1.Text.ToString() )


?





Ultima modifica effettuata da Mikelius il 29/08/2017 alle 15:57
PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo