MySQLで表をコピー(複製)するためには、
create temporary table if not exists [コピー先の表] like [コピーする表];
または
create table [コピー先の表] like [コピーする表];
を使ってコマンドを実行します。
【MySQL】表をコピー(複製)するためのソースコードとコマンド手順
実際に表を作って手順を確認していきましょう。
database1に以下のソースコードを使ってコマンドを入力して実行し、表を作りましょう。既に入力している場合は入力しないでOKです。
mysql> use database1; mysql> create table hyou1 (food varchar(20), sanchi varchar(20),price int, shomikigen date);
このhyou1をhyou3(別の表)に移してコピー(複製)します。
create temporary table if not exists [コピー先の表] like [コピーする表];
または
create table [コピー先の表] like [コピーする表];
を使いましょう。
mysql> create temporary table if not exists hyou3 like hyou1; Query OK, 0 rows affected (0.00 sec)
describeで確認してみましょう。
mysql> describe hyou3; +------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+-------------+------+-----+---------+-------+ | food | varchar(20) | YES | | NULL | NULL | | sanchi | varchar(20) | YES | | NULL | NULL | | price | int | YES | | NULL | NULL | | shomikigen | date | YES | | NULL | NULL | +------------+-------------+------+-----+---------+-------+ 4 rows in set (0.00 sec)
show fields fromも入力して確認してみましょう。
mysql> show fields from hyou3; +------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+-------------+------+-----+---------+-------+ | food | varchar(20) | YES | | NULL | NULL | | sanchi | varchar(20) | YES | | NULL | NULL | | price | int | YES | | NULL | NULL | | shomikigen | date | YES | | NULL | NULL | +------------+-------------+------+-----+---------+-------+ 4 rows in set (0.00 sec)
hyou1がhyou3にコピー(複製)されました。