2012-10-25 147 views
2

我在issues updating my database。我創建了一個應用程序,採取customers name, phone, email, their computer details and the services。我想更新他們但我遇到一些麻煩。我將數據插入數據庫的方式就像這樣。C#Sql更新數據庫

private void btnCreate_Click(object sender, EventArgs e) 
     { 
      //string connString = "server=localhost;uid=*****;password=********;database=dbomonkworksinfo;"; 
      MySqlConnection conn = new MySqlConnection("server=localhost;uid=******;password=********;database=dbomonkworksinfo;"); 
      conn.Open(); 

try 
      { 
       MySqlCommand command = new MySqlCommand("Insert into tserviceinfo (First_Name, Last_Name, Date, Phone, Email, Tech, Brand, Model, OS, Type, PC_Issue) values (?First_Name, ?Last_Name, ?Date, ?Phone, ?Email, ?Tech, ?Brand, ?Model, ?OS, ?Type, ?PC_Issue)", conn); 
       command.Parameters.AddWithValue("?First_Name", tbFirstName.Text); 
       command.Parameters.AddWithValue("?Last_Name", tbLastName.Text); 
       command.Parameters.AddWithValue("?Date", tbDate.Text); 
       command.Parameters.AddWithValue("?Phone", tbPhone.Text); 
       command.Parameters.AddWithValue("?Email", tbEmail.Text); 
       command.Parameters.AddWithValue("?Tech", tbTech.Text); 
       command.Parameters.AddWithValue("?Brand", tbBrand.Text); 
       command.Parameters.AddWithValue("?Model", tbModel.Text); 
       command.Parameters.AddWithValue("?OS", tbOS.Text); 
       command.Parameters.AddWithValue("?PC_Issue", tbIssue.Text); 
       command.Parameters.AddWithValue("?Services", lvOrdered.Items); 

       if (rbDesktop.Checked) 
       { 
        command.Parameters.AddWithValue("?Type", "Desktop"); 
       } 
       else if (rbNotebook.Checked) 
       { 
        command.Parameters.AddWithValue("?Type", "Notebook"); 
       } 

       /** MySqlCommand command2 = new MySqlCommand("Insert into tpcinfo (Brand, Model, OS, PC_Issue, Services) values (?Brand, ?Model, ?OS, ?PC_Issue, ?Services)", conn); 
       command2.Parameters.AddWithValue("?Brand", tbBrand.Text); 
       command2.Parameters.AddWithValue("?Model", tbModel.Text); 
       command2.Parameters.AddWithValue("?OS", tbOS.Text); 
       command2.Parameters.AddWithValue("?PC_Issue", tbIssue.Text); 
       command2.Parameters.AddWithValue("?Services", lvOrdered.Items); 
       * Changed to only one table. No one besides me sees the behind the program. 
       * **/ 


       //command2.Parameters.AddWithValue("?type", SqlDbType.NVarChar).Value = type; 
       command.ExecuteNonQuery(); 
       conn.Close(); 

       tbFirstName.Clear(); 
       tbLastName.Clear(); 
       tbDate.Clear(); 
       tbEmail.Clear(); 
       tbBrand.Clear(); 
       tbIssue.Clear(); 
       tbTech.Clear(); 
       tbModel.Clear(); 
       tbPhone.Clear(); 
       tbOS.Clear(); 
       lvOrdered.Items.Clear(); 
       lblPrice.Text = "$0.00"; 

      } 
      catch (MySqlException ex) 
      { 
       MessageBox.Show("Can't connect to database\n" + ex.ToString()); 
      } 
     } 

我的問題是真的,how would I write an update statement?我已經看過上線,但我已經無法適應任何對我的需要,我畫一個空白。我正在研究這個程序,但是我已經停止了好幾個月,現在我真的畫了一個空白。任何幫助將不勝感激!我能夠查看輸入的數據,但現在更新是下一步!謝謝!

回答

1

它是如此簡單,

UPDATE tserviceinfo 
SET First_Name = ?First_Name, 
     Last_Name = ?Last_Name, 
     Date = ?Date, 
     Phone = ?Phone, 
     Email = ?Email, 
     Tech = ?Tech, 
     Brand = ?Brand, 
     Model = ?Model, 
     OS = ?OS, 
     Type = ?Type 
// WHERE condition here