none
SQLServer 表領域(ファイルグループ)を指定してテーブルをコピーする方法について RRS feed

  • 質問

  • SQLServer 2005 (2008) のテーブル作成時についての質問です。

    表領域(ファイルグループ)を指定してテーブルをコピーする方法はあるのでしょうか。

     

    create table テーブル名 ~ on 表領域(ファイルグループ)

    で、指定した表領域(ファイルグループ)にテーブルが作成出来るのですが、

    データやカラムをコピーできません。

     

    また

    select ~ into テーブル名 from コピー元のテーブル名

    ならテーブルのコピーは可能なのですが、作成するテーブルを表領域指定することは出来ないのでしょうか。

    SELECT文の構文を見ると、どうやら「ON」キーワードが無いようなのですが…

     

    2010年8月27日 6:33

回答

  • create table tb1 ... on FG1...;

    とした後で、

    insert into tb1 ...

    とデータを別でロードするのではいかがでしょうか。

    また
    http://msdn.microsoft.com/ja-jp/library/ms188029.aspx
    INTO句の制限としてテーブルは規定のファイルグループに作成されるので
    もし意図する規定ではないファイルグループに作成するには、やはり
    前もってテーブルを作成してからselect intoを使う必要があります。

    2010年8月27日 15:40
    モデレータ
  • ElanLilac-san も書かれておりますが、 Select into では、ファイルグループを指定することはできないため、ファイルグループを指定したい場合は、前もって明示的にファイルグループが指定されたテーブルを作成する必要があります。

    ちなみにデータの移行は、SSIS、BCP、Bulk Insert など、様々な手法が使用できます。

    尚、ファイルグループは、インデックス領域とデータ領域を分けたり、ディスクI/Oを軽減させたり、大規模データベースを部分的にバックアップしたい場合などに分けておりますが、同じテーブルのデータコピーでファイルグループを分けることは通常しないような気がします。

    もしメインテーブルの月次データを、サブテーブルに蓄積するようなことを検討されているのであれば、パーティションを検討しても良いかもしれません。

    ※まったく関係なければ無視してください。

    • 回答としてマーク 山本春海 2010年9月7日 2:21
    2010年8月30日 13:00

すべての返信

  • create table tb1 ... on FG1...;

    とした後で、

    insert into tb1 ...

    とデータを別でロードするのではいかがでしょうか。

    また
    http://msdn.microsoft.com/ja-jp/library/ms188029.aspx
    INTO句の制限としてテーブルは規定のファイルグループに作成されるので
    もし意図する規定ではないファイルグループに作成するには、やはり
    前もってテーブルを作成してからselect intoを使う必要があります。

    2010年8月27日 15:40
    モデレータ
  • ElanLilac-san も書かれておりますが、 Select into では、ファイルグループを指定することはできないため、ファイルグループを指定したい場合は、前もって明示的にファイルグループが指定されたテーブルを作成する必要があります。

    ちなみにデータの移行は、SSIS、BCP、Bulk Insert など、様々な手法が使用できます。

    尚、ファイルグループは、インデックス領域とデータ領域を分けたり、ディスクI/Oを軽減させたり、大規模データベースを部分的にバックアップしたい場合などに分けておりますが、同じテーブルのデータコピーでファイルグループを分けることは通常しないような気がします。

    もしメインテーブルの月次データを、サブテーブルに蓄積するようなことを検討されているのであれば、パーティションを検討しても良いかもしれません。

    ※まったく関係なければ無視してください。

    • 回答としてマーク 山本春海 2010年9月7日 2:21
    2010年8月30日 13:00
  • こんにちは、james0126 さん。

    MSDN フォーラムのご利用ありがとうございます。オペレーターの山本です。

    その後いかがでしょうか。
    ElanLilac さんや、NOBTA さんからの情報はご確認されましたでしょうか。

    ElanLilac さん、NOBTA さんありがとうございます。お二人からの情報は有効な情報であると思われましたので、勝手ながら私のほうで回答としてマークさせていただきました。

    いただいた回答の中で、解決に役立った投稿や、参考になる情報など有効な情報には回答としてマークすることをお願いしています。
    今後、同じ問題でこのスレッドを参照される方にも、有効な情報がわかりやすくなるかと思いますので、ご協力よろしくお願いいたしますね。

    一旦回答としてマークさせていただきましたが、ご不明な点などあれば、ご質問を続けてくださいね。
    今後とも、MSDN フォーラムをよろしくお願いいたします。それでは。
                                                                                             
    マイクロソフト株式会社 フォーラム オペレーター 山本 春海

    2010年9月7日 2:21
  • 皆様、返信が遅れて大変申し訳ございませんでした。

     

    上記の件確認いたしました。

    本件、クローズしてください。


    2010年10月19日 1:21