2013-03-07 3 views
0

Я пытаюсь обновить мою базу данных с помощью кнопки формы Windows на C#. Он не показывает никаких ошибок при запуске кода, который я собираюсь показать, но он не меняет данные в базе данных или сетке данных.Кнопка обновления не работает

private void update_Click(object sender, EventArgs e) 
{ 
    SqlConnection NewCon = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\ASPNET\cd\cdcwk2\cddatabase.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"); 
    SqlCommand cmd = new SqlCommand("UPDATE cdstock set cd_title='" + cdtext.Text + "', artist='" + artisttext.Text + "',genre='" + genretext.Text + "', rating=" + ratingtext.Text + ", cd_discription='" + distext.Text + "' where cd_id =" + idtext.Text + ";", NewCon); 
    MessageBox.Show("UPDATE cdstock set cd_title='" + cdtext.Text + "', artist='" + artisttext.Text + "',genre='" + genretext.Text + "', rating='" + ratingtext.Text + "', cd_discription='" + distext.Text + "' where cd_id ='" + idtext.Text + "'"); 

    NewCon.Open(); 

    cmd.ExecuteNonQuery(); 

    NewCon.Close(); 
    MessageBox.Show("Record Has Now Been UPDATED!!"); 

} 
+0

Вы пытались вручную запустить отображаемый запрос? –

+0

Вы запустили созданный комманд, используя студию управления SQL или другие SQL-клиенты? –

+1

Что делает 'cmd.ExecuteNonQuery();' возвращает? –

ответ

0

Привет, я нашел решение, и он отлично работает сейчас, спасибо за ваше время. Решение ниже.

   String NewCon = @"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\ASPNET\cd\cdcwk2\cddatabase.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"; 

     SqlConnection con = new SqlConnection(NewCon); 
     SqlCommand cmd = new SqlCommand(); 

     cmd.CommandText = "UPDATE cdstock set cd_title='" + cdtext.Text + "', artist='" + artisttext.Text + "',genre='" + genretext.Text + "', cd_discription='" + distext.Text + "', rating=" + ratingtext.Text + " where cd_id = " + dataGridView1.CurrentRow.Cells[0].Value; 
     cmd.Connection = con; 
     cmd.Connection.Open(); 

     cmd.ExecuteNonQuery(); 
     cmd.Connection.Close(); 

cddatabaseDataSet3.GetChanges(); this.cdstockTableAdapter.Fill (this.cddatabaseDataSet3.cdstock);

 MessageBox.Show("Record Has Now Been UPDATED!!"); 
Смежные вопросы