SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ComponentZine(PlusPak)(AD)

タブページでクエリ結果を表示する.NETアプリケーションを作る

PlusPak for Windows Forms 6.0JのGcTabControlコントロールを使ったアプリケーションの作成~その2

  • このエントリーをはてなブックマークに追加

データベースの操作~その1

 データベースへの接続、クエリの実行、結果セットの表示はすべてコードから作成しますが、データベースファイルはプロジェクトに組み込んでおきます。使用するデータベースは、「ギター販売集計.mdb」というMicrosoft Accessで作成したデータベースで、「製品リスト」という簡単なテーブルを操作対象にします。

使用するデータベースのテーブル
使用するデータベースのテーブル

 このデータベースを、データベース構成ウィザードでプロジェクトに組み込んでおきます(コピーを出力しておくようにします)。

プロジェクトに組み込む
プロジェクトに組み込む

データ接続とクエリの実行処理

 データベースファイルをプロジェクトへ組み込んだら、OLEDBプロバイダを用いてデータベースに接続しクエリを実行します。この作業は、次の順序で行います。

  1. OleDbConnectionクラスのインスタンスを作成し、データベースに接続します。
  2. OleDbDataAdapterクラスとDataSetクラスのインスタンスを作成し、クエリ用文字列を用いて、OleDbDataAdapterクラスのFillメソッドでクエリを実行。そして、実行結果のデータテーブルをDataSetクラスのインスタンスに格納します。

 このプログラムでは、クエリ用SQL文字列を変えることで、いろいろなパターンのクエリが実行できるように、専用のプロシージャ(C#ではメソッド)を作成します。作成するプロシージャ(メソッド)は「db_run」で、sql文字列とタブページに表示するタイトル文字列、実行するクエリの番号(任意の数字)の3つを引数に持ちます。

 データベースはAccessのデータファイルなので、OLEDBプロバイダは「Microsoft.Jet.OLEDB.4.0」を使用します。接続するデータベースファイルは、既にプロジェクトに組み込んでいるので、ファイル名だけ指定します。

Visual Basic
Imports GrapeCity.Win.Containers
Public Class Form1

    Private Sub db_run(ByVal sqlstr As String, ByVal title As String, ByVal pos As Integer)
        Dim connString As String = String.Format("Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0}", "ギター販売集計.mdb")
        Dim conn As OleDb.OleDbConnection = New OleDb.OleDbConnection(connString)
        Dim adapter As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter(sqlstr, conn)
        Dim myDataSet As DataSet = New DataSet()
        adapter.Fill(myDataSet, "fill")
C#
using GrapeCity.Win.Containers;

namespace tabdb_cs
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void db_run(string sqlstr, string title, int pos)
        {
            string connString = String.Format("Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0}", "ギター販売集計.mdb");
            System.Data.OleDb.OleDbConnection conn  = new System.Data.OleDb.OleDbConnection(connString);
            System.Data.OleDb.OleDbDataAdapter adapter  = new System.Data.OleDb.OleDbDataAdapter(sqlstr, conn);
            DataSet myDataSet = new DataSet();
            adapter.Fill(myDataSet, "fill");

次のページ
データベースの操作~その2

修正履歴

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
ComponentZine(PlusPak)連載記事一覧

もっと読む

この記事の著者

瀬戸 遥(セト ハルカ)

8ビットコンピュータの時代からBASICを使い、C言語を独習で学びWindows 3.1のフリーソフトを作成、NiftyServeのフォーラムなどで配布。Excel VBAとVisual Basic関連の解説書を中心に現在まで40冊以上の書籍を出版。近著に、「ExcelユーザーのためのAccess再...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/4843 2010/02/01 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング