【スクリプトを生成してテーブルのデータをコピー移動する方法】

今回は、別のPCにSQLServerのデータベースがあって、テーブルのデータをコピー移動したいような時、SQL Server Management Studio でスクリプトを生成してデータをコピー移動する方法を紹介します。

SQL serverのデータ移行の方法

SQL serverのデータ移行は主に以下の3つの方法があります。

  • 丸ごとバックアップし移行先で復元
  • インポートやエクスポートを使用
  • スクリプトを生成し移行先で実行する方法

丸ごとバックアップし移行先で復元する方法

メリットとして、サーバー内に「SQL Server Management Studio」「SQL Server」がある場合、他の手法と比較してスムーズに移行できます。また、テーブルレイアウトの自動同期が可能であるメリットも存在します。デメリットとして、過去バージョンへの移行が出来ない点が挙げられるでしょう。

インポートやエクスポートを使用

前提条件として、SQL Server 認証、または Windows 認証のいずれかを構築する必要があります。メリットとして、過去バージョンへの移行ができる点が挙げられます。デメリットとして、サーバー間のネットワーク接続が必須であったり、Windows認証が必要であったりする点が挙げられます。

スクリプトを生成し移行先で実行する方法

メリットとして、サーバー間のネットワーク接続が不要な点、過去バージョンへの移行が可能な点があります。Windows認証も不要です。一方で、デメリットとして移行した場合にデータサイズが大きくなる傾向がある点が挙げられます。スクリプトを生成し移行先で実行する方法では、スムーズなデータ移行が可能です。しかし、データ容量を削減したい方は他の方法を推奨します。

スクリプトを生成

まず、元のPCで SQL Server Management Studio を起動します。対象データベースをクリックして「タスク」「スクリプトの生成」を選択します。

移行するテーブルを指定します。

今回は「スクリプトファイルとして保存」を選択して、任意のファイル名を作成します。

「完了」をクリックして終了します。

このように、「test.dsn」と「testbook.sql」のファイルが生成されました。

SQL を移行先で実行する

    移動先のPCで SQL Server Management Studio を起動します。「ファイルを開く」で先程生成した、「testbook.sql」を選択します。

    USE [db_test]では、データーベースが存在しないので、エラーになります。

    USE [db_test]を保存したいデーターベース名に変えて、ここでは、USE [db_book]に変えて、実行をクリックします。

    このように、テーブルの移行が完了しました。

    まとめ

    今回は、別のPCにSQLServerのデータベースがあって、テーブルのデータをコピー移動したいような時、SQL Server Management Studio でスクリプトを生成してデータをコピー移動する方法を紹介しました。是非試してみてください。

    コメント

    タイトルとURLをコピーしました