Access データベースは、ニーズと使用可能なリソースに応じて、いくつかの方法で共有できます。 この記事では、利用可能なオプション、各オプションの利点、詳細を確認する場所について説明します。
この記事の内容
Access データを共有する方法の概要
データベース アプリケーションは時間の経過とともに変化し、拡張します。 同時ユーザー数、ネットワーク環境、スループット、待機時間、データベース サイズ、ピーク使用時間、予想される増加など、多くの要因がニーズとパフォーマンスに影響します。 データベース ソリューションが成功すれば、おそらく進化が必要になります。 幸いにも、Access にはシンプルから高度なものへと進化する道が用意されているため、時間の経過と共にソリューションを拡張できます。 次の表は、そのパスを選択するのに役立つ Access のシナリオとワークロードをまとめたものです。
単一データベースを共有する
このオプションは最も単純で、必要な要件も最も少なくなります。 また、最小限の機能も提供します。 この方法では、データベース ファイルは共有ネットワーク ドライブに格納され、すべてのユーザーが同時にデータベース ファイルを共有します。 すべてのデータベース オブジェクトが共有されているため、複数のユーザーが同時にデータを変更した場合の信頼性や可用性などの制限事項があります。 この方法では、すべてのデータベース オブジェクトがネットワーク経由で送信されるため、パフォーマンスが低下する可能性もあります。
このオプションは、数人のユーザーが同時にデータベースを使用し、ユーザーがデータベースの設計をカスタマイズする必要がない場合は、機能するかもしれません。 ただし、この方法は、各ユーザーがデータベース ファイルの完全なコピーを持っているため、他の共有方法よりも安全性が低くなります。 これにより、不正アクセスのリスクが高まります。
共有フォルダを使用してデータベースを共有するには:
自宅または小規模ビジネス環境では、特定のユーザーとフォルダーを共有します。 詳細については、「 Windows でのネットワーク経由のファイル共有」を参照してください。
すべてのユーザーのコンピューターで、Access が共有モードで開くように設定されていることを確認します。 これは既定の設定ですが、チェックしてください。 ユーザーが排他的モードでデータベースを開くと、データの可用性が妨げられます。
- Access を起動し、[ファイル>オプション] を選択します。
- [ Access オプション] ダイアログ ボックスで、[ クライアント設定] を選択します。
- [ 詳細設定 ] セクションの [ 既定のオープン モード] で、[ 共有] を選択し、[ OK] を選択して、[Access] を終了します。
データベース ファイルを共有フォルダーにコピーします。 ファイルをコピーした後、ファイル属性がデータベース ファイルに対する読み取りおよび書き込みアクセスを許可していることを確認します。 データベースを使用するには、ユーザーが読み取りおよび書き込みのアクセス権を持っている必要があります。
各ユーザーのコンピューターに、データベース ファイルへのショートカットを作成します。 詳細については、「 Office のプログラムまたはファイルのデスクトップ ショートカットを作成する」を参照してください。
分割データベースを共有する
これは、SharePoint サイトまたはデータベース サーバーがない場合に適しています。 分割されたデータベースは、ローカル エリア ネットワーク (LAN) 経由で共有できます。 データベースを分割する場合は、データベースを 2 つのファイルに再編成します。データ テーブルを含むバックエンド データベースと、クエリ、フォーム、レポートなどの他のすべてのデータベース オブジェクトを含むフロントエンド データベースです。 各ユーザーはフロント エンド データベースのローカル コピーを使用してデータを操作します。
データベースを分割する次のような利点があります。
- パフォーマンスの向上: データのみがネットワーク全体で共有され、テーブル、クエリ、フォーム、レポート、マクロ、モジュールは共有されません。
- 可用性の向上: レコードの編集などのデータベース トランザクションをより迅速に処理できます。
- 強化されたセキュリティ: ユーザーはリンク テーブルを介してバックエンド データベースにアクセスします。 侵入者がフロントエンド データベースを介してデータに不正にアクセスする可能性は低くなります。
- 信頼性の向上: ユーザーに問題が発生し、データベースが予期せず終了した場合、データベース ファイルの破損は通常、ユーザーが開いていたフロントエンド データベースのコピーに限定されます。
- 柔軟な開発環境: 各ユーザーは、クエリ、フォーム、レポート、およびその他のデータベース オブジェクトを、他のユーザーに影響を与えることなく、独自に開発できます。 バックエンド データベースに格納されているデータへのアクセスを中断することなく、フロントエンド データベースの新しいバージョンを開発して配布することもできます。
詳細については、「 Access データベースを分割する」を参照してください。
SharePoint サイトでデータを共有する
SharePoint サイトで Access データを共有するには、いくつかの方法があります。
- リンク: リンク プロセスは別のプログラムのデータに接続するため、データのコピーを作成して維持しなくても、SharePoint と Access の両方で最新のデータを表示および編集できます。 SharePoint リストを Access データベースにコピーするのではなく、クエリを実行し、そのリストに基づいてレポートを作成したい場合は、データにリンクできます。
- 移動中: Access から SharePoint サイトにデータを移動する場合、SharePoint サイト上に、データベース内のテーブルへのリンクが維持されたままリストが作成されます。 [SharePoint にテーブルをエクスポートする] ウィザードを使用すると、すべてのテーブルのデータを同時に移動し、それらのリレーションシップを維持できます。
詳細については、「 データを SharePoint にインポート、リンク、または移動する」を参照してください。
警告
Access データベース ファイルは OneDrive または SharePoint ドキュメント ライブラリに保存できますが、これらの場所から Access データベースを開かないことをお勧めします。 ファイルは編集用にローカルにダウンロードされ、SharePoint に変更を保存した後に再度アップロードされる場合があります。 複数のユーザーが SharePoint から Access データベースを開くと、データベースのコピーが複数作成され、予期しない動作が発生する可能性があります。 この推奨事項は、単一のデータベース、分割データベース、 .accdb、 .accdc、 .accde、 .accdr のファイル形式を含むすべての種類の Access ファイルに適用されます。 Access の展開の詳細については、「 Access アプリケーションを展開する」を参照してください。
データベース サーバーを使用してデータを共有する
Access では、SQL Server などのデータベース サーバー製品と連携してデータベースを共有できます。 この方法には多くの利点がありますが、追加のソフトウェア (データベース サーバー製品) が必要です。
この方法は、テーブルがネットワーク上に格納され、このテーブルへのリンクと同時にクエリ、フォーム、レポート、およびその他のデータベース オブジェクトへのリンクが含まれる Access データベース ファイルのローカル コピーをユーザーごとに使用できるため、データベースの分割に似ています。 この共有方法の利点は、使用するデータベース・サーバ・ソフトウェアによって異なりますが、一般に、ユーザー・アカウントとデータへの選択的アクセス、強力なデータ可用性、および統合データ管理ツールが含まれます。 また、ほとんどのデータベース サーバー ソフトウェアは以前のバージョンの Access でも動作するため、すべてのユーザーが同じバージョンを使用する必要はありません。 テーブルのみが共有されます。 詳細については、「Access データベースを SQL Server に移行する」、「SQL Server データベース内のデータをインポートまたはリンクする」、「Azure SQL Server データベースにリンクする、またはデータベースからデータをインポートする」を参照してください。
データベース サーバーを使用してデータベースを共有する利点
- 高いパフォーマンスと拡張性: 多くの場合、データベース サーバーは Access データベース ファイルのみを使用するよりも優れたパフォーマンスを提供します。 多くのデータベース サーバー製品では、現在の Access データベース ファイル (2 ギガバイト) の制限の約 500 倍の非常に大きなテラバイト サイズのデータベースもサポートされています。 通常、データベース サーバー製品は、クエリを並列処理し、ユーザーが追加されたときの追加のメモリ要件を最小限に抑えることで効率的に動作します。
- 可用性の向上: ほとんどのデータベース・サーバ製品では、データベースの使用中にバックアップできます。 そのため、データをバックアップするためにユーザーに強制的にデータベースを終了させる必要はありません。 データベース・サーバ製品では、通常、同時編集とレコード・ロックも効率的に処理されます。
- セキュリティの改善: データベースを完全にセキュリティで保護することはできません。 ただし、データベース サーバー製品は、データを不正使用から保護するのに役立つ強力なセキュリティを提供します。 ほとんどのデータベース サーバー製品にはアカウント ベースのセキュリティが備わっており、どのテーブルを表示できるかを指定できます。 誰かが Access フロントエンドを不正に取得した場合でも、アカウント ベースのセキュリティがデータの不正使用を防ぐのに役立ちます。
- 自動回復機能: オペレーティング・システムのクラッシュや停電などのシステム障害が発生した場合に、一部のデータベース・サーバ製品には、データベース管理者の介入なしでデータベースを最後の整合性のある状態に数分で復元する自動リカバリ・メカニズムがあります。
- サーバー ベースの処理: クライアント/サーバー構成で Access を使用すると、結果をクライアントに送信する前にサーバー上でデータベース クエリを処理することで、ネットワーク トラフィックを削減できます。 通常、特に大規模なデータ・セットを扱う場合は、サーバーに処理を依頼する方が効率的です。
- Azure SQL Server: SQL Server の利点に加えて、ダウンタイムのない動的なスケーラビリティ、インテリジェントな最適化、グローバルなスケーラビリティと可用性、ハードウェア コスト、および少ない管理を提供します。