MySQL 復制表

mysql 復制表

我們通常使用 create table select 語句來復制表的結構和數據,但是這種方式復制的表結構并不完整,索引、默認值等屬性的定義都會丟失。

本文將提供一種完整的復制 mysql 數據表的方法,步驟如下:

  • 1. 使用 show create table 命令獲取創(chuàng)建表的語句,該語句包含了數據表的完整結構。
  • 2. 復制創(chuàng)建表的 sql 語句,修改表名,然后執(zhí)行sql語句。
  • 使用 insert into ... select 語句復制表的數據。

 

mysql 復制表的范例

以下為復制表 yapf_tbl的操作。

1)步驟一:獲取數據表的完整結構

mysql> show create table yapf_tbl \g;
*************************** 1. row ***************************
       table: yapf_tbl
create table: create table `yapf_tbl` (
  `yapf_id` int(11) not null auto_increment,
  `yapf_title` varchar(100) not null default '',
  `yapf_author` varchar(40) not null default '',
  `submission_date` date default null,
  primary key  (`yapf_id`),
  unique key `author_index` (`yapf_author`)
) engine=innodb 
1 row in set (0.00 sec)

error:
no query specified

2)步驟二:修改sql語句的數據表名,并執(zhí)行sql語句。

mysql> create table `clone_tbl` (
  -> `yapf_id` int(11) not null auto_increment,
  -> `yapf_title` varchar(100) not null default '',
  -> `yapf_author` varchar(40) not null default '',
  -> `submission_date` date default null,
  -> primary key  (`yapf_id`),
  -> unique key `author_index` (`yapf_author`)
-> ) engine=innodb;
query ok, 0 rows affected (1.80 sec)

3)步驟三:使用 insert into... select 語句復制表的數據

mysql> insert into clone_tbl (yapf_id,
    ->                        yapf_title,
    ->                        yapf_author,
    ->                        submission_date)
    -> select yapf_id,yapf_title,
    ->        yapf_author,submission_date
    -> from yapf_tbl;
query ok, 3 rows affected (0.07 sec)
records: 3  duplicates: 0  warnings: 0

執(zhí)行以上步驟后,會完整的復制表的內容,包括表結構及表數據。

下一節(jié):mysql 自增字段

mysql 教程

相關文章
亚洲国产精品第一区二区,久久免费视频77,99V久久综合狠狠综合久久,国产免费久久九九免费视频