SQL Server への変換されたデータベース オブジェクトの読み込み (AccessToSQL)

Access データベースオブジェクトを SQL Server または SQL Azure に変換したら、変換後のデータベース オブジェクトを SQL Server または SQL Azure に読み込むことができます。 SSMA でオブジェクトを作成することも、オブジェクトのスクリプトを作成してスクリプトを自分で実行することもできます。 また、SSMA では、SQL Server または Azure SQL データベースの実際のコンテンツを使用してターゲット メタデータを更新できます。

同期とスクリプトの選択

変換されたデータベース オブジェクトを変更せずに SQL Server または SQL Azure に読み込む場合は、SSMA でデータベース オブジェクトを直接作成または再作成することができます。 この方法は時間がかからず簡単ですが、ストアド プロシージャ以外の SQL Server または SQL Azure オブジェクトを定義する Transact-SQL コードをカスタマイズすることはできません。

オブジェクトの作成に使用する Transact-SQL を変更する場合、またはオブジェクトの作成をより詳細に制御する場合は、SSMA を使用してスクリプトを作成します。 これで、これらのスクリプトを変更したり、各オブジェクトを個別に作成したり、さらには、SQL Server エージェントを使用してこれらのオブジェクトの作成をスケジュールしたりすることができます。

SSMA を使用してオブジェクトを SQL Server と同期する

SSMA を使用して SQL Server または Azure SQL Database オブジェクトを作成するには、次の手順に示すように、SQL Server または SQL Azure メタデータ エクスプローラーでオブジェクトを選択し、そのオブジェクトを SQL Server または SQL Azure と同期します。 既定では、オブジェクトが SQL Server または SQL Azure に既に存在し、SSMA メタデータにローカルの変更やこれらのすべてのオブジェクトの定義の更新がある場合、SSMA は SQL Server または SQL Azure のオブジェクト定義を変更します。 既定のビヘイビアーを変更するには、[プロジェクトの設定] を編集します。

注意

Access データベースから変換されなかった既存の SQL Server または Azure SQL データベース オブジェクトを選択することができます。 ただし、SSMA では、このようなオブジェクトは再作成または変更されません。

オブジェクトを SQL Server または SQL Azure と同期するには

  1. SQL Server または SQL Azure メタデータ エクスプローラーで、SQL Server または SQL Azure の最上位ノードを展開し、[データベース] を展開します。

  2. 処理するオブジェクトを選択します。

    • データベース全体を同期するには、データベース名の横にあるチェック ボックスを選択します。

    • 個々のオブジェクトまたはカテゴリ別のオブジェクトを同期または省略するには、オブジェクトまたはフォルダーの横にあるチェック ボックスを選択または選択解除します。

  3. SQL Server または SQL Azure メタデータ エクスプローラーで処理するオブジェクトを選択したら、[データベース] を右クリックし、[データベースとの同期] をクリックします。

    オブジェクトまたはその親フォルダーを右クリックし、[Synchronize with Database] (データベースとの同期) をクリックして、個々のオブジェクトまたはカテゴリ別のオブジェクトを同期することもできます。

    その後、SSMA に [Synchronize with Database] (データベースとの同期) ダイアログが表示され、2 つの項目グループが表示されます。 SSMA の左側には、選択したデータベース オブジェクトがツリーで表されます。 右側には、SSMA メタデータ内の同じオブジェクトを表すツリーが表示されます。 ツリーを展開するには、右または左にある [+] ボタンをクリックします。 同期の方向は、2 つのツリーの間に配置されている [Action] (操作) 列に表示されます。

    操作記号には、次の 3 つの状態があります。

    • 左方向キーは、メタデータの内容がデータベースに保存されることを意味します (既定)。

    • 右方向キーは、データベースの内容によって SSMA メタデータが上書きされることを意味します。

    • 十字サインは、何も行われないことを意味します。

    操作記号をクリックして状態を変更します。 [Synchronize with Database] (データベースとの同期) ダイアログの [OK] ボタンをクリックすると、実際の同期が実行されます。

オブジェクトのスクリプト作成

変換されたデータベース オブジェクトの Transact-SQL 定義を保存する場合、またはオブジェクト定義を変更してスクリプトを自分で実行する場合は、変換されたデータベース オブジェクト定義を Transact-SQL スクリプトに保存できます。

1 つ以上のオブジェクトをスクリプトに保存するには

  1. SQL Server メタデータ エクスプローラーで、最上位ノード (サーバー名) を展開し、[データベース] を展開します。

  2. 次のうち1 つ以上を行います。

    • データベース全体のスクリプトを作成するには、データベース名の横にあるチェック ボックスを選択します。

    • 個々のビューについてスクリプトを作成するか、省略するには、データベースを展開し、[ビュー] を展開して、ビューの横にあるチェック ボックスをオンまたはオフにします。

    • 個々のテーブルについてスクリプトを作成するか、省略するには、データベースを展開し、[テーブル] を展開して、テーブルの横にあるチェック ボックスをオンまたはオフにします。

    • テーブルの個々のインデックスについてスクリプトを作成するか、省略するには、テーブルを展開し、[インデックス] を展開して、インデックスをオンまたはオフにします。

  3. [データベース] を右クリックして [スクリプトとして保存] を選びます。

    個々のオブジェクトのスクリプトを作成することもできます。 オブジェクトのスクリプトを作成するには、選択されているオブジェクトに関係なく、オブジェクトを右クリックし、[スクリプトとして保存] を選択します。

  4. [名前を付けて保存] ダイアログ ボックスで、スクリプトを保存するフォルダーを探し、[ファイル名] ボックスにファイル名を入力して、[OK] をクリックします。

    SSMA では、.sql ファイル名拡張子がアペンドされます。

スクリプトの変更

SQL Server または SQL Azure のオブジェクト定義をスクリプトとして保存したら、SQL Server Management Studio を使用してスクリプトを変更できます。

スクリプトを変更するには

  1. Management Studio で、[ファイル] メニューの [開く] をポイントし、[ファイル] をクリックします。

  2. [開く] ダイアログ ボックスで、スクリプト ファイルを探して選択し、[OK] をクリックします。

  3. クエリ エディターを使用して、スクリプト ファイルを編集します。

    クエリ エディターについての詳細は、SQL Server オンライン ブックの「エディターの便利なコマンドと機能」を参照してください。

  4. スクリプトを保存するには、[ファイル] メニューで [保存] を選択します。

スクリプトの実行

SQL Server Management Studio で、スクリプトまたは個々のステートメントを実行できます。

スクリプトを実行するには

  1. SQL Server Management Studio で、[ファイル] メニューの [開く] をポイントして、[ファイル]をクリックします。

  2. [開く] ダイアログ ボックスで、スクリプト ファイルを探して選択し、[OK] をクリックします。

  3. 完全なスクリプトを実行するには、F5 キーを押します。

  4. ステートメントのセットを実行するには、クエリ エディター ウィンドウでステートメントを選択し、F5 キーを押します。

クエリ エディターを使用してスクリプトを実行する方法の詳細は、SQL Server オンライン ブックの「SQL Server Management Studio Transact-SQL クエリ」を参照してください。

sqlcmd ユーティリティと SQL Server エージェントを使用して、コマンド ラインからスクリプトを実行することもできます。 sqlcmd の詳細については、SQL Server オンライン ブックの「sqlcmd ユーティリティ」を参照してください。 SQL Server エージェントの詳細については、SQL Server オンライン ブックの「管理タスクの自動化 (SQL Server エージェント)」を参照してください。

SQL Server でのオブジェクトのセキュリティ保護

変換されたデータベース オブジェクトを SQL Server に読み込んだ後は、それらのオブジェクトに権限を付与したり拒否したりすることができます。 SQL Server にデータを移行する前に、これを行うことをお勧めします。 SQL Server でオブジェクトをセキュリティで保護する方法については、SQL Server オンライン ブックの「データベースとデータベース アプリケーションのセキュリティに関する考慮事項」を参照してください。

次の手順

移行プロセスの次の手順は、SQL Server にデータを移行することです。

参照

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