SQL Server Compact

SQL Server Compact では、デスクトップ コンピュータやスマート デバイスに配置できるコンパクトなデータベースを作成できます。SQL Server Compact は他のバージョンの SQL Server と共通のプログラミング モデルを備えており、ネイティブ アプリケーションとマネージ アプリケーションの両方の開発に対応しています。堅牢なデータ ソース、最適化を行うクエリ プロセッサ、信頼性と拡張性に優れた接続など、リレーショナル データベースとしての機能も提供されています。

SQL Server Compact に対する開発は Visual Studio でサポートされます。データベース管理は SQL Server でサポートされます。スマート デバイスまたはデスクトップ コンピュータに格納されている SQL Server Compact データベースには、SQL Server の SQL Server Management Studio を使ってアクセスできます。Microsoft Visual Basic または Visual C# を使用してマネージ アプリケーションを作成するか、Visual C++ を使用してネイティブ アプリケーションを作成できます。

注意注意

SQL Server Compact 3.5 Service Pack 1 (SP1) は、SQL Server 2008 および Visual Studio 2008 SP1 に付属します。また、Microsoft SQL Server Compact からダウンロードすることもできます。

SQL Server Compact コンポーネントのインストール

SQL Server Compact コンポーネントは、次の Microsoft Windows インストーラ (.msi) ファイルからインストールできます。

  • SQL Server Compact デザイン ツール (SSCEVSTools-ENU.msi)

  • SQL Server Compact ランタイム (SSCERuntime-ENU.msi)

  • SQL Server Compact for Devices (SSCEDeviceRuntime-ENU.msi)

  • SQL Server Compact Query ツール (SSCESqlWbTools-ENU.msi)

  • SQL Server Compact Server ツール (SSCEServerTools-ENU.msi)

  • SQL Server Compact オンライン ブック (SSCEBOL-ENU.msi)

SQL Server Compact コンポーネントのインストール方法の詳細については、Microsoft SQL Server Compact の Web サイトを参照してください。

注意注意

SQL Server 2008 オンライン ブックをインストールする際、既定では SQL Server Compact のドキュメントがローカルにインストールされません。SQL Server Compact オンライン ブックをダウンロードするには、SQL Server Compact オンライン ブック ダウンロード センターにアクセスしてください。

概要と SQL Server Compact のシナリオ

アプリケーションのローカル データ ソースとして使用する場合は、SQL Server Compact の次の特徴を考慮する必要があります。

  • SQL Server Compact はファイル ベースです。つまり、接続文字列はデータベース (.sdf) ファイルのパスです。

  • SQL Server Compact はサービスとしては実行されません。これは、SQL Server Compact 3.5 が SQL Server や SQL Server Express と大きく異なる点です。

  • SQL Server Compact は複数接続をサポートします (最大 256 接続)。異なるプロセスで接続を開くこともできます。

  • SQL Server Compact は、最大 4 GB のデータベース ファイルをサポートします。

SQL Server Compact は、複数の DLL (約 1.4 MB) から成るファイル ベースのデータベースです。SQL Server Compact に適したアプリケーションのシナリオの例を次に示します。

  • デスクトップ コンピュータとモバイル デバイスを想定したアプリケーションの場合

  • 常時接続でないシナリオで使用されるアプリケーションの場合

  • 無料で再頒布できるデータベースが必要な場合

  • アプリケーション サイズと必要なメモリ量を小さく抑える必要がある場合

  • データ アクセス コードをプロセス内で実行する必要がある場合

SQL Server Compact の新機能

次のセクションでは、SQL Server Compact 3.5 および SQL Server Compact 3.5 SP1 の新機能について説明します。

SQL Server Compact 3.5

SQL Server Compact Version 3.5 は、Visual Studio 2008 に同梱されています。SQL Server Compact 3.5 以降の特徴を次に示します。

  • SQL Server Compact は、デスクトップ コンピュータ上のローカル トランザクション スコープをサポートします。

  • Visual Studio 2008 の SQL Server Compact テーブル デザイナが強化され、テーブル間に主キーと外部キーのリレーションシップを作成するためのユーザー インターフェイスが追加されました。

  • SQL Server Compact では、新たに次の Transact-SQL ステートメントがサポートされるようになりました。

    • FROM 句で入れ子になったクエリ

    • CROSS APPLY およびOUTER APPLY

    • CAST

    • TOP

    • SET IDENTITY INSERT

  • Visual Basic 2008 Express Edition および Visual C# 2008 Express Edition を使用して、SQL Server Compact 3.5 ベースのアプリケーションをデスクトップ コンピュータ向けに開発できるようになりました。

  • スマート デバイスまたはデスクトップ コンピュータ上の SQL Server Compact データベースを、SQL Server 2008 の SQL Server Management Studio Express (SSMSE) で管理できるようになりました。

  • timestamp (rowversion) データ型が実装されました。

  • SQL Server Compact では、LINQ to SQL がサポートされます。LINQ to SQL は、統合言語クエリ (LINQ) プロジェクトのコンポーネントです。このコンポーネントは、リレーショナル データをオブジェクトとして管理しながらクエリの実行も可能にするランタイム インフラストラクチャを提供します。また、統合言語クエリを SQL Server Compact で実行できるように Transact-SQL に変換し、表形式の結果をアプリケーション開発者が定義したオブジェクトに再び変換します。

SQL Server Compact 3.5 SP1

SQL Server Compact 3.5 Service Pack 1 (SP1) は、SQL Server 2008 および Visual Studio 2008 SP1 に付属します。SQL Server Compact 3.5 SP1 では、ソフトウェアの開発者向けに、さまざまな機能強化および新機能が提供されています。その中でも最も特徴的な新機能を次に示します。

  • 大文字と小文字を区別する照合順序が、データベース レベルでサポートされるようになりました。

  • ADO.NET Entity Framework がサポートされるようになりました。Entity Framework を使用すると、データをドメイン固有のオブジェクトとプロパティの形式 (顧客と顧客の住所など) で操作できるようになり、基になるデータベース テーブルやデータが格納されている列と関係付ける必要がなくなります。

  • SQL Server Compact では、LINQ to Entities がサポートされます。LINQ to Entities では、開発環境で LINQ の式と標準クエリ演算子を直接使用することにより、Entity Framework オブジェクト コンテキストに対して柔軟で厳密に型指定されたクエリを作成できるようになります。

  • SQL Server Compact は 64 ビット環境でのネイティブ実行に対応しています。

  • SQL Server 2008 の新しいデータ型のレプリケートがサポートされます (date、time、datetime2、datetimeoffset、geography、geometry など)。SQL Server 2008 のデータ型の詳細については、SQL Server 2008 オンライン ブックの「データ型」を参照してください。

  • Microsoft Synchronization Services for ADO.NET を使用した、SQL Server 2000、SQL Server 2005、および SQL Server 2008 とのデータ レプリケーションがサポートされるようになりました。Microsoft Synchronization Services for ADO.NET は、デスクトップ コンピュータとモバイル デバイスの両方で使用できます。

  • マージ レプリケーションおよびリモート データ アクセス (RDA) を使用した、SQL Server 2005 および SQL Server 2008 とのデータ レプリケーションがサポートされるようになりました。

SQL Server との統合

デスクトップ コンピュータまたはモバイル デバイス上の SQL Server Compact データベースは、SQL Server の管理ツールである SQL Server Management Studio を使用して管理できます。このツールを使用すると、SQL Server と SQL Server Compact のどちらに接続していてもユーザーは同じように操作できます。SQL Server Compact データベースは、SQL Server Management Studio Express でも管理できます。SQL Server Management Studio Express は、ダウンロード センターから無償でダウンロードできます。

Management Studio および Management Studio Express から、SQL Server Compact データベースをローカル コンピュータに作成することができます。作成したデータベースを構成し、データを読み込んだうえで、複数のデバイスに配置できます。これにより、開発と配置に要する時間を大幅に削減できます。

関連項目

概念