電子書籍の厳選無料作品が豊富!

myisam型のテーブルをコピーしたいんですが、テーブルをコピーする命令文はありませんか?
create tabeしてカラムを作ってselectで1行ずつコピーする以外に、テーブルをそのままコピーする方法があればそちらの方法でやりたいです。

A 回答 (2件)

テーブルの構造そのものはCREATE TABLEで作る必要があります。


しかし、中身のデータに関しては、SELECT~INSERTを繰り返さなくても以下のように一行で済ませることができます。

INSERT INTO `TO_DB`.`TO_TABLE` SELECT * FROM `FROM_DB`.`FROM_TABLE`;

この場合は、FROM_DBというデータベースのFROM_TABLEというテーブルの中身(データ全て)をTO_DBというデータベースのTO_TABLEというテーブルに丸ごとコピーするということになります。
    • good
    • 0
この回答へのお礼

ありがとうございます。
・create tabe
・カラム作成
・INSERT INTO `TO_DB`.`TO_TABLE` SELECT * FROM `FROM_DB`.`FROM_TABLE`;
という処理が必要なわけですね。
テーブルのinsertは初めて見ました。

お礼日時:2005/02/23 02:16

CREATE TABLE new_tbl SELECT * FROM orig_tbl;



を使用するのは如何でしょうか。
気補的には同じ内容のテーブルが生成されますが、

○インデックスは新しいテーブルに持ち越されない
○一部のカラム型の変換が行われる場合がある

といった注意点があるようです。

詳細はMySQLのリファレンスをご参照下さい。

参考URL:http://dev.mysql.com/doc/mysql/ja/create-table.h …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す