簡體   English   中英

如何從Datagridview C#更新數據庫

[英]How to update DB from Datagridview c#

如何從Datagridview c#更新數據庫? 我的項目適用於數據庫中的加載數據表,但無法更新到數據庫中。它是加載數據按鈕

private void button2_Click(object sender, EventArgs e)
{
        string connectionString;

        connectionString = "Server=localhost;User Id=root; Password=1234; Database=db2; Pooling=false;CharSet=tis620;";
        connection = new MySqlConnection(connectionString);
        sda = new MySqlDataAdapter("Select * from data Where Id = '" + comp.Text.Trim() + "'", connection);

        dt = new DataTable();
        sda.Fill(dt);
        Table1.DataSource = dt;

}

和更新按鈕

private void button3_Click(object sender, EventArgs e)
{

        cmdbl = new MySqlCommandBuilder(sda);

        sda.Update(dt);
        MessageBox.Show("Save data complete");

}

我按照這個剪輯從datagridview中插入,刪除和更新數據庫中的數據 ,但我做不到。對不起,我的英語我說得還不夠好,謝謝您的回答。

假設您已配置UpdateCommand。 更新后嘗試dt.AcceptChanges()

private void button3_Click(object sender, EventArgs e)
{

    cmdbl = new MySqlCommandBuilder(sda);

    sda.Update(dt);
    dt.AcceptChanges()
    MessageBox.Show("Save data complete");

  }

否則,請遵循MSDN

最低要求是,必須設置SelectCommand屬性,以便自動命令生成起作用。 由SelectCommand屬性檢索的表模式確定自動生成的INSERT,UPDATE和DELETE語句的語法。 DbCommandBuilder必須執行SelectCommand才能返回構造INSERT,UPDATE和DELETE SQL命令所需的元數據。 結果,有必要額外訪問數據源,這可能會影響性能。 為了獲得最佳性能,請顯式指定命令,而不要使用DbCommandBuilder。 SelectCommand還必須至少返回一個主鍵或唯一列。 如果不存在,則會生成InvalidOperation異常,並且不會生成命令。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM