2013-10-31 11 views
50

スクリプトを使用して、SQL Serverのデータベースからそのデータを含む単一のテーブルのバックアップを取得したいとします。SQL Server 2008のデータベースのデータを持つ単一のテーブルをバックアップ

どうすればいいですか?

+0

SQLインポート/エクスポートウィザード。 SMSSでデータベースを右クリック/アイテムの選択をエクスポート – realnumber3012

+0

スクリプトでこれを行うには – EBS

+4

MGOwenの回答 – greg121

答えて

20

は、あなたが戻ってテーブルの取ることができる多くの方法があります参照してください。このリンクに
ルック:http://www.sqlserver-training.com/how-to-backup-sql-table/-

  1. BCP(一括コピープログラム)
  2. フラットファイルに直接
  3. SAVE表データにSELECT使用してテーブルのコピーを作成し、データ
  4. とテーブルスクリプトの生成任意の宛先
+1

を受け入れてくださいこのコードは質問に答えるかもしれませんが、なぜ、そして/またはどのように質問に答えるかについての追加の文脈を提供すると、 -term値。あなたの答えを[編集]して、説明を加えてください。 – CodeMouse92

10

あなたは、そのデータは、次の手順を使用して一緒にテーブル・スクリプトを作成することができます。

  1. は、右のデータベースをクリックしてください。
  2. [タスク]> [スクリプトの生成...]を選択します。
  3. 次へをクリックします。
  4. 次へをクリックします。
  5. テーブル/ビューオプションで、スクリプトデータをTrueに設定します。次に[次へ]をクリックします。
  6. [テーブル]チェックボックスをオンにして、[次へ]をクリックします。
  7. テーブル名を選択して[次へ]をクリックします。
  8. ウィザードが完了するまで次へをクリックします。

詳細については、Eric Johnson's blog.

84
select * into mytable_backup from mytable 
にSSISを使用して
  • エクスポートデータ

    テーブルmytableのコピーとその中のすべての行をmytable_backupとします。

  • +5

    このクエリで実際に "mytable_backup"テーブルが作成されるのは良いことです。私はそれを期待していなかったし、バックアップする新しいテーブルを作成しました。 – AidanO

    +0

    私は別のスキーマにデータをバックアップするこのalotを使っていましたが、特定の状況下では行があることに気づいただけです** ** MISSING **!ターゲットが不完全である可能性があります。なぜ私は分からない。そのようなバックアップの後に行数を確認する方がよいでしょう。 – Ben

    7

    同じテーブルまたは他のDB( "データベース")に対応するテーブルを作成する次のクエリを使用してみてください。

    SELECT * INTO DataBase.dbo.BackUpTable FROM SourceDataBase.dbo.SourceTable 
    
    0

    ローカルファイルシステム上のファイルにコピーを取得するには、Windowsからこのガタガタユーティリティは、ボタンメニューが働い開始: 「C:\プログラムファイル(x86の)\ Microsoft SQL Serverの\ 110 \ DTSを\ Binnの\ DTSWizard.exe」

    1

    あなたは、データベース内の複数のテーブルのうち、単一のテーブルをバックアップする必要がある場合は、あなたが取ることができる別のアプローチは、次のとおりです。

    1. 特定のテーブル(複数可)のスクリプトを生成しますからデータベースを右クリックし、[タスク] - [スクリプトの生成...]をクリックします。

    2. クエリエディタでスクリプトを実行します。 "Database already exists"エラーを回避するには、スクリプトの最初の行(USE DatabaseName)を新しいデータベースに変更または追加する必要があります。

    3. 新しく作成したデータベースを右クリックし、[タスク]> [バックアップ]をクリックします。 バックアップには元のデータベースの選択したテーブルが含まれます。

    1

    テーブルを独自のファイルグループに入れます。その後、通常のSQL Serverの組み込みバックアップを使用して、実質的にテーブルをバックアップするファイルグループをバックアップすることができます。 https://docs.microsoft.com/en-us/sql/relational-databases/backup-restore/back-up-files-and-filegroups-sql-server

    を参照してください(その簡単な)非デフォルトのファイルグループにテーブルを作成するには:バックアップするファイルグループを参照

    Create a table on a filegroup other than the default

    4

    あなたは、「データベース・オブジェクトのスクリプトを生成」機能を使用することができますSSMS上で

    1. 右一般の下で
    2. 、上の値を選択するヒット
    3. 目的のテーブルまたは特定のオブジェクト
    4. を選択してスクリプトを生成します>ターゲット・データベース
    5. 選択タスクに高度ボタンをクリックしてくださいスクリプトのデータタイプデータのみ、スキーマのみ、スキーマおよびデータを選択できます。スキーマとデータには、テーブルの作成と生成されたスクリプトの実際のデータの両方が含まれます。
    6. [次へ]をクリックし、ウィザードを

    を完了するまでこの1つは私の挑戦を解決しました。
    これがあなたにも役立つことを願っています。

    0

    このクエリは私のために(MySQL用)実行されます。このクエリを実行する前にmytable_backupが存在していなければなりません。

    insert into mytable_backup select * from mytable 
    
    +0

    質問はMySQLではなくSQL Serverについてです。 –

    関連する問題