DataSetへの更新をデータベースへ反映させる手順とコードを紹介します。
はじめに
こちらの記事ではテーブルのレコードをDataGridViewに表示するシンプルなアプリケーションの作成手順を紹介しました。
UI
アプリケーションを実行します。ウィンドウが表示されDataGridViewにレコードが表示されます。
一番下の行に追記します。
アプリケーションを終了しサイドアプリケーションを実行します。レコードが表示されますが先ほど追記した内容は追加されていません。データベースへの反映はされていないことがわかります。
データベースへの反映
事前準備
こちらの記事のテーブルのレコードをDataGridViewに表示するシンプルなアプリケーションを作成します。
UI
下図のUIを作成します。先のプログラムのUIにボタンを1つ追加します。
コード
下記のコードを記述します。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SimpleDataUpdate
{
public partial class FormMain : Form
{
public FormMain()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// TODO: このコード行はデータを 'iPentecSandBoxDataSet.SimpleProduct' テーブルに読み込みます。
//必要に応じて移動、または削除をしてください。
this.simpleProductTableAdapter.Fill(this.iPentecSandBoxDataSet.SimpleProduct);
}
private void button1_Click(object sender, EventArgs e)
{
simpleProductTableAdapter.Update(iPentecSandBoxDataSet);
}
}
}
解説
フォームに作成・配置されているTableAdapterコンポーネントのUpdateメソッドを呼び出します。Updateメソッドの引数にはデータセットを与えます。データセットもフォームに作成・配置されているデータセットコンポーネントを用います。
実行結果
プロジェクトを実行します。下図のウィンドウが表示されます。最後の行にレコードを追記します。
buttonをクリックします。追記したレコードがデータベースに反映されます。idのフィールドのIDがTrueになっている場合、自動で採番されます。
プログラムを終了し、再度実行すると先ほど追加したレコードがDataGridViewに表示されます。追加したレコードがデータベースに追加されていることが確認できました。
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
- Windows Form TableAdapter アプリケーション
最終更新日: 2024-01-07
作成日: 2012-10-23
- Windows Form TableAdapter アプリケーション