以前のバージョンからのアップグレード (SQL Server Compact)
Microsoft SQL Server Compact 3.5 Service Pack 1 (SP1) は、SQL Server Compact の最新のバージョンです。この製品には次のバージョンがあります。
- バージョン 3.5 SP1 : SQL Server Compact 3.5 SP1
- バージョン 3.5 : SQL Server Compact 3.5
- バージョン 3.1 : SQL Server 2005 Compact Edition (SQL Server Compact Edition)
- バージョン 3.0 : SQL Server 2005 Mobile Edition (SQL Server Mobile)
- バージョン 2.0 : SQL Server 2000 Windows CE Edition 2.0 (SQL Server CE)
SQL Server Compact 3.5 と 3.0 は、デスクトップ コンピュータやモバイル デバイスにサイド バイ サイド インストールできます。ただし、以前のバージョンを使用して作成されたデータベース ファイルを開こうとすると、ファイルを開くことができないというメッセージが表示されます。これは、rowversion などのデータ型が、以前のバージョンではサポートされていないためです。SQL Server Compact 3.5 SP1 を使用してこのデータベース ファイルを開くには、最初にアップグレードする必要があります。
SQL Server Compact 3.5、3.1、3.0、および 2.0 のデータベース ファイルには、同じファイル拡張子 (*.sdf) が付いています。バージョン 3.5 のファイルをそれ以前のバージョンで使用することはできません。ただし、SQL Server Compact バージョン 3.1 のファイルをバージョン 3.0 で使用したり、バージョン 3.0 のファイルをバージョン 3.1 で使用したりすることはできます。バージョン 2.0 のファイルは、3.5、3.1、3.0 のいずれのバージョンとも互換性がありません。
SQL Server Compact 3.5 で追加された機能を次に示します。
- Microsoft Synchronization Services for ADO.NET を使用した、SQL Server との同期をサポート
- 新しい暗号化アルゴリズムの実装
SQL Server Compact 3.0 または 3.1 のデータベース ファイルのアップグレード
以前のバージョンの SQL Server Compact (バージョン 3.1 または 3.0) で作成されたデータベース ファイルを開くには、Visual Studio 2008 の [SQL Server Compact 3.5 データベースへのアップグレード] ダイアログ ボックスを使用します。
- Visual Studio を開き、[表示] メニューの [サーバー エクスプローラ] をクリックします。
- [データ接続] を右クリックします。
- [接続の追加] をクリックします。[SQL Server Compact 3.5 データベースへのアップグレード] ダイアログ ボックスが表示されます。
- [データベース] ボックスにデータベース ファイルへのパスを入力します (省略可能)。このテキスト ボックスの既定値は、接続していたデータベース ファイルへのパスです。
- [パスワード] ボックスに、データベース ファイルの保護に使用するパスワードを入力します (省略可能)。
- [OK] をクリックします。ファイルが SQL Server Compact 3.5 にアップグレードされます。アップグレード後、元のデータ ファイルは同じフォルダに保存され、バックアップ (.bak) ファイルとして使用できます。SQL Server Compact 3.0 または 3.1 のデータベース ファイルが暗号化されている場合、SQL Server Compact 3.5 へのアップグレード時に、プラットフォーム既定の暗号化モードで暗号化されます。
SQL Server Compact 3.5 データベースで使用できる暗号化モードは、以下のとおりです。
- [プラットフォームの既定値]。このオプションを選択した場合、SQL Server Compact データベースを作成するときに使用された、プラットフォームの既定の暗号化が割り当てられます。たとえば、Windows XP で作成されたデータベースの場合、[プラットフォームの既定値] を選択すると、Windows XP の暗号化が使用されます。暗号化されたデータベースが、次のいずれかのプラットフォームで作成されているときに、このオプションを選択した場合、Windows CE 4.2 または Windows Mobile 2003 for Pocket PC で開くことはできなくなります。
- Windows CE 5.0
- Windows CE 6.0
- Windows Mobile 5.0
- Windows XP
- Windows Server 2003
- Windows Vista
- Windows Server 2008
- [エンジンの既定値]。SQL Server Compact でサポートされているほとんどのプラットフォーム (Windows CE 4.2 または Windows Mobile 2003 for Pocket PC を除く) 上で機能する暗号化が使用されます。
- Windows CE 5.0
- Windows CE 6.0
- Windows Mobile 5.0
- Windows XP
- Windows Server 2003
- Windows Vista
- Windows Server 2008
- [PPC2003 互換性]。この暗号化モード オプションは、SQL Server Compact でサポートされているすべてのプラットフォーム上で機能します。
- Windows CE 4.2
- Windows Mobile 2003 for Pocket PC
- Windows CE 5.0
- Windows CE 6.0
- Windows Mobile 5.0
- Windows XP
- Windows Server 2003
- Windows Vista
- Windows Server 2008
SQL Server Compact 3.0 または 3.1 のデータベース ファイルをバージョン 3.5 以降にアップグレードする前に、次の点を考慮してください。
- いったんアップグレードしたデータベース ファイルは、以前のバージョンでは使用できなくなります。元のデータベース ファイルは同じフォルダに保存され、バックアップ (.bak) ファイルとして使用できます。
- マネージ API (SqlCeEngine.Upgrade) またはネイティブ API (ISSCEEngine.Upgrade) を使用して、プログラムから以前のバージョンのデータベース ファイルを最新バージョンにアップグレードすることもできます。
SQL Server Compact 2.0 のデータベース ファイルのアップグレード
SQL Server Compact 3.5 のデータベース アップグレード ツール (Upgrade.exe) を使用すると、SQL Server CE (バージョン 2.0) で作成したデータベースをアップグレードできます。データベース アップグレード ツールは Windows Mobile デバイスで実行できます。Upgrade.exe を使用する場合は、SQL Server Compact 3.5 と SQL Server CE の両方のランタイムがモバイル デバイスにインストールされている必要があります。
SQL Server Compact 3.5 データベース アップグレード ツールを実行すると、スマート デバイス上に新しい SQL Server Compact データベースが作成されます。.sdf というファイル名拡張子の付いた新しいデータベースに、アップグレード前のデータベースに含まれていたすべてのデータが含まれます。アップグレードされたデータベースを引き続きレプリケーションに使用するには、このデータベースを再初期化する必要があります。
詳細については、「データベース アップグレード ツールを使って SQL Server Compact 2.0 をアップグレードする方法」および「データベース アップグレード ツール (SQL Server Compact)」を参照してください。
SQL Server CE データベースの列に、NULL 属性または NOT NULL 属性を指定せずに UNIQUE 制約を指定すると、自動的に NOT NULL 属性が指定された列が作成されます。この時点で、このデータベースを SQL Server Compact 3.5 にアップグレードしようとすると、同じ列属性が上書きコピーされます。そのため、SQL Server Compact 3.5 にアップグレードした後も、このテーブルに NULL 属性を挿入することはできなくなります。NULL または NOT NULL の詳細については、「ALTER TABLE (SQL Server Compact)」を参照してください。
重要 : |
---|
SQL Server Compact 3.5 にアップグレードする際に接続手段としてレプリケーションまたはリモート データ アクセス (RDA) を使用する場合は、元の SQL Server Compact 3.5 データベース (サブスクリプション データベース) と SQL Server データベース (パブリッシャ) を同期する必要があります。SQL Server Compact 3.5 にアップグレードする前に同期を行うのは、SQL Server CE データベース上のテーブルに変更が加えられていた場合に、それらの変更をすべて SQL Server データベースに反映するためです。アップグレードしてしまうと、新しいデータベースを使って再度サブスクライブまたはプルする必要が生じます。 |
分散アプリケーションのアップグレード
インターネット インフォメーション サービス (IIS) が実行されているサーバー上に以前のバージョンのサーバー エージェントが存在する場合、SQL Server Compact 3.5 サーバー エージェントはインストールされません。
SQL Server Compact 3.5 サーバー ツールを使用すると、SQL Server Compact 3.5 と SQL Server 2008 の間でデータをレプリケートできます。このサーバー ツールは、SQL Server Compact 3.0 または 3.1 と SQL Server 間のデータ レプリケーションもサポートしています。SQL Server Compact 3.5 サーバー エージェントは、SQL Server Compact 3.5 またはそれ以前のバージョンと、SQL Server 2000 またはそれ以前のバージョン間のデータ レプリケーションをサポートしません。
アップグレード作業では、最初に SQL Server Compact 3.5 サーバー ツールをインストールし、次にクライアント コンポーネントをインストールします。IIS を実行中のコンピュータに SQL Server Compact サーバー ツールの以前のバージョンがインストールされている場合は、新しいクライアント アプリケーションを配置しないでください。すべてのコンポーネントを適切に配置した後、そのアプリケーションをスマート デバイスにもう一度配置します。
重要 : |
---|
アプリケーションや SQL Server Compact 3.5 クライアント コンポーネントの以前のリリースを削除する前には、アップグレードしたアプリケーションが使用できることと、正常に機能していることを確認してください。 |
アプリケーションのアップグレード プロセスでは、次の点を考慮してください。
- 以前のバージョンの SQL Server Compact に対する参照はすべて SQL Server Compact 3.5 への参照に変更する必要があります。
- IIS を実行しているコンピュータをアップグレードする場合は、SQL Server Compact 3.5 サーバー ツールをインストールする必要があります。このツールによって、コンピュータに SQL Server Compact 3.5 クライアント用の新しい仮想ディレクトリを構成できるようになります。
- SQL Server Compact 3.5 クライアント コンポーネントをデバイスに配置する際は、SQL Server Compact 3.5 用の新しい仮想ディレクトリを使用するようにアプリケーションを更新します。これを行うには、レプリケーションまたは RDA オブジェクトの InternetURL プロパティを更新します。新しい InternetURL プロパティでは、Sscesa10.dll、Sscesa20.dll、Sqlcesa35.dll ではなく、Sqlcesa35.dll を指定します。SQL Server Compact 3.5 サーバー ツールは、%ProgramFiles%\Microsoft SQL Server Compact Edition\v3.5\sync\SQL にインストールされます。SQL Server Compact 3.5 クライアント エージェントは SQL Server Compact 3.5 サーバー エージェントとしか通信できないので、InternetURL プロパティを更新することが重要です。
注意
SQL Server 2005 Compact Edition サーバー ツールまたは SQL Server 2005 Mobile Edition サーバー ツールを使用するには、InternetURL プロパティが Sqlcesa35.dll に設定されている必要があります。このいずれかのバージョンのサーバー ツールを SQL Server Compact 3.5 サーバー ツールにアップグレードする場合は、InternetURL プロパティを Sqlcesa35.dll に更新してください。SQL Server Compact 3.5 サーバー ツールでは、SQL Server 2000 SP3a または SQL Server 2000 SP4 とのデータ レプリケーションはサポートされません。
参照
処理手順
デバイスに SQL Server Compact をインストールする方法
概念
デバイスへのインストールと配置 (SQL Server Compact)