ClickOnceアップデートを介してSQL CEをアップグレードします
-
30-09-2019 - |
質問
最近、Visual Studio 2005からVS 2010に既存のClickOnceアプリ開発プロジェクトを移動しました。VisualStudio2010のアップグレードの問題により、SQL CEデータベースをv3.1からv3.5にアップグレードする必要がありました。
データ移行の頭痛を回避するために、ClickOnceアップデートが公開されるたびに、ユーザーの以前のデータベースを新しいインストールフォルダーにコピーしています。 DBの変更がある場合は、アプリのISFIRSTRUNイベントハンドラーにそれらをスクリプト化します。
しかし、現在、データベースバージョンと展開されたSQL CE .DLLファイルを変更したため、既存のクライアントはすべて間違ったデータベースバージョンになります。
かなり大きなユーザーベースがあり、既存のすべてのユーザーにデータをエクスポートし、完全にアンインストールしてから新しいバージョンを再インストールする必要がある場合、問題に直面しています。
質問:既存のデータベースをプログラムでアップグレードする方法はありますか?
ありがとう
正しい解決策はありません
他のヒント
役に立つかもしれない2つの記事を次に示します。最初のものは、前提条件として展開するのではなく、SQLCE DLLを展開に含める方法です。これにより、実行しているバージョンを完全に制御できます。
http://robindotnet.wordpress.com/2010/02/28/how-to-deploy-the-sqlserver-compact-edition-software//
2番目の記事は、ClickOnceの更新からデータを安全に保つ方法に関するものです。
確かに、SQLCeEngineアップグレードAPIを使用して、サポートもアップグレードします。 http://erikej.blogspot.com/2010/08/how-to-upgrade-version-3x-database-file.html