MDB接続

using System.Data.OleDb;

//利用範囲が広い場合、グローバル変数で定義する
OleDbConnection myConn;
DataView dbRec;

// 1) SQL生成 strSQL(実行SQL)
// 2) MDB接続 myConn(接続情報)
// 3) SQL実行 dbRecへ格納
// 4) 取得結果利用
// 5) MDB終了

// —————————————– main
public void GetData(String KEY)
{
	//1) SQL生成 strSQL(実行SQL)
	//SQL Query
	String strSQL = “SELECT * FROM table WHERE index=’” + KEY + “‘”;

	//2) MDB接続 myConn(接続情報)
	//DB OPen
	this.dbConn();

	//3) SQL実行 dbRecへ格納
	//Data Source
	this.dbSet(strSQL);

	//4) 取得結果利用
	lblxxx.Text = dbRec[0].Row["field1"].ToString();
	txtxxx.Text = dbRec[0].Row[2].ToString();
	//フィールド番号指定時は最初を0として数える

	//eof
	if ( dbRec.Count == 0)
	{
	}

	//ex:Loop処理
	int intCNT= 0;
	while (intCNT < dbRec.Count) {
		lblxxx.Text = dbRec[ intCNT ].Row["field1"].ToString();
		txtxxx.Text = dbRec[ intCNT ].Row["field2"].ToString();
		intCNT++;
	}

	//5) MDB終了
	//DB Close
	this.dbClose();
}
// UPDATE,INSERT,DELETE実行
// —————————————– DB execute
public void dbExec(String strSQL)
{
	//Execute SQL
	OleDbCommand EXEC = new OleDbCommand(strSQL, myConn);

	try {
		EXEC.ExecuteNonQuery();
	}
	catch(OleDbException Ex) {
		Console.Write(Ex.ToString());
	}
	catch(Exception Ea) {
		throw Ea;
	}
}
// —————————————– DB connect
public void dbConn()
{
	try {
		String sConnectionString = “Provider=Microsoft.Jet.OLEDB.4.0; Data Source=xvax.mdb”;
		//OleDbConnection
		myConn = new OleDbConnection(sConnectionString);
		//Connection Open
		myConn.Open();
	}
	catch (Exception ex) {
		//Error Message
		MessageBox.Show(ex.ToString());
	}
}
// —————————————– Get data from MDB
public void dbSet(String strSQL)
{
	//DB Set
	DataSet dSet = new DataSet(“DataBase”);
	DataTable dTab = null;

	OleDbDataAdapter dAdapt = new OleDbDataAdapter(strSQL, myConn);
	dAdapt.Fill(dSet);

	dTab = dSet.Tables[0];

	//Data Source
	dbRec = new DataView(dTab);
}
// —————————————– DB Close
public void dbClose()
{
	myConn.Close();
}