ジョイ・オブ・プログラミング:VB研読者向け 特別企画

極小SQL Server Compactでデータベース・アプリをお手軽作成

シグマコンサルティング 菅原 英治
2008/07/01

Page1 Page2 Page3

 皆さん、こんにちは。ロブです。

 今回は、SQL Server Compact 3.5を利用したWindowsアプリについて解説します(アプリは「アプリケーション」の略)。

 SQL Server Compact 3.5とは、Windowsアプリや、モバイル・アプリでの利用に向いた小さなデータベース(DB)です。本来は組み込み用途で作られたものなのですが、スタンドアロンのWindowsデスクトップ・アプリなどでこのデータベースを利用すると、とても簡単にデータベース・アプリが作成できます。手軽なデータベース・アプリ開発を楽しんでみませんか? ぜひ本稿を読みながら実際にプログラムを作り、自分の手で動かしてみてください。

 プログラミング言語は、C#とVB(Visual Basic)を使用します。今回は、特別にVBのコードも用意しました。これは、SQL Server Compact 3.5のターゲットの1つであるスタンドアロンのWindowsデスクトップ・アプリを開発するのはVB開発者が多いのではないかと考えたからです。この手のアプリでは昔からJetエンジン(.mdbファイル)が使われることがままありますが、SQL Server Compact 3.5はそのJetエンジンの代替として利用できるのです。そのため今回は、VB研読者も読める特別編としてお送りします。

 開発環境は、Visual Studio 2008 Professional Editionを使用します。理由は後述しますが、残念ながらVisual Basic/C# 2008 Express Editionの使用は対象外としました。

 それでは、さっそく始めましょう。まずは今回作成するサンプル・アプリの解説です。

お手軽Windowsデータベース・アプリのサンプル

 それでは、サンプル・アプリについて解説しましょう。今回作成するアプリは、題して「アイデア・タイム・カプセル」です。このアプリでは、思いついたアイデアをテキスト情報として記録できます。ただし、記録時に指定した期限が来るまで、登録した情報を見ることができません。

 このアプリは、『思考の整理学』という本を読んで思い付きました。この本では、良いアイデアを思い付く方法として次のようなことが述べられていました。

  • 思い付いたアイデアをすぐに人に話さない
  • メモに書き留めてしばらく忘れる
  • しばらく時間が経過してからメモを見直す
  • 見直したときにも良いと感じるものを、可能性のあるアイデアとする

 私は、この方法をサポートするアプリが欲しいと考えました。メモとして機能し、かつ一度記録したら時間が経過するまで、内容を確認できないようなアプリです。手書きのメモや、パソコンにテキスト・ファイルとして記録した場合、誘惑に負けて、思わず内容を見てしまうかもしれません。それを防ぐことができるアプリが欲しかったのです。

サンプル・アプリを動かそう

 さっそく私が作成したサンプル・アプリを動かしてみましょう。こちらからアプリをダウンロードし、任意のフォルダに解凍してください。その後、ideatimecapsule.exeを実行してください(実行には、.NET Framework 3.5の動作環境が必要)。下の図のような画面が表示されます。

 また、このアプリのソース・コードは、こちら(VB版C#版)からダウンロードできます。

起動したサンプル・アプリの画面
ideatimecapsule.exeを実行すると、このような画面が表示される。
  [新規アイデアを追加]ボタン。アイデアを追加するための[追加]ダイアログを表示する。
  アイデア表示一覧。アイデアを一覧表示する。期限に満たないアイデアの内容は、[まだ見られません]と表示される。期限を過ぎたアイデアの内容は、そのまま表示される。
  [追加]ダイアログ。アイデアを追加するためのダイアログ。
  [期限]日付選択コントロール。アイデアの内容を表示可能とする期限の日付を入力する。1カ月以上先の日付しか選択できない。
  [内容]テキストボックス。アイデアの内容を入力する。
  [追加]ボタン。入力した期限と内容でアイデアを追加する。
  [閉じる]ボタン。アイデアを追加せずに[追加]ダイアログを閉じる。

 アプリを起動したら、まずは[新規アイデアを追加]ボタンをクリックし、[追加]ダイアログを表示してください。続いて期限(初期値として2カ月後が選択されている)と内容を入力し、[追加]ボタンをクリックしてください。

[追加]ダイアログでの新しいアイデアの入力例

 [追加]ダイアログで、[追加]ボタンをクリックすると、アイデア表示一覧に、追加したアイデアが表示されます。ただし、アイデアの内容は、まだ期限を満たしていないので、[まだ見られません]と表示されます。

アイデアを追加したアイデア表示一覧
アイデアの内容は期限が過ぎるまでは確認できない。

 期限が来たら、本当に内容が表示されるか心配かもしれません。大丈夫です。期限が来ると下の画面のように、アイデアの内容を確認できます。

アイデア表示一覧
期限を満たすとアイデアの内容が確認できる。

 サンプル・アプリの動作についての解説は以上です。解説した動作から、データの追加、表示などが行えることが分かるでしょう。つまり、何らかのデータベースに対して、Insert(=データの追加)やSelect(=データの取得)を行っているということです。その秘密が、SQL Server Compact 3.5にあります。それではその秘密を解き明かしていきましょう。


 INDEX
  [VB研読者向け 特別企画]
  ジョイ・オブ・プログラミング:SQL Server Compact 3.5
  極小SQL Server Compactでデータベース・アプリをお手軽作成
  1.お手軽Windowsデータベース・アプリのサンプル
    2.お手軽データベースの秘密:SQL Server Compact 3.5
    3.サンプル・アプリのソース解説

 ジョイ・オブ・プログラミング


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