これは、実行する必要があることの単なる擬似コードです
string cmdText = @"UPDATE t_pi_Clients
SET ClientName = @ClientName,
PostalAdd = @PostalAdd,
Telephone = @Telephone,
Fax = @Fax,
.... etc ....
WHERE ClientCode = @ClientCode";
using(MySqlConnection cn = new MySqlConnection(.....))
using(MySqlCommand cmd = new MySqlCommand(cmdText, cn))
{
cn.Open();
cmd.Parameters.AddWithValue("@ClientName", txtboxClientName.Text);
cmd.Parameters.AddWithValue("@PostalAdd", txtboxPostalAddress.Text);
....etc etc...
cmd.Parameters.AddWithValue("@ClientCode", textboxClientCode.Text);
int rowsUpdated = cmd.ExecuteNonQuery();
if(rowsUpdated > 0)
{
// extract the code that loads DataGridView1 from the Form_Load
// and create a reusable method that you could call from here
}
}
まず、UPDATE
を使用してSQLコマンドテキストを作成します 句。主キー(レコードを一意に識別するフィールド)はClientCode
であると想定しています。 フィールド。
次に、接続とコマンドを作成します。コマンドパラメータコレクションに、TextBoxから値を取得するテキストに必要なパラメータを入力します。
ExecuteNonQuery
を呼び出します。 値を保存します。
成功した場合は、datagridviewを更新または再ロードする必要があります。最善のアプローチは、現在の行のグリッドビューセルにテキストボックスからの新しい値を1つずつ設定するか、form_loadで使用されるコードを抽出してグリッドを埋め、ボタンから呼び出すことができる新しいメソッドを作成することです。イベントをクリックします。 (ただし、レコードが多い場合は遅くなる可能性があります)