アットマーク・アイティ @IT@IT情報マネジメント@IT自分戦略研究所QA@ITイベントカレンダー  
 @IT > Master of IP Network > Mobile Connection > SQL Server CEを使ったデータベース連携を学ぶ
 

SQL Server CEを使ったデータベース連携を学ぶ(1)
SQL Server CEの概要とインストール

2001/6/29

 

今回のおもな内容
SQL Server CEとは?
SQL Server CEのインストール

  携帯情報端末向けのOSとしてWindows CEが登場してから、かなりの年月が経過しました。筆者もWindows CE 1.0を搭載したPDAを予約して購入した1人ですが、その後Handheld PC Pro、Pocket PCへとWindows CEを搭載したデバイスも進化し、世の中をとりまくモバイル環境も急速に発達してきました。いまや携帯電話からメールを送信したり、Webページを閲覧するのはごく当たり前のこととなり、Pocket PCなどのPDA端末はカラー液晶や無線通信機能、PCとのデータのやりとりなど多彩な機能が搭載されるようになりました。このような携帯端末の多様化、多機能化に伴って、企業情報システムのフロントエンド端末として採用されるケースが急速に増加してきています。例えば、営業マンが持ち歩くPocket PCにその日に訪問する顧客のデータや地図、これまでの取引履歴を入れておく場合もあるでしょう。

 このようなデータをPocket PCやWindows CEをベースとした端末にストアしておくうえで、高性能でバックエンドデータベースとの連携機能に優れたモバイルデータベースが求められています。

  SQL Server 2000 Windows CE Editionとは

 「SQL Server 2000 Windows CE Edition」(以下、SQL Server CE)は、SQL Server 2000と互換性をもつ本格的なモバイルデータベースです。先に紹介したような企業内の顧客データや商品データをPocket PCやHandheld PCといったWindows CEベースの端末にストアし、データの検索や更新といった処理を高速かつ安定して実現するプラットフォームを提供します。

 これまでもWindows CE端末を企業情報システムのフロントエンドツールとして活用する方法として、Windows CEに標準で添付されるCEDBやPocket Accessを用いるケースや、他のモバイルデータベースを利用するケース、さらにはPDAから直接バックエンドのWebベースシステムにアクセスする方法などがありました。しかしながら、これらのアプローチはいずれも次のような問題をかかえています。

・期待されるパフォーマンスがでない。特にCEDBなどを用いて数万件におよぶ商品データを扱う場合、検索やデータのアップデートといった処理で条件をクリアできる速度が得られない場合がありました。

  • ライセンスが高価
    特に高速なシステムや安定したモバイルアプリケーションを構築する場合、モバイルデータベースに高価なライセンス料を支払わなければならない場合がありました。通常、企業情報システムにおいて携帯端末を導入する場合、すくなくとも500台、多い場合は数千台規模での導入が一般的です。1台あたりにかける導入コストはできるだけ抑えたいのが企業情報システム担当者の本音でしょう。
  • 通信状態、接続環境が不安定
    特に、携帯端末からバックエンドのWebベースシステムに直接アクセスする場合、安定した通信環境やコネクションが得られない場合があり、情報入力中に接続が切断されるケースもありました。通信環境が良好な場所でデータをダウンロードしておき、通常はオフラインでモバイル端末のローカルデータを参照する方が効率的なわけです。
  • モバイルデバイスの消費電力
    モバイルデバイスである以上、できるだけ長時間持ち運んで使用できることが大前提となります。WebベースのアプリケーションにWindows CEデバイスなどからアクセスする場合、インターネット接続している時間は必然的に長くなり、結果としてバッテリー切れになってしまうことも考えられます。ほしいデータは一括してダウンロードしておき、オフラインでデータを参照できる方が長時間の使用に向いているとも言えるわけです。

 これらの問題を解決する、ハイパフォーマンスで導入コストが安価なモバイルデータベースの登場が期待されていたのはいうまでもありません。このような状況で登場したのが、SQL Server CEです。SQL Server CEは次のような特徴をもっています。

  • 安定性、信頼性を備えた本格的なデータベース
  • バックエンドのデータベースとの接続機能
  • 堅牢なセキュリティ機能
  • ADO CE、OLE DB CEによる高い開発生産性
  • 小さいフットプリント
  • 大容量のデータ処理にも耐えうる高速なデータベースエンジン
  • 導入が容易なライセンス体系

 ここでは、このSQL Server CEへのアクセス方法のほか、バックエンドデータベースとの連携についても解説していきます。

  SQL Server 2000 Windows CE Editionのインストール

 さて、SQL Server CEをベースとしたアプリケーションを開発する方法について述べる前に、まずはSQL Server CEをセットアップしなければなりません。SQL Server CEによるデータベースアプリケーション開発では、SQL Server CEとアプリケーションを実際にインストールするWindows CEデバイスのほか、アプリケーション開発用のPC、さらにバックエンドサーバとの連携を行う場合はバックエンドデータベース側での設定が必要になります。まずは、開発用のPCからセットアップしていきましょう。

 開発用のPCには、アプリケーション開発を行うツールとしてeMbedded Visual ToolsPlatform SDKをインストールしておく必要があります。ここではPocket PC上で動作するモバイルデータベースアプリケーションをeMbedded Visual Basicを使って開発していくことにします。

 Embedded Visual ToolsのDisk1からセットアップを起動し、eMbedded Visual Basicをインストールします。

 続いて、Pocket PC用のPlatform SDKをインストールします。Pocket PC以外のWindows CEデバイス(例えば、Handheld PC Pro)を使用する場合は、eMbedded Visual ToolsのDisk2からそれぞれのデバイスに対応したPlatform SDKをインストールします。

 さて、いよいよSQL Server CEのインストールです。SQL Server CEをダウンロードしてセットアップを起動すると次のような画面が表示されます。

図1 SQL Server CEのセットアップ

 ここでは開発用のPCのセットアップを行いますので、Development Toolをクリックし、インストールを開始します。 Windows CEのコンポーネントのほか、Windows CE Data Access 3.1(ADO CE 3.1など)がインストールされます。

 これで開発用PCのセットアップは完了です。さて次はバックエンドデータベースマシンをセットアップします。バックエンドのデータベースマシンにはPocket PCとデータのやり取りを行う顧客のデータや商品のデータがストアされているSQL Server 2000とIIS(Internet Information Services)が動作しています。このサーバマシンでもSQL Server CEのセットアップを行っておきます。セットアップは開発用PCでのセットアップと同様に行いますが、図1の画面でDevelopment Toolsではなく、Server Toolsの方をクリックしてセットアップを開始します。

 これでインストールは完了です。SQL Server CEのインストールでは、次のコンポーネントがインストールされているはずです。

開発用PC
  SQL Server CE データベースエンジン
  Windows CE Data Access 3.1(ADO CE 3.1、OLE DB CE)
  SQL Server CE Client Agent(SQL Server CE 接続用クライアントコンポーネント)
  SQL Server CE Books Online
バックエンドデータベースマシン(注)
  SQL Server CE Server Agent(SQL Server CE接続用IIS ISAPIフィルタ)
 

SQL Server CE Replication Provider

 さて、もうお気づきになっている方もいるでしょうが、SQL Server CEのサーバコンポーネントの中にIISで動作するISAPIフィルタが含まれています。また、サーバマシンでもSQL Server 2000の他にIISが動作していました。なぜ、IISが必要なのでしょうか?

 実はSQL Server CEはIISを介してバックエンドデータベースとデータのやり取りを行うのです。一見まどろっこしい方法にも思えますが、これには理由があります。

  • ファイアウォールを越えたデータアクセスが容易
    バックエンドシステムとのデータ交換を行う上で、特殊なプロトコルを実装したり、ポートを特別に空けておく必要がありません。社内ネットワークや室外での無線接続など、さまざまな接続形態に容易に対応できます
  • セキュリティの強化
    バックエンドのデータベースでのアクセス制御に加えて、IISでのアクセス制御を行うことができます。SSLセッションを併用することもできます
  • Windows CEデバイス側での設定が容易
    ISAPIフィルタにHTTP経由でアクセスするため、Windows CEデバイス側ではインターネット上のWebが閲覧できる環境さえセットアップすれば、特にデータベースアクセス用の設定を行う必要がありません

 なお、IISの設定については、後述するバックエンドデータベースとの接続方法のところで紹介したいと思います。

 次回は、インストールしたSQL Server CEを使ったアプリケーション作成をご紹介します。

次回、「アプリケーション作成」編の掲載は7月下旬ごろになります



 


 
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

   
@ITトップMobile Connectionフォーラム トップ会議室利用規約プライバシーポリシーサイトマップ