ミッション クリティカルなアプリケーションに使用される高性能な管理データベースである SQL データベースにデータをリンクさせたり、SQL データベースからデータをインポートしたりすることができます。 詳細については、「SQL Server 2016」を参照してください。
-
データにリンクする場合、Access は、Access と SQL データベースのデータに対する変更を同期する双方向接続を作成します。
-
データをインポートする場合、Access は 1 回限りのデータのコピーを作成するため、Access または SQL データベースのいずれかのデータに対する変更は同期されません。
はじめに
もっとスムーズに進みたいですか? 次に、リンクまたはインポートする前に、次の準備を行います。
-
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:はじめに
-
[外部データ]、[新しいデータ ソース]、[データベースから]、[SQL Server から] の順に選択します。
-
[外部データの取り込み - ODBC データベース] ダイアログ ボックスで、次のいずれかの操作を行います。
-
データをインポートするには、[現在のデータベースの新しいテーブルにソース データをインポートする] を選択します。
-
データをリンクするには、[リンク テーブルを作成してソース データにリンクする] をクリックします。
-
-
[OK] をクリックします。
ステージ 2:DSN ファイルを作成または再利用する
DSN ファイルを作成したり、既存の DSN ファイルを再利用したりできます。 異なるリンクおよびインポート操作で同じ接続情報を使用する場合、または DNS ファイルを使用する異なるアプリケーションと共有する場合は、DNS ファイルを使用します。 データ接続マネージャーを使用して直接 DSN ファイルを作成することができます。 詳細については、「ODBC データ ソースを管理する」を参照してください。
以前のバージョンの SQL ODBC ドライバーは引き続き使用できますが、多数の改善が加えられていますので、新しい SQL Server 2016 の機能をサポートしているバージョン 13.1 を使用することをお勧めします。 詳細については、「Windows 上の Microsoft ODBC Driver for SQL Server」を参照してください。
-
次のいずれかの操作を行います。
-
使用する DSN ファイルが既に存在する場合は、リストから選びます。
接続情報に入力した認証方法に応じて、再度パスワードを入力する必要がある場合があります。
-
新しい DNS ファイルを作成するには:
-
[新規作成] を選びます。
-
[ODBC Driver 13 for SQL Server] を選択し、[次へ] を選択します。
-
DSN ファイルの名前を入力するか、[参照] をクリックして別の場所にファイルを作成します。
-
-
-
[次へ] をクリックし、サマリー情報を確認して、[完了] をクリックします。
ステージ 3:[SQL Server に接続するための新規データ ソースを作成する] を使用する
[SQL Server に接続するための新規データ ソースを作成する] ウィザードで、次の操作します。
-
1 ページ目で、識別情報を入力します。
-
必要に応じて、[説明] ボックスに、DSN ファイルに関するドキュメント情報を入力します。
-
[サーバー] ボックスに、SQL Server データベースの名前を入力します。 下矢印はクリックしないでください。
-
-
2 ページ目では、以下の認証方法のいずれかを選択します。
-
統合 Windows 認証を使用する場合 Windows ユーザー アカウント経由で接続します。 必要に応じて、サービス プリンシパル名 (SPN) を入力します。 詳細については、「クライアント接続 (ODBC) におけるサービス プリンシパル名 (SPN)」を参照してください。
-
SQL Server認証... ログイン ID とパスワードを入力して、データベースに設定されている資格情報で接続します。
-
-
3 ページ目と 4 ページ目では、接続をカスタマイズするためのさまざまなオプションを選択します。 これらのオプションの詳細については、「Microsoft ODBC Driver for SQL Server」を参照してください。
-
設定を確認する画面が表示されます。 [データ ソースのテスト] を選択し、接続を確認します。
-
データベースにログインする必要がある場合があります。 [SQL Server ログイン] ダイアログ ボックスに、[ログイン ID] と [パスワード] を入力します。 その他の設定を変更するには、[オプション] を選択します。
ステージ 4: リンクまたはインポートするテーブルとビューを選択する
-
[テーブルのリンク] または [オブジェクトのインポート] ダイアログ ボックスの [テーブル] で、リンクまたはインポートする各テーブルまたはビューを選択し、[OK] をクリックします。
-
リンク操作で、[パスワードを保存] を選択するかどうかを決定します。
セキュリティ しかし、これは暗号化されていないパスワードを Access データベースに保存します。 これは、ソース コンテンツにアクセスできるユーザーがユーザー名とパスワードを表示できることを意味しています。 このオプションを選択する場合、信頼できる場所に Access データベースを保存し、Access データベース パスワードを作成することを強くお勧めします。 詳細については、「データベースを信頼するかどうか決定する」と「データベース パスワードを使用してデータベースを暗号化する」を参照してください。
メモ パスワードを保存しないことにしたが、考えを変える場合は、リンク テーブルを削除して再作成し、[ パスワードの保存] を選択する必要があります。
ステージ 5:定義およびタスクを作成する (インポートのみ)
-
[外部データの取り込み - ODBC データベース] ダイアログ ボックスで、インポート手順を定義として保存し、Outlook タスクを作成して定期的にインポート操作を実施するように自動化します。 詳細については、「インポートやエクスポートの操作の詳細を定義として保存する」を参照してください。
結果
リンクまたはインポート操作が完了すると、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 でデザイン変更を確認するには、リンクされたテーブルを更新します。
-
[外部データ]、[リンク テーブル マネージャー] の順に選択します。
-
更新するリンクされた各テーブルを選択し、[OK] を選択して、[閉じる] を選択します。
データ型を比較する
Access のデータ型は、SQL Server のデータ型とは異なる名前で呼ばれます。 たとえば、bit データ型の SQL Server 列は、Yes/No データ型で Access にインポートまたはリンクされます。 詳細については、「Access と SQL Server データ型の比較」を参照してください。
他に必要な情報はありますか?
-
インポート定義を後で利用できるように保存する方法の詳細については、「インポートやエクスポートの操作の詳細を定義として保存する」の記事を参照してください。
-
保存済みのインポート定義を実行する方法の詳細については、「保存済みのインポート操作またはエクスポート操作を実行する」の記事を参照してください。
-
スケジュールを設定して任意の時刻で実行する方法の詳細については、「インポート操作やエクスポート操作のスケジュールを設定する」を参照してください。
-
定義名の変更、定義の削除、定義のソース ファイル名の更新を行う方法の詳細については、「データ操作を管理する」の記事を参照してください。