3人のユーザーが使用する必要があるデータベースをaccess2007で作成しました。各ユーザーのコンピューターにコピーを配置するか、SQLサーバーにコピーを配置するかがわからないため、行き詰まりました。サーバーに配置すると、データの一貫性を保つために1つのアクセスポイントが必要になりますが、ActiveXが必要かどうかはわかりません。使い方もわからない。コンピューターごとに1つずつ配置する場合、マスターファイルの更新を回避するにはどうすればよいですか?誰かがそれをすべて分解してくれませんか、私は初心者です!
3 に答える
あなたの質問は私にはかなり混乱しているようです。あなたは SQL Server について言及していますが、アプリケーションがデータ ストレージに SQL Server を使用しているとは言いません。
したがって、データ テーブル、フォーム、およびレポートがすべて 1 つのファイルに含まれている単一の MDB または ACCDB ファイルがあると想定することしかできません。
このアプリを配布する唯一の適切な方法は次のとおりです。
バックエンド(データテーブルのみ)を指すリンクされたテーブルを使用して、フロントエンド(フォーム/レポート/など)に分割します。
ファイル サーバーにバック エンドを配置し、バック エンドの新しい場所を指すようにテーブルを再リンクします。
3 人のユーザーのそれぞれにフロント エンドのコピーを渡し、デスクトップ コンピューターからフロント エンドを実行します。フロントエンドへの変更の配布について懸念がある場合は、Tony Toews のフロントエンド アップデーターのようなものが非常に便利です。
SQL Server にデータを配置する必要があると主張する人もいますが、ほとんどの 3 ユーザー Access アプリは SQL Server の機能を必要としません。SQL Server の管理者権限が与えられていない場合、アプリケーションのデータベースを変更し続けることは非常に困難です。
一方、データベースが 1 GB 以上に拡大する場合、または厳格なセキュリティ要件がある場合、またはデータベース内のデータが非常に重要であるため完全なフェイルプルーフ バックアップが必要な場合は、SQL Serverが妥当なデータとなります。お店。
ほとんどの自家製アプリでは、それほど多くはありません。
私がこれを解決した「最良の」方法は、Accessのリンクテーブルを使用してSQL Serverにアクセスすることです(あなたがそれを持っていると言ったので..?)。
このシナリオでフロントエンドとしてアクセスを使用することは最善の方法ではありませんが、2007年では、数バージョン前の場合よりも少し優れています。AccessをSqlServerにリンクする方法については、次の記事を確認してください。