次の方法で共有


SQL Server への接続 (AccessToSQL)

Access データベースを SQL Server に移行するには、SQL Server のターゲット インスタンスに接続する必要があります。 接続すると、SSMA は SQL Server のインスタンス内のデータベースに関するメタデータを取得し、SQL Server メタデータ エクスプローラーにデータベース メタデータを表示します。 SSMA には、接続先の SQL Server のインスタンスに関する情報が格納されますが、パスワードは格納されません。

SQL Server への接続は、プロジェクトを閉じるまでアクティブなままです。 プロジェクトを再度開くときに、サーバーへのアクティブな接続が必要な場合は、SQL Server に再接続する必要があります。 データベース オブジェクトを SQL Server に読み込んでデータを移行するまで、オフラインで作業できます。

SQL Server のインスタンスに関するメタデータは自動的には同期されません。 代わりに、SQL Server メタデータ エクスプローラーでメタデータを更新するには、SQL Server メタデータを手動で更新する必要があります。 詳細については、このトピックで後述する「SQL Server メタデータの同期」セクションを参照してください。

必要な SQL Server のアクセス許可

SQL Server への接続に使用されるアカウントには、アカウントが実行するアクションに応じて異なるアクセス許可が必要です。

  • Access オブジェクトを Transact-SQL 構文に変換したり、SQL Server からメタデータを更新したり、変換された構文をスクリプトに保存したりするには、アカウントに SQL Server のインスタンスにログオンするためのアクセス許可が必要です。

  • SQL Server にデータベース オブジェクトを読み込むには、アカウントが db_ddladmin データベース ロールのメンバーである必要があります。

  • SQL Server にデータを移行するには、アカウントが db_owner データベース ロールのメンバーである必要があります。

SQL Server 接続の確立

Access データベース オブジェクトを SQL Server 構文に変換する前に、Access データベースを移行する SQL Server のインスタンスへの接続を確立する必要があります。

接続プロパティを定義するときは、オブジェクトとデータを移行するデータベースも指定します。 このマッピングは、SQL Server に接続した後、Access データベース レベルでカスタマイズできます。 詳細については、「ソース データベースとターゲット データベースのマッピング」を参照してください。

重要

SQL Server に接続する前に、SQL Server のインスタンスが実行されており、接続を承諾できることを確認します。

SQL Server に接続するには:

  1. [ファイル] メニューの [SQL Server に接続] を選択します。 以前に SQL Server に接続した場合、コマンド名は [SQL Server に再接続] になります。

  2. [サーバー名] ボックスに、SQL Serverのインスタンスの名前を入力または選択します。

    • ローカル コンピューター上の既定のインスタンスに接続する場合は、localhost またはドット (.) を入力できます。
    • 別のコンピューター上の既定のインスタンスに接続する場合は、コンピューターの名前を入力します。
    • 名前付きインスタンスに接続する場合は、コンピューター名、バックスラッシュ、インスタンス名を入力します。 (例: MyServer\MyInstance)。
    • SQL Server Express のアクティブなユーザー インスタンスに接続するには、\\.\pipe\sql\query などの、パイプ名を指定する名前付きパイプ プロトコルを使用して接続します。 詳細については、SQL Server Express のドキュメントを参照してください。
  3. SQL Server のインスタンスがデフォルト以外のポートで接続を承諾するように構成されている場合は、[サーバー ポート] ボックスに SQL Server 接続に使用されるポート番号を入力します。 SQL Server の既定のインスタンスの場合、デフォルトのポート番号は 1433 です。 名前付きインスタンスの場合、SSMA は SQL Server Browser サービスからポート番号の取得するようにします。

  4. [データベース] ボックスに、オブジェクトとデータ移行のターゲット データベースの名前を入力します。 このオプションは、SQL Server に再接続するときには使用できません。 ターゲット データベース名にスペースや特殊文字を含めることはできません。 たとえば、Access データベースを abc という名前の SQL Server データベースに移行できます。 ただし、Access データベースを a b-c という名前の SQL Server データベースに移行することはできません。 このマッピングは、接続後にデータベースごとにカスタマイズできます。 詳細については、「ソース データベースとターゲット データベースのマッピング」を参照してください。

  5. [認証] ドロップダウン メニューで、接続に使用する認証の種類を選択します。 現在の Windows アカウントを使用するには、[Windows 認証] を選択します。 SQL Server ログインを使用するには、[SQL Server 認証] を選択し、ユーザー名とパスワードを指定します。

  6. セキュリティ保護接続の場合、[接続の暗号化] チェックボックスと [TrustServerCertificate] チェックボックスの 2 つのコントロールが追加されます。 [接続の暗号化] チェックボックスがオンになっている場合にのみ、[TrustServerCertificate] チェックボックスが表示されます。 [接続の暗号化] がオン (true) で [TrustServerCertificate] がオフ (false) の場合、SQL Server SSL 証明書の妥当性確認が行われます。 サーバー証明書の検証は、SSL ハンドシェイクの一部であり、接続先のサーバーが適切なサーバーであることを保証します。 これを確実に行うには、クライアント側とサーバー側に認定資格証をインストールする必要があります。

  7. [接続] をクリックします。

重要

より高いバージョンのSQL Serverに接続できますが、移行プロジェクトの作成時に選択したバージョンと比較すると、データベース オブジェクトの変換は、接続先のSQL Serverのバージョンではなく、プロジェクトのターゲット バージョンによって決まります。

SQL Server メタデータの同期

接続後に SQL Server スキーマが変更された場合は、メタデータをサーバーと同期できます。

SQL Serverメタデータを同期するには、[SQL Server メタデータ エクスプローラー][データベース] を右クリックし、[データベースと同期] を選択します。

SQL Server への再接続

SQL Server への接続は、プロジェクトを閉じるまでアクティブなままです。 プロジェクトを再度開くときに、サーバーへのアクティブな接続が必要な場合は、SQL Server に再接続する必要があります。 データベース オブジェクトを SQL Server に読み込んでデータを移行するまで、オフラインで作業できます。

SQL Server に再接続する手順は、接続を確立する手順と同じです。

次の手順

ソース データベースとターゲット データベース間のマッピングをカスタマイズする場合は、「ソース データベースとターゲット データベースのマッピング」を参照してください。それ以外の場合は次の手順として、データベース オブジェクトの変換 を使用してデータベース オブジェクトを SQL Server 構文に変換します。

参照

SQL Server への Access データベースの移行