SQL Server Server Management Studioを使用したデータベースのインポート/エクスポート


197

これは些細なことだと思いましたが、そうではありません...簡単な方法があると確信していますが、どうにか見つけられません。恥ずかしい。

データベース自体、テーブル、制約(外部キーなど)をインポート/エクスポートしたい。私はそれでデータを取得したくないのですが、他に方法がない場合は後でそれを取り除くことができます。

では、MS SQL Server Management Studioを使用してデータベースをどのようにエクスポートしますか?どのようにインポートしますか?

私が見つけた唯一の解決策は、テーブルを右クリックして「作成するスクリプト」でしたが、100個のテーブルのようなものがあるので、これは避けたいと思います。

ありがとう!

回答:


316

データベース自体を右クリックし、[タスク]-> [スクリプトの生成...]をクリックします。

次に、ウィザードに従います。

SSMS2008 +の場合、データもエクスポートする場合は、[スクリプトオプションの設定]ステップで[詳細設定]ボタンを選択し、[データの種類]を[スキーマのみ]から[データのみ]または[スキーマとデータ"。


11
データの取得はどうですか?スクリプトの生成などの方法で挿入クエリを作成することは可能ですか?
Kubi

50
@Kubiの[スクリプトオプションの設定]ステップで、[詳細設定]ボタンを選択し、[スキーマのみ]を[データのみ]または[スキーマとデータ]に変更します。
ブランドン

25
@ブランドン、ありがとうございます。「スキーマのみ」、「データのみ」、または「スキーマとデータ」が「詳細」オプションと見なされる理由は、私の理解を超えています。
Brian Hooper

2
2ブランドン:「高度な」スクリプトオプションは、SSMS 2008+でのみ使用できます。
ivan_pozdeev 2013

2
「データのみ」または「スキーマとデータ」は、各行のヘッダー名を複製するINSERTコマンドを作成します。ファイルは、テキストバージョンのデータの約2倍のサイズです。代わりにスキーマのみをエクスポートして、BULK INSERTを使用して、エクスポート...ウィザードで作成されたcsvファイルをロードすることもできます。注意してください、MSQLは引用されたフィールドの読み方を知りません。
John Mark

23

別のソリューションは- データベースのバックアップと復元です

システムデータベースのバックアップ

Microsoft SQL Server Management Studio Expressを使用してシステムデータベースをバックアップするには、以下の手順に従います。

  1. MicrosoftのWebサイトからMicrosoft SQL Server 2008 Management Studio Expressをダウンロードしてインストールします。http//www.microsoft.com/en-us/download/details.aspx?id = 7593

  2. Microsoft SQL Server Management Studio Expressをインストールしたら、アプリケーションを起動してシステムデータベースに接続します。[サーバーに接続]ダイアログボックスが表示されます。[サーバー名:]フィールドに、システムデータベースがインストールされているWebtrendsサーバーの名前を入力します。Webtrendsサービスアカウントまたはシステムデータベースを変更する権限を持つアカウントを使用してWindowsマシンにログインしている場合は、[認証:]フィールドで[Windows認証]を選択します。それ以外の場合は、ドロップダウンメニューから[SQL Server Authentication]を選択し、必要な権限を持つSQL Serverアカウントの資格情報を入力します。「接続」をクリックしてデータベースに接続します。

  3. [データベース]を展開し、[wt_sched]を右クリックして、コンテキストメニューから[タスク]> [バックアップ...]を選択します。「データベースのバックアップ」ダイアログボックスが表示されます。[ソース]セクションで、[データベース:]に[wt_sched]が選択され、[バックアップタイプ]が[完全]であることを確認します。[バックアップセット]で、必要に応じて名前、説明、有効期限を入力し、[宛先]セクションで[追加...]を選択して、バックアップを保存するファイルの名前とパスを指定します。バックアップが既に存在し、上書きされる場合は、[オプション]セクションで[既存のすべてのバックアップセットを上書きする]オプションを選択する必要がある場合があります。
  4. [OK]を選択して、バックアッププロセスを完了します。

  5. データベースの「wtMaster」の部分について、上記の手順を繰り返します。

システムデータベースを復元する

Microsoft SQL Server Management Studioを使用してシステムデータベースを復元するには、以下の手順に従います。

  1. まだインストールしていない場合は、MicrosoftのWebサイトからMicrosoft SQL Server 2008 Management Studio Expressをダウンロードしてインストールします。http//www.microsoft.com/en-us/download/details.aspx?id = 7593

  2. Microsoft SQL Server Management Studioをインストールした後、アプリケーションを起動してシステムデータベースに接続します。[サーバーに接続]ダイアログボックスが表示されます。[サーバータイプ:]フィールドで、[データベースエンジン]を選択します(デフォルト)。「サーバー名:」フィールドで、「\ WTSYSTEMDB」を選択します。ここで、はデータベースが配置されているWebtrendsサーバーの名前です。WTSYSTEMDBは、デフォルトのインストールでのデータベースインスタンスの名前です。Webtrendsサービスアカウントまたはシステムデータベースを変更する権限を持つアカウントを使用してWindowsマシンにログインしている場合は、[認証:]フィールドで[Windows認証]を選択します。それ以外の場合は、「SQL Server認証」を選択します ドロップダウンメニューから、必要な権限を持つSQL Serverアカウントの資格情報を入力します。「接続」をクリックしてデータベースに接続します。

  3. 「データベース」を展開し、「wt_sched」を右クリックして、コンテキストメニューから「削除」を選択します。[データベースのバックアップと復元の履歴情報を削除する]チェックボックスがオンになっていることを確認します。

  4. 「OK」を選択して削除プロセスを完了します。

  5. データベースの「wtMaster」の部分について、上記の手順を繰り返します。

  6. 「データベース」を右クリックし、コンテキストメニューから「データベースの復元...」を選択します。「To database:」フィールドに「wt_sched」と入力します。[デバイスから:]ラジオボタンを選択します。[デバイスから:]テキストフィールドの右側にある省略記号(...)をクリックします。「追加」ボタンをクリックします。「wt_sched」のバックアップファイルに移動して選択します。「バックアップファイルの検索」フォームで「OK」を選択します。「バックアップの指定」フォームで「OK」を選択します。「wt_sched-Full Database Backup」の横にある復元列のチ​​ェックボックスをオンにします。「データベースの復元」フォームで「OK」を選択します。

  7. データベースの「wtMaster」の部分について、手順6を繰り返します。

礼儀-http://kb.webtrends.com/articles/How_To/Backing-Up-and-Restoring-the-System-Database-using-MS-SQL-Management-Studio


1
この方法で私が抱えていた問題は、別のコンピューターで復元するときにbakファイルが適切に動作しないことです。うまくいくこともあれば、うまくいかないこともあります。少なくとも私にとって、スクリプトはより安全なアプローチです。詳細な説明は+1
Nunser

1
また、これにはシステム特権が必要です。これは、所有していない共有サービスインフラストラクチャで開発している場合によく発生します。よくやったマイクロソフト。
マタオ2016

3

Microsoft SQL Server Management Studioでデータベースをエクスポートするための私のソリューションを共有したいと思いました。

データベースをエクスポートするには

  1. 新しいリクエストを開く
  2. このスクリプトをコピーして貼り付け

    SET @BackupFile = 'D:\ database-backup.bak'

    --PRINT @BackupFile

    バックアップデータベース[%databaseName%]

    TO DISK = @BackupFile

%databaseName%を、エクスポートするデータベースの名前に置き換えることを忘れないでください。

この方法では、メニューよりも軽いファイルが得られることに注意してください。

このファイルをSQL Server Management Studioからインポートします。事前にデータベースを削除することを忘れないでください。

  1. データベースの復元をクリックします

データベースの復元をクリックします

  1. バックアップファイルを追加する バックアップファイルを追加する

  2. 検証

楽しい!:) :)


2
最後にいくつかのスクリーンショットソリューション!:)
レベン社製

2

Microsoft SQL Server Management Studio 2012,2008の場合。最初に、データベースファイル.mdfとログファイル.ldfをコピーし、SQL Serverインストールファイルの[プログラム]> [Microsoft SQL Server]> [MSSQL10.SQLEXPRESS]> [MSSQL]> [DATA]に貼り付けます。 。次に、Microsoft Sql Serverを開きます。[データベース]を右クリックして、[アタッチ...]オプションを選択します。


私はこの方法を試してみましたが、うまくいきました。上記のフォルダー(SQL 2012)からdatabase.mdfとdatabase_log.ldfをコピーし、それら2つのファイルをSQL Management Studioの異なるバージョン(SQL Express 2014)の新しいサーバーに転送しました。
Vignesh Chinnaiyan

0

上記の答えを試しましたが、生成されたスクリプトファイルが非常に大きく、データのインポート中に問題が発生しました。最終的にデータベースをデタッチし、.mdfを新しいマシンにコピーして、それを新しいバージョンのSQL Server Management Studioにアタッチしました。

MicrosoftのWebサイトでこれを行う方法の説明を見つけました:https :
//msdn.microsoft.com/en-us/library/ms187858.aspx

注:データベースを切り離した後、次のディレクトリ内に.mdfファイルが見つかりました:
C:\ Program Files \ Microsoft SQL Server \

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.