今回は、別の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 でスクリプトを生成してデータをコピー移動する方法を紹介しました。是非試してみてください。
コメント