SQL Server データベースのインポートまたは SQL Server データベースへのリンク
Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

ミッション クリティカルなアプリケーションに使用される高性能な管理データベースである SQL データベースにデータをリンクさせたり、SQL データベースからデータをインポートしたりすることができます。 詳細については、「SQL Server 2016」を参照してください。

  • データにリンクする場合、Access は、Access と SQL データベースのデータに対する変更を同期する双方向接続を作成します。

  • データをインポートする場合、Access は 1 回限りのデータのコピーを作成するため、Access または SQL データベースのいずれかのデータに対する変更は同期されません。

Access と SQL Server の接続の概要

はじめに

もっとスムーズに進みたいですか? 次に、リンクまたはインポートする前に、次の準備を行います。

  • SQL Server データベースのサーバー名を見つけて、必要な接続情報を特定し、認証方法 (Windows または SQL Server) を選択します。 認証方法の詳細については、「サーバーへの接続 (データベース エンジン)」および「SQL Database の保護」を参照してください。

  • リンクまたはインポートするテーブルまたはビュー、およびリンクされたテーブルの一意の値のフィールドを特定します。 一度の操作で複数のテーブルまたはビューをリンクまたはインポートすることができます。

  • 各テーブルまたは各ビューの列数を考慮します。 Access は 1 テーブルにつき 255 を超えるフィールドをサポートしていないため、Access は最初の 255 列のみをリンクまたはインポートします。 この問題を回避するため、SQL Server データベースに、制限を超える列にアクセスするビューを作成することができます。

  • インポートするデータの総量を決定します。 Access データベースの最大サイズは、2 GB からシステム オブジェクトに必要な領域を引いた大きさです。 SQL Server データベースに大きなテーブルが含まれている場合、すべてを 1 つの Access データベースにインポートすることはできません。 この場合、インポートする代わりにデータへリンクすることを検討してください。

  • 信頼できる場所と Access データベース パスワードを使用して、Access データベースとそれに含まれる接続情報を保護します。 これは、Access に SQL Server のパスワードを保存する場合に特に重要です。

  • 追加のリレーションシップを作成することを計画します。 Access では、インポート操作の最後に、関連するテーブル間のリレーションシップが自動的に作成されません。 [リレーションシップ] ウィンドウを使用すると、新しいテーブルと既存のテーブル間のリレーションシップを手動で作成することができます。 詳細については、「リレーションシップ ウィンドウとは」と「リレーションシップを作成、編集、または削除する」を参照してください。

ステージ 1:はじめに

  1. [外部データ]、[新しいデータ ソース]、[データベースから]、[SQL Server から] の順に選択します。

  2. [外部データの取り込み - ODBC データベース] ダイアログ ボックスで、次のいずれかの操作を行います。

    • データをインポートするには、[現在のデータベースの新しいテーブルにソース データをインポートする] を選択します。

    • データをリンクするには、[リンク テーブルを作成してソース データにリンクする] をクリックします。

  3. [OK] をクリックします。

ステージ 2:DSN ファイルを作成または再利用する

DSN ファイルを作成したり、既存の DSN ファイルを再利用したりできます。 異なるリンクおよびインポート操作で同じ接続情報を使用する場合、または DNS ファイルを使用する異なるアプリケーションと共有する場合は、DNS ファイルを使用します。 データ接続マネージャーを使用して直接 DSN ファイルを作成することができます。 詳細については、「ODBC データ ソースを管理する」を参照してください。

以前のバージョンの SQL ODBC ドライバーは引き続き使用できますが、多数の改善が加えられていますので、新しい SQL Server 2016 の機能をサポートしているバージョン 13.1 を使用することをお勧めします。 詳細については、「Windows 上の Microsoft ODBC Driver for SQL Server」を参照してください。

  1. 次のいずれかの操作を行います。

    • 使用する DSN ファイルが既に存在する場合は、リストから選びます。

      [データ ソースの選択] ダイアログ ボックス

      接続情報に入力した認証方法に応じて、再度パスワードを入力する必要がある場合があります。

    • 新しい DNS ファイルを作成するには:

      1. [新規作成] を選びます。

        [新しいデータ ソースの作成] ダイアログ ボックス
      2. [ODBC Driver 13 for SQL Server] を選択し、[次へ] を選択します。

      3. DSN ファイルの名前を入力するか、[参照] をクリックして別の場所にファイルを作成します。

  2. [次へ] をクリックし、サマリー情報を確認して、[完了] をクリックします。

ステージ 3:[SQL Server に接続するための新規データ ソースを作成する] を使用する

[SQL Server に接続するための新規データ ソースを作成する] ウィザードで、次の操作します。

  1. 1 ページ目で、識別情報を入力します。

    • 必要に応じて、[説明] ボックスに、DSN ファイルに関するドキュメント情報を入力します。

    • [サーバー] ボックスに、SQL Server データベースの名前を入力します。 下矢印はクリックしないでください。

  2. 2 ページ目では、以下の認証方法のいずれかを選択します。

    • 統合 Windows 認証を使用する場合    Windows ユーザー アカウント経由で接続します。 必要に応じて、サービス プリンシパル名 (SPN) を入力します。 詳細については、「クライアント接続 (ODBC) におけるサービス プリンシパル名 (SPN)」を参照してください。

    • SQL Server認証...    ログイン IDパスワードを入力して、データベースに設定されている資格情報で接続します。

  3. 3 ページ目と 4 ページ目では、接続をカスタマイズするためのさまざまなオプションを選択します。 これらのオプションの詳細については、「Microsoft ODBC Driver for SQL Server」を参照してください。

  4. 設定を確認する画面が表示されます。 [データ ソースのテスト] を選択し、接続を確認します。

  5. データベースにログインする必要がある場合があります。 [SQL Server ログイン] ダイアログ ボックスに、[ログイン ID] と [パスワード] を入力します。 その他の設定を変更するには、[オプション] を選択します。

ステージ 4: リンクまたはインポートするテーブルとビューを選択する

  1. [テーブルのリンク] または [オブジェクトのインポート] ダイアログ ボックスの [テーブル] で、リンクまたはインポートする各テーブルまたはビューを選択し、[OK] をクリックします。

    リンクまたはインポートするテーブルのリスト
  2. リンク操作で、[パスワードを保存] を選択するかどうかを決定します。

    セキュリティ    しかし、これは暗号化されていないパスワードを Access データベースに保存します。 これは、ソース コンテンツにアクセスできるユーザーがユーザー名とパスワードを表示できることを意味しています。 このオプションを選択する場合、信頼できる場所に Access データベースを保存し、Access データベース パスワードを作成することを強くお勧めします。 詳細については、「データベースを信頼するかどうか決定する」と「データベース パスワードを使用してデータベースを暗号化する」を参照してください。

    メモ    パスワードを保存しないことにしたが、考えを変える場合は、リンク テーブルを削除して再作成し、[ パスワードの保存] を選択する必要があります。

ステージ 5:定義およびタスクを作成する (インポートのみ)

結果

リンクまたはインポート操作が完了すると、SQL Serverテーブルまたはビューと同じ名前のテーブルがナビゲーション ウィンドウに表示され、所有者名と組み合わされます。 たとえば、SQL 名が dbo の場合です。製品では、Access 名がdbo_Product。 その名前が既に使用されている場合、Access は新しいテーブル名に "1" を追加します (たとえば、dbo_Product1)。 dbo_Product1も既に使用されている場合、Access はdbo_Product2を作成します。 ただし、テーブルの名前をより意味のある名前に変更できます。

インポート操作では、Access はデータベースのテーブルを上書きすることはありません。 SQL Server データを既存のテーブルに直接追加することはできませんが、同じようなテーブルからデータをインポートした後は追加クエリ作成してデータを追加することができます。

リンク操作では、SQL Server テーブルで列が読み取り専用の場合、Access でも読み取り専用になります。

ヒント    接続文字列を表示するには、[アクセス] ナビゲーション ウィンドウのテーブルにカーソルを合わせます。

リンクされたテーブルのデザインを更新する

リンクされたテーブルでは、列を追加、削除、または変更したり、データ型を変更したりすることができません。 デザインを変更する場合は、SQL Server データベースで行います。 Access でデザイン変更を確認するには、リンクされたテーブルを更新します。

  1. [外部データ]、[リンク テーブル マネージャー] の順に選択します。

  2. 更新するリンクされた各テーブルを選択し、[OK] を選択して、[閉じる] を選択します。

データ型を比較する

Access のデータ型は、SQL Server のデータ型とは異なる名前で呼ばれます。 たとえば、bit データ型の SQL Server 列は、Yes/No データ型で Access にインポートまたはリンクされます。 詳細については、「Access と SQL Server データ型の比較」を参照してください。

他に必要な情報はありますか?

ページの先頭へ

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。