マルチユーザー商用アプリケーションの SQLExpress を使用した経験がありますか?

StackOverflow https://stackoverflow.com/questions/96997

質問

弊社が長年開発・販売してきたVB6/Accessアプリケーションを継承しました。SQL Server 2005 Express Edition と .Net に移行します。

アプリケーションはマルチユーザーにすることができます。現在、顧客にとってセットアップは簡単です -- 初回起動時にデータベースを作成するフォルダーに移動します。2 番目のユーザーは同じファイルを参照します。

SQLExpress を使用する場合、アプリケーションではサーバー上で SQLExpress を構成するためにさらに多くの関与が必要になると思います。しかし、セキュリティは向上し、(コード変更なしで) 大規模顧客向けの SQL バージョンが提供されると思います。

設置と技術サポートの観点から最高のカスタマー エクスペリエンスを生み出すにはどうすればよいですか?どのような問題が生じましたか?どのようなインストール手順がうまくいきましたか?

サーバー/クライアントに個別のインストールを設定しますか? それとも適切な手順を提供するだけですか?顧客は最初の試行でどのようなことを間違えるのでしょうか?

役に立ちましたか?

解決

Visual Studio からの展開プロジェクトを使用すると、SQL Server Express インスタンスを簡単にインストールできます。

私たちのアプリケーションにも同じ種類のシナリオがあり、クライアントとサーバーに個別のインストールが必要であることを意味します。

サーバーのインストールでは、新しい SQL Server のインストール、または必要に応じて既存のインストールのスキーマのアップグレードが行われます。クライアントのインストールでは、クライアントが必要とするファイルをパッケージ化するだけです。データベース スキーマをアップグレードし、新しいスキーマに対して動作する更新されたクライアント バージョンがクライアントに確実に存在するようにするシナリオを検討する必要があります。これは次のような簡単な方法で実現できます。

データベースにバージョン ID を保存します。1.0.1クライアントアプリケーションのAssemblyInfo.csを更新し、アセンブリバージョンがデータベースに保存されているバージョンと一致するようにします。そうでない場合は、ユーザーに新しいバージョンをインストールするように求められます。

可能な限り最高のユーザー エクスペリエンスを実現するには、新しいサーバー バージョンをインストールし、すべてのクライアントを自動更新できるようにする必要があります。私たちはこれを行うための方法を持っており、必要に応じて詳細をお知らせします。

他のヒント

SQL Express のルートを選択し、それをインストール パッケージに含めることをお勧めします。インストーラーには大量のコマンドライン オプションがあり、SQL スクリプトを使用してデータベースに対するインストール後の構成 (つまり、CLR 統合、OpenRowset、その他の機能の有効化/無効化) を行うことができます。

さらに、古い MSDE 2000 のインストールよりもはるかに安定しています。それを裏付ける悪夢を見ました。また、デフォルトの DB インストール パラメータを指定すると、100 回中 99 回、人々が満足することがわかりました。

SQL Express ウェブログ

コマンドプロンプトから SQL 2008 をインストールする方法

ユーザー数とデータ量はどれくらいですか?

SQL Express 2005 で「多すぎる」ユーザー数に関する一般的なガイドラインがあるかどうかはわかりませんが、4 GB というハード データ制限があります。Access の伝統ではそんなことは起こらないと思いますが、知っておくと良いでしょう。

SQL Express のインストールを自動化できます。私の妻がインストールした何かがそれを実行したのを見たことがありますが、彼女は私がそれをインストールすると疑う余地のない人です。

もあります SQL Server コンパクト エディション これは、.NET 3.5 と Windows Mobile をターゲットにしていると思います。これは、Access のような「単一ファイル データベース」に似ていると思います。

SQL Express は、機能と信頼性において Access よりも大幅に向上します。これ以上の設定は必要ありません。何をしているのかがわかっていれば、別のアプローチを使用するだけです。

私の会社でもよく使っています。遅いマシンでは起動時間が遅いという問題がありました。

インストールのエクスペリエンスは完璧ではありません。アプリケーションがデータベース テンプレートとして使用するデータベースを復元するユーティリティがあります。

SQLExpress への移行をまだ検討中ですが、あなたのグループでは SQLExpress への移行を検討していますか? SQLite?クライアントのシステムにエンジンをインストールしなくても、必要なデータベース機能を利用できます。

SQL Server 2005 Express Edition は、適切なインストーラを使用して簡単にインストールできます。数時間の作業で十分です。本気で取り組むなら、インストールに対する恐怖に足を引っ張られる必要はありません。

別のオプション:SQL Server Express は、MDF ファイルを指定するだけで SQL Server のインスタンスを実行する必要がない「ファイル モード」でも使用できると思います。これは、現在のアプリが Access を使用しているように聞こえる方法と非常に似ています。これがマルチユーザーの状況でどのように機能するかはわかりませんが、調査する必要があるかもしれません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top