Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    1

    [c# update di un valore nel database tramite textbox]

    Salve a tutti stò programmando in c# con visual studio 2010 e microsoft SQL server.

    Ho creato una parte di codice per inserire dei dati di un utente tra cui Id nome cognome ecc..

    Ora vorrei poterli modificare ma ogni volta che tento esce questo errore:
    error invalid column name 'id'

    il codice per la parte di modifica è ils eguente:

    codice:
    private string Update()         { 
                string returnValue = string.Empty; 
                 //  MODIFICARE I DATI   
               string varIDutente = this.txtIDutente.Text;  
               string varName = this.txtName.Text; 
                string varSurname = this.txtSurname.Text;   
              DateTime varDate = this.dateTimePicker1.Value;
                 string varAddress = this.txtAddress.Text;  
               string varCity = this.txtCity.Text;    
             string varNationality = this.txtNationality.Text;  
                 Console.WriteLine("i dati sono stati modificati!");  
               // Per prima cosa si crea una connessione "conn" mediante SqlConnection con i dati del server           
      SqlConnection cnn = new SqlConnection();   
              //  settare la CNNSTR   
              cnn.ConnectionString = System.Configuration.ConfigurationSettings.AppSettings["CnnStr"].ToString();   
              //  aprirla la CNNSTR        
         cnn.Open();          
       System.Console.WriteLine(" Connection Succesful"); 
    // messaggio di connessione avvenuta con successo  
               //seleziono la tabella e invio i dati da inserire con il comando cmd.CommandText           
      SqlCommand cmd = new SqlCommand("SELECT * FROM Utenti", cnn);  
               cmd.Connection = cnn;   
              cmd.CommandText = "UPDATE Utenti SET name = @varName WHERE id = @varIDutente";           
         cmd.Parameters.Add("@varIDutente", SqlDbType.NVarChar).Value = varIDutente;           
      cmd.Parameters.Add("@varName", SqlDbType.NVarChar).Value = varName;              try       
          {        
             int rows = cmd.ExecuteNonQuery(); 
                }          
       catch (Exception ex)     
            {                 returnValue = ex.Message;             }      
                                     
      // chiuderla la CNNSTR       
          cnn.Close();       
          System.Console.WriteLine("Connection Closed"); // Messaggio connessione chiusa            
      
                return returnValue;         }
    potreste segnalarmi per caso dove ho sbagliato?

    la mia query è la seguente:

    SELECT TOP 1000 [IDutente]
    ,[Username]
    ,[Surname]
    ,[Date of birth]
    ,[Address]
    ,[City]
    ,[Nazionality]
    FROM [TRAINING].[dbo].[Utenti]

  2. #2
    l'errore sembra essere nella tua query di update.

    da quello che scrivi, sembra che la colonna chiave della tabella sia idUtente, mentre tu hai scritto questo:

    codice:
    cmd.CommandText = 
    "UPDATE Utenti 
    SET name = @varName 
    WHERE id = @varIDutente"
    e giustamente "id" non esiste

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.