SQL Server Compact 3.5 と Visual Studio
更新 : 2008 年 7 月
Microsoft SQL Server Compact 3.5 (SQL Server Compact 3.5) では、デスクトップ コンピュータ、スマート デバイス、および Tablet PC に配置できる小さなデータベースを作成できます。
SQL Server Compact 3.5 を使用するアプリケーションをビルドする場合は、Microsoft .NET プログラミング言語 (Microsoft Visual Basic または Microsoft Visual C#) の 1 つと .NET Framework または .NET Compact Framework を使用してマネージ アプリケーションを作成できます。さらに、Microsoft Visual C++ または Visual C++ for Devices を使用して、ネイティブ アプリケーションを作成することもできます。
メモ : |
---|
アプリケーションを作成する際、推奨されるローカル データベースは SQL Server Compact 3.5 です。アプリケーションへのデータベースの組み込みの詳細については、「ローカル データの概要」を参照してください。 |
マネージ アプリケーションとネイティブ アプリケーションのいずれを作成するかは、開発者のニーズとスキルによります。Microsoft Visual C++ プログラミングに詳しく、システム リソースをより細かく制御する必要がある開発者は、Visual C++ を使用してネイティブ アプリケーションを作成できます。既に .NET Framework を使用して Microsoft Windows ベース アプリケーションまたは Web アプリケーションを開発しており、.NET プログラミング言語のいずれかに詳しい開発者は、デスクトップ コンピュータと Tablet PC 用の .NET Framework、またはスマート デバイス用の .NET Compact Framework を利用できるマネージ アプリケーションの作成を検討することをお勧めします。
SQL Server Compact 3.5 コンポーネント
メモ : |
---|
既定では、SQL Server Compact 3.5 ドキュメントはローカルにインストールされません。SQL Server Compact 3.5 Books Online をダウンロードするには、SQL Server 2005 Compact Edition Books Online のダウンロード センターにアクセスしてください。 |
SQL Server Compact 3.5 コンポーネントは、次の 3 つの Microsoft Windows インストーラ (.msi) ファイルからインストールできます。
SSCE 3.5 デザイン ツール (SSCEVSTools-ENU.msi)
このファイルにより、Visual Studio 2008 と共に SQL Server Compact 3.5 デザイン時コンポーネントがインストールされます。デザイン時コンポーネントとは、SQL Server Compact 3.5 対応のアプリケーションを作成するときに使用するユーザー インターフェイス、ダイアログ ボックス、およびデザイン時環境を意味します。SQL Server Compact 3.5 デザイン時コンポーネントは、%Program Files%\Microsoft Visual Studio 9\Common7\IDE\ ディレクトリの下にインストールされます。これらのコンポーネントは、Visual Studio にバンドルされており、Visual Studio 以外から入手することはできません。SQL Server Compact 3.5 サンプルと SQL Server Compact 3.5 ヘッダー ファイル (ネイティブ開発用) も、この .msi ファイルからインストールされます。
SQL Server Compact 3.5 (SSCERuntime-JPN.msi)
このファイルにより、デスクトップ コンピュータおよび Tablet PC 用の SQL Server Compact 3.5 ランタイム コンポーネントが、中心となる %Program Files%\Microsoft SQL Server Compact Edition\v3.5 フォルダにインストールされます。デスクトップと Tablet PC 用の SQL Server Compact 3.5 ランタイム コンポーネントは、Visual Studio でアプリケーションを開発したり、デスクトップ上で SQL Server Compact 3.5 ベースのアプリケーションを実行したりするのに必要です。この .msi ファイルでは、次のコンポーネントもインストールされます。
- Microsoft Synchronization Services for ADO.NET コンポーネント。Microsoft Synchronization Services for ADO.NET コンポーネントは、%Program Files%\Microsoft Synchronization Services\ADO.NET\v1.0 にインストールされます。
SQL Server Compact 3.5 for Devices (SSCEDeviceRuntime-ENU.msi)
このファイルにより、SQL Server Compact 3.5 デバイス用ランタイム コンポーネントが %Program Files%\Microsoft SQL Server Compact Edition\v3.5\Devices にインストールされます。このランタイム コンポーネントは、Visual Studio で Windows Mobile および Windows CE デバイス ベースのアプリケーションを開発したり、モバイル デバイスにこれらのアプリケーションを配置したりするのに必要です。
SQL Server Compact 3.5 の新機能
SQL Server Compact 3.5 には、ソフトウェア開発者向けに次の新機能が導入されています。
タイム スタンプ (rowversion) データ型が実装されました。
デスクトップと Tablet PC 上でローカル TransactionScope がサポートされるようになりました。
Visual Studio 2008 の SQL Server Compact 3.5 テーブル デザイナが拡張され、テーブル間における主キーと外部キーのリレーションシップを作成できるユーザー インターフェイスが提供されるようになりました。
Transact-SQL ステートメントのサポートが次のように拡張されました。
SELECT FROM 句に入れ子になったクエリ
CROSS APPLY および OUTER APPLY
CAST および DECIMAL
TOP
SET IDENTITY INSERT
Microsoft Synchronization Services for ADO.NET を使用した、SQL Server とのデータ レプリケーションがサポートされるようになりました。Microsoft Synchronization Services for ADO.NET は、デスクトップと Tablet PC に対してのみ利用できます。
Visual Basic 2008 Express Edition と Visual C# 2008 Express Edition を使用して、SQL Server Compact 3.5 ベースのアプリケーションを、デスクトップと Tablet PC 向けに開発できるようになりました。
SQL Server Compact 3.5 Service Pack 1 の新機能
SQL Server Compact 3.5 Service Pack 1 (SP1) は、SQL Server 2008 および Visual Studio 2008 SP1 に含まれています。詳細については、SQL Server Compact 3.5 Service Pack 1 Books Online の「SQL Server Compact の新機能」を参照してください。
SQL Server Compact 3.5 SP1 以降では、SQL Server Compact に次の開発者向け新機能が導入されています。
SQL Server Compact は ADO.NET Entity Framework をサポートします。Entity Framework を使用すると、顧客や顧客の住所など、ドメイン固有のオブジェクトとプロパティの形式でデータを操作でき、そのデータが格納されている基になるデータベース テーブルや列について考慮する必要がありません。
ADO.NET Entity Framework がサポートされることによって、開発者は、開発環境から直接 LINQ 式と LINQ 標準クエリ演算子を使用して、Entity Framework のオブジェクト コンテキストに対する柔軟で厳密に型指定されたクエリを作成できます。
SQL Server Compact は、大文字と小文字を区別する照合順序をデータベース レベルでサポートします。
SQL Server 2008 の SQL Server Management Studio (SSMS) を使用して、スマート デバイスまたはデスクトップ コンピュータに格納されている SQL Server Compact データベースを管理できます。
SQL Server Compact は、date、time、datetime2、datetimeoffset、geography、geometry など、SQL Server 2008 の新しいデータ型のレプリケートをサポートします。SQL Server 2008 の新しいデータ型は、nchar、nvarchar、image などのデータ型に対応します。SQL Server 2008 のデータ型の詳細については、SQL Server 2008 Books Online の「データ型」を参照してください。
SQL Server Compact は、64 ビット環境でネイティブに実行できます。影響のある .msi ファイルは、SQL Server Compact 64 ビット ランタイム (SSCERuntime-JPN.msi) および SQL Server Compact 64 ビット Server Tools (SSCEServerTools-JPN.msi) です。32 ビットの .msi ファイルのサポートは変更されていません。アプリケーションに ClickOnce 配置を使用する開発者は、32 ビットと 64 ビットの両方のダウンロード URL を指定する必要があります。
SQL Server Compact は、Microsoft Synchronization Services for ADO.NET を使用して、SQL Server 2000、SQL Server 2005、および SQL Server 2008 とのデータ レプリケーションをサポートします。Microsoft Synchronization Services for ADO.NET は、デスクトップとモバイル デバイスの両方に利用できます。
SQL Server Compact は、マージ レプリケーションおよび RDA (リモート データ アクセス) を使用した、SQL Server 2005 および SQL Server 2008 とのデータ レプリケーションをサポートします。
SQL Server Compact では、マージ レプリケーションに関して、SQL Server Compact と SQL Server のバージョン間の互換性が強化されています。
SQL Server Compact 3.5 SP1 を使用したマージ レプリケーションおよび RDA の構成に使用する Server Tools は、Microsoft ダウンロード センターからダウンロードできます。SQL Server Compact 3.5 SP1 Server Tools は、インターネット インフォメーション サービス (IIS) サーバーとして動作しているコンピュータに、以前のバージョンの Server Tools と共存させてインストールすることはできません。SQL Server Compact 3.5 SP1 Server Tools は、SQL Server Compact 3.5 と SQL Server 2005 または SQL Server 2008 の間でデータをレプリケートできます。SQL Server Compact 3.5 SP1 Server Tools は、SQL Server 2005 Compact Edition または SQL Server 2005 Mobile Edition と SQL Server 2005 または SQL Server 2008 の間のデータ レプリケーションもサポートします。
SQL Server Compact は Windows Server 2008 をサポートします。サポートされるすべての Windows のバージョンの一覧については、SQL Server Compact オンライン ブックの「必要なハードウェアとソフトウェア」を参照してください。
SQL Server Compact には、複数のログ機能強化が含まれます。
SQL Server Compact 3.5 の他の注目すべき機能
アプリケーションのローカル データ ストアとして SQL Server Compact 3.5 を使用する場合、注目すべき機能として次の点が挙げられます。
SQL Server Compact 3.5 はファイル ベースのデータベース エンジンです。つまり、接続文字列はデータベース (.sdf) ファイルのパスになります。
SQL Server Compact 3.5 はサービスとして実行されません。これは、SQL Server Compact 3.5 が SQL Server や SQL Server Express Edition と大きく異なる点です。
SQL Server 2005 Mobile Edition と同様に、SQL Server Compact 3.5 は複数接続をサポートしています (最大 256 接続)。異なるプロセスで接続を開くこともできます。
現在のバージョンの SQL Server Compact 3.5 は、最大 4 GB のデータベース ファイルをサポートしています。
SQL Server Compact 3.5 を使用する状況
SQL Server Compact 3.5 は、DLL (約 1.4 MB) から成るファイル ベースのデータベースです。
SQL Server Compact 3.5 に適したアプリケーションのシナリオの例を次に示します。
デスクトップ コンピュータとモバイル デバイスを想定したアプリケーションの場合 (詳細については、「チュートリアル : アプリケーションへの SQL Server Compact 3.5 データベースの追加とその配置」を参照してください)。
接続の頻度があまり高くないアプリケーションの場合 (詳細については、「接続の頻度があまり高くないアプリケーション」を参照してください)。
自由に再頒布できるデータベースが必要な場合
アプリケーション サイズとメモリを小さくすることが必要な場合
データ アクセス コードをプロセス内で実行する必要がある場合
[配置オプション]
SQL Server Compact 3.5 は、2 とおりの配置モデルでアプリケーションに組み込むことができます。
ClickOnce
ClickOnce 配置など、従来の Microsoft セットアップ テクノロジのほか、ファイル ベースの配置を利用することもできます。後者の方法では、SQL Server Compact 3.5 の DLL を追加し、それをプロジェクトと共に配置することになります。
データ ディレクトリのサポート
SQL Server Compact 3.5 では、新たにデータ ディレクトリ マクロがサポートされています。つまり、「|DataDirectory|」のように、前後にパイプ記号を付けて文字列をファイル パスに追加すると、その文字列がデータベースのパスに解決されます。
たとえば、次のような接続文字列があるとします。
"Data Source= c:\program files\MyApp\Mydb.sdf"
この接続文字列は、データ ディレクトリを使用して次のように指定することもできます。
"Data Source = |DataDirectory|\Mydb.sdf"
詳細については、「方法 : SQL Server Compact 3.5 データベースをアプリケーションと共に配置する」を参照してください。
下位互換性
SQL Server Compact 3.5 は、デスクトップ コンピュータおよび Tablet PC コンピュータ上に以前のバージョン (3.1) と一緒にインストールできます。以前のバージョンで作成したデータベース ファイルを開こうとすると、ファイルが開けないことを示すメッセージが表示されます。このファイルを開くには、Visual Studio 2008 の [SQL Server Compact 3.5 へのアップグレード] ダイアログ ボックスで、データベース ファイルをアップグレードする必要があります。[SQL Server Compact 3.5 へのアップグレード] ダイアログ ボックスを開くには、[接続の追加] ダイアログ ボックスで設定を終了しておく必要があります。旧バージョンのデータベース ファイルを開いた場合は、エラー メッセージが表示されます。[OK] をクリックすると、[SQL Server Compact 3.5 へのアップグレード] ダイアログ ボックスが表示されます。SQL Server Compact 3.5 ファイルの拡張子は .sdf で、旧バージョン (SQL Server 2005 Compact Edition および SQL Server 2005 Mobile Edition) の拡張子と同じです。データベース ファイルが SQL Server Compact 3.5 にアップグレードされると、旧バージョンの SQL Server Compact エンジンを使ってそのデータベース ファイルを開くことはできなくなります。
SQL Server Compact 3.5 Books Online
既定では、SQL Server Compact 3.5 ドキュメントはローカルにインストールされません。SQL Server Compact 3.5 Books Online をダウンロードするには、SQL Server 2005 Compact Edition Books Online のダウンロード センターにアクセスしてください。SQL Server Compact 3.5 Books Online は、デスクトップ コンピュータ、モバイル デバイス、および Tablet PC 上で SQL Server Compact 3.5 アプリケーションを開発、管理、および配置するために必要な概念とプログラミング情報を提供します。
64 ビット開発
Visual Studio と SQL Server Compact 3.5 で 64 ビット開発を行う場合は、[コンパイラの詳細設定] の [ターゲット CPU] オプションを明示的に [x86] に設定する必要があります。[ターゲット CPU] が既定値の [Any CPU] に設定されていると、"sqlceme35.dll を読み込めません" というメッセージが表示されることがあります。[ターゲット CPU] オプションは、プロジェクト プロパティの [コンパイラの詳細設定] で設定します。
参照
処理手順
方法 : SQL Server Compact 3.5 データベースをプロジェクトに追加する
方法 : SQL Server Compact 3.5 データベースをアプリケーションと共に配置する
チュートリアル : SQL Server Compact 3.5 データベースの作成
チュートリアル : アプリケーションへの SQL Server Compact 3.5 データベースの追加とその配置
その他の技術情報
SQL Server Compact 3.5 Books Online のダウンロード センター
変更履歴
日付 |
履歴 |
原因 |
---|---|---|
2008 年 7 月 |
SQL Server Compact 3.5 Service Pack 1 の新機能に関するセクションを追加 |
SP1 機能変更 |