Hur replikerar man tabellstruktur i MySQL-databas?Kopiera innehållssatsen för tabelldata

MySQL-databasHur kopierar man tabellstruktur i ?Kopiera innehållssatsen för tabelldata

MySQLkopieringstabell

Om vi ​​behöver replikera MySQL-datatabellen helt, inklusive tabellens struktur, index, standardvärden etc.Om bara användaSKAPA BORD ... VÄLJkommando är omöjligt.

Det här kapitlet kommer att introducera dig hur du helt kopierar MySQL-datatabeller. Stegen är som följer:

  • användningVISA SKAPA TABELLkommandot get create datatable (SKAPA BORD) -sats, som innehåller strukturen, indexet etc. för den ursprungliga datatabellen.
  • Kopiera SQL-satsen som visas av följande kommando, ändra datatabellens namn och kör SQL-satsen. Kommandot ovan kommer att helt kopiera datatabellstrukturen.
  • Om du vill kopiera innehållet i tabellen kan du användaINFOGA I … VÄLJ uttalande att uppnå.

exempel

Försök med följande exempel för att replikera tabellen chenweiliang_tbl.

steg ett:

Få hela strukturen för datatabellen.

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  
 
  

错误没有指定查询

Steg två:

Ändra datatabellnamnet för SQL-satsen och kör SQL-satsen.

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  
 
 

Steg tre:

Efter att ha utfört det andra steget kommer du att skapa en ny klontabell clone_tbl i databasen.Om du vill kopiera data från datatabellen kan du användaINFOGA I … VÄLJ uttalande att uppnå.

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 

Efter att ha utfört stegen ovan kommer du att ha en komplett kopia av tabellen, inklusive tabellstrukturen och tabelldata.

Ett annat sätt att kopiera en tabell

Ett annat sätt att göra en fullständig kopia av tabellen:

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

Övrig:

Du kan kopiera några av dessa fält i en tabell:

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

Du kan byta namn på fälten i den nyskapade tabellen:

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

En del av data kan kopieras:

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

Fältinformation i tabellen kan definieras när du skapar tabellen:

CREATE TABLE newadmin
 
    id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY

    SELECT * FROM admin
   

Hope Chen Weiliang blogg ( https://www.chenweiliang.com/ ) delad "Hur replikerar man tabellstruktur i MySQL-databas?Kopiera innehållsförklaring för tabelldata" för att hjälpa dig.

Välkommen att dela länken till denna artikel:https://www.chenweiliang.com/cwl-490.html

Välkommen till Telegram-kanalen på Chen Weiliangs blogg för att få de senaste uppdateringarna!

🔔 Bli först med att få den värdefulla "ChatGPT Content Marketing AI Tool Usage Guide" i kanalens toppkatalog! 🌟
📚 Den här guiden innehåller ett enormt värde, 🌟Detta är ett sällsynt tillfälle, missa inte det! ⏰⌛💨
Dela och gilla om du vill!
Dina delning och likes är vår ständiga motivation!

 

发表 评论

Din e-postadress kommer inte att publiceras. 必填 项 已 用 * 标注

scrolla till toppen