Visual Basic 2005 ここが便利!IDE編

第12回 ドラッグ&ドロップ一発でDB連携アプリを完全構築!

株式会社ピーデー 川俣 晶
2005/12/14
Page1 Page2 Page3

Visual Studio 2005や.NET Framework 2.0の登場とともに、プログラミング言語であるVisual Basic .NETも「Visual Basic 2005」へとバージョン・アップする。この新しいVisual Basicには、言語仕様の面でも統合開発環境の面でも、プログラミングを楽にする新機能が満載だ。本連載ではその中でも特に注目すべき便利な機能を1つずつピックアップしながら紹介していく。

Back Issue
1
“My”はクラスの海からVBプログラマを救う!?
2
型指定されたコレクションを実現するジェネリック
3
自動生成コードを分離、ソースをすっきりパーシャル・クラス
4
Background Workerで夢のマルチスレッドがついに!
5
Usingステートメントで簡単、確実にファイルをクローズ
6
演算子のオーバーロードで独自の型も‘+’で足し算!

7

どう書くんだっけ? を「コード・スニペット」で一発挿入!
8
複雑なオブジェクトもマウスを置くだけで中身が見える! デバッガのデータヒント
9
単なるスペル訂正ではないオートコレクトと復活したデザイン時の直接実行!
10
日常的な使い勝手を向上させる3つの小さな改良
11 ラベルとテキストボックスのきれいな並べ方とは!?

さらに洗練されたVisual Basic 2005のデータベース連携

 知っている人は知っていると思うが、筆者は最近XMLデータベース(以下、XMLDB)の世界にかかわっている。そこで訴えかけることは、リレーショナル・データベース(RDB)ではうまく扱えないデータは実在し、それを扱うためにXMLDBは有益だということである。このような考え方は、程度の差こそあれ、おおむね開発者の共通認識として存在すると考えてよいと思う。

 例えば、SQL Server 2005が持つXML型は、RDBにXML形式のデータを取り込んでいくものであって、RDBの死角をXMLで補っていく試みの1つと見てよいだろう。つまり、データベースのXMLDB指向の流れは確かにあると見てよいと思う。

 しかし、「だから今日からRDBよりXMLDBだ!」と声高に叫ぶことができるかというと、そうではない。なぜかといえば、まだ普及が始まったばかりのXMLDBと比較して、すでに円熟の域に達したといえるRDBは、圧倒的に優れた使い勝手を実現しているからだ。

 特に便利なツールやライブラリの整備が圧倒的に進んでいるVisual Basicの世界は格別といえる。何しろ、日本語版が発売されなかったVisual Basic 3.0の段階で、Visual Basicのパッケージ内にJetデータベース・エンジン(=Microsoft Accessでも使われているファイル・ベースのデータベース)を組み込んでしまうという荒技を見せて以来、データベースとは一心同体であるかのように緊密な連携を進化させている。

 もはや、Visual Basicとデータベースを分けて考えることは、さして意味がない。もちろん、Visual BasicとSQL Serverは別商品ではあるが、データベースを扱うための機能一式はVisual Basicの中に一体不可分の機能として洗練度を加速させていっている。長い時間をかけて洗練されてきた使い勝手の良さは、大きな魅力としてそこにある。いかにデータベースでのXMLの優秀さを述べたところで、この使い勝手の良さの魅力を消し去ることはできない。

 そして、Visual Basic 2005は、「データソース・ウィンドウ」という新機能によって、この魅力をさらに新しい高みに引き上げたといえる。今回は、データソース・ウィンドウが可能とする2つの機能性について紹介したいと思う。1つは地味ではあるが重要な「渋い機能」、もう1つは、ドラッグ&ドロップ一発でこんなことまで! と驚かされる「派手な機能」である。

 まずは「渋い機能」から見ていくことにしよう。

データソースの変更も一発完了!

 すでに述べたように、Visual Basicにはデータベースを扱うための豊富な機能があり、それを使って手軽にデータベースと通信するプログラムを作成できる。しかし、簡単にできるからといって、このようなテクニックを多数のWindowsフォーム上で使いまくると、後でとても痛い出来事が待っている可能性がある。それはなぜかというと……。

 Visual Basic .NETでは、データソースを指定するコンポーネント(例えばSqlDataAdapterなど)は、通常のコントロールと同様に、フォームの一部として記述する。ということは、多数のフォームでこのようなテクニックを使うと、このようなコンポーネントも個々のフォーム上に貼り付けられることになる。個々のコンポーネントは、もしかしたら、同じデータソースへの接続情報を持っているかもしれないが、それは別々に書き込まれることになる。

 さて、このような状況でデータソースを変更する事態が起こったらどうなるだろう? もちろん、答えはもうお分かりだろう。個々のフォーム上のすべてのコンポーネントのデータソースを再設定しなければならない。たとえそれらが同じデータソースを示しているとしても、別々に再設定しなければならないのである。

 しかしVisual Basic 2005では、データソース・ウィンドウによってこれが解決される。データソースの指定は、個々のフォーム上ではなく、データソース・ウィンドウによって一括して行うのである。個々のコントロールからは、データソース・ウィンドウに設定されたデータソースを選択するだけでよい。それがどのように機能するかを見てみよう。

 まず、データソース・ウィンドウを表示させるには、[データ]メニューの[データソースの表示」を使う。[表示]メニューではないところに注意が必要である。なお以降では、Visual Basic 2005 Express Beta 2日本語版を使用している。

データソース・ウィンドウを表示させたVisual Basic 2005
[データ]メニューの[データソースの表示」を使う。[表示]メニューではないところに注意が必要である。フォーム上にはVisual Basic 2005の新しいコントロールであるDataGridViewコントロールをすでに配置している。

 ちなみに、フォーム上には強化されたDataGridコントロールであるDataGridViewコントロールも貼り付けてある。これで表示されるデータベースの指定を、面倒なデータソースの設定抜きで切り替えるところをお見せしよう。しかしその前に、データソース・ウィンドウの使い方である。

 まず、データソース・ウィンドウにデータソースを追加する。そのためには、データソース・ウィンドウ内の[新しいデータソースの追加]というリンクか、あるいはウィンドウ上部の[新しいデータソースの追加]を示すボタンをクリックする。

 するとデータソース構成ウィザードが開始され、まずデータソースの種類を質問される。

データソース構成ウィザードによるデータソースの追加
データソース・ウィンドウ内の[新しいデータソースの追加]というリンクか、あるいはウィンドウ上部の[新しいデータソースの追加]を示すボタンをクリックするとデータソースを設定するためのウィザードが開始する。

 ここでデータベースを選択し、次に進める。次にデータ接続の選択を要求されるので、[新しい接続]ボタンをクリックして、詳細な接続情報を設定する。

データソース構成ウィザードによるデータ接続の選択
[新しい接続]ボタンをクリックして、対象となるデータベースを選択し、詳細な接続情報を設定する。

 これが終わると、接続情報を保存する名前を質問される。

データソース構成ウィザードによる接続文字列の保存
Visual Basic 2005では接続文字列をアプリケーション構成ファイル(.exe.configファイル)で管理することができる。

 次は、データセット内に指定するデータベース・オブジェクトを選択する。ここでは、取りあえず[テーブル]にチェックを入れているが、きめ細かく指定することもできる。

データソース構成ウィザードによるデータベース・オブジェクトの選択
ここではアプリケーションで利用するテーブルやストアド・プロシージャを選択する。

 以上でデータソース構成ウィザードでの作業は完了である。


 INDEX
  Visual Basic 2005 ここが便利!
  第12回 ドラッグ&ドロップ一発でDB連携アプリを完全構築!
  1.データソースの変更も一発完了!(1)
    2.データソースの変更も一発完了!(2)
    3.ドラッグ&ドロップ一発でできること
 
インデックス・ページヘ  「Visual Basic 2005 ここが便利!」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

業務アプリInsider 記事ランキング

本日 月間
ソリューションFLASH