Jak replikovat strukturu tabulky v databázi MySQL?Zkopírujte prohlášení o obsahu dat tabulky

MySQL databázeJak zkopírovat strukturu tabulky v ?Zkopírujte prohlášení o obsahu dat tabulky

MySQLKopírovat tabulku

Pokud potřebujeme kompletně replikovat datovou tabulku MySQL, včetně struktury tabulky, indexů, výchozích hodnot atd.Pokud pouze používatVYTVOŘIT TABULKU ... VYBRATpříkaz je nemožný.

Tato kapitola vám představí, jak kompletně zkopírovat datové tabulky MySQL. Postup je následující:

  • použitíZOBRAZIT VYTVOŘIT TABULKUpříkaz get create datatable (VYTVOŘENÍ TABULKY), který obsahuje strukturu, index atd. původní datové tabulky.
  • Zkopírujte příkaz SQL zobrazený následujícím příkazem, upravte název datové tabulky a spusťte příkaz SQL Výše ​​uvedený příkaz zcela zkopíruje strukturu datové tabulky.
  • Pokud chcete zkopírovat obsah tabulky, můžete použítVLOŽIT DO … VYBRAT prohlášení dosáhnout.

Instance

Zkuste následující příklad replikovat tabulku chenweiliang_tbl.

krok první:

Získejte úplnou strukturu datové tabulky.

mysql > SHOW CREATE TABLE chenweiliang_tbl \ G ; *************************** 1. row ******************** ******* Table chenweiliang_tbl
 Create Table CREATE TABLE`chenweiliang_tbl` `chenweiliang_id` int 11 NOT NULL auto_increment `chenweiliang_title` varchar 100 NOT NULL default '' 'chenweiliang_author` varchar 40 NOT NULL 默认'' 
 
         
   
   
   
  `submission_date` 日期默认NULL 
  PRIMARY KEY   `chenweiliang_id` ),
  UNIQUE KEY `AUTHOR_INDEX` `chenweiliang_author` ENGINE = InnoDB的1 集合0.00  
 
  

错误没有指定查询

Krok dva:

Upravte název datové tabulky příkazu SQL a spusťte příkaz SQL.

mysql > CREATE TABLE`clone_tbl` - > `chenweiliang_id` int 11 NOT NULL auto_increment - > `chenweiliang_title` varchar 100 NOT NULL default '' - > `chenweiliang_author` varchar 40 NOT NULL default '' - > `submission_date` 日期默认为NULL - > PRIMARY KEY   `chenweiliang_id` ),- > UNIQUE KEY 
    
    
    
   
  
  `AUTHOR_INDEX` `chenweiliang_author` - > ENGINE = InnoDB ; 查询OK 0 行受影响1.80  
 
 

Krok třetí:

Po provedení druhého kroku vytvoříte v databázi novou tabulku klonů clone_tbl.Pokud chcete zkopírovat data z datové tabulky, můžete použítVLOŽIT DO … VYBRAT prohlášení dosáhnout.

mysql > INSERT INTO clone_tbl chenweiliang_id - >                         chenweiliang_title - >                         chenweiliang_author - >                         submission_date - > SELECT chenweiliang_id chenweiliang_title - >         chenweiliang_author submission_date
     - > FROM chenweiliang_tbl ; 查询OK 3 行受影响0.07 记录3 重复0
    
    
    
    
    
 
      警告0 

Po provedení výše uvedených kroků tabulku kompletně zkopírujete včetně struktury tabulky a dat tabulky.

Další způsob kopírování tabulky

Další způsob, jak vytvořit úplnou kopii tabulky:

CREATE TABLE targetTable LIKE sourceTable ; 
INSERT INTO targetTable SELECT * FROM sourceTable ;

jiný:

Některá z těchto polí můžete zkopírovat do tabulky:

CREATE TABLE newadmin AS
 
    SELECT用户名密码从管理员
 

Pole nově vytvořené tabulky můžete přejmenovat:

CREATE TABLE newadmin AS
   
    SELECT id username AS uname password AS pass FROM admin
 

Část dat lze zkopírovat:

CREATE TABLE newadmin AS
 
    SELECT * FROM admin WHERE LEFT username 1 = 's'   

Informace o polích v tabulce lze definovat při vytváření tabulky:

CREATE TABLE newadmin
 
    id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY

    SELECT * FROM admin
   

Blog Hope Chen Weiliang ( https://www.chenweiliang.com/ ) shared "Jak replikovat strukturu tabulky v databázi MySQL?Copy Table Data Content Statement“, které vám pomohou.

Vítejte u sdílení odkazu na tento článek:https://www.chenweiliang.com/cwl-490.html

Vítejte na telegramovém kanálu blogu Chen Weiliang, kde získáte nejnovější aktualizace!

🔔 Buďte první, kdo získá cenný „Průvodce používáním nástroje AI pro obsahový marketing ChatGPT“ v hlavním adresáři kanálu! 🌟
📚 Tento průvodce má obrovskou hodnotu, 🌟Toto je vzácná příležitost, nenechte si ji ujít! ⏰⌛💨
Sdílejte a lajkujte, pokud se vám líbí!
Vaše sdílení a lajky jsou naší neustálou motivací!

 

发表 评论

Vaše e-mailová adresa nebude zveřejněna. 必填 项 已 用 * 标注

滚动 到 顶部