Cum se reproduc structura tabelului în baza de date MySQL?Copiați declarația de conținut a datelor din tabel

Baza de date MySQLCum se copiază structura tabelului în?Copiați declarația de conținut a datelor din tabel

MySQLCopiați tabelul

Dacă trebuie să replicăm complet tabelul de date MySQL, inclusiv structura tabelului, indecși, valori implicite etc.Doar dacă folosițiCREATE TABLE ... SELECTcomanda este imposibilă.

Acest capitol va prezenta cum să copiați complet tabelul de date MySQL, pașii sunt următorii:

  • utilizareAFIȚI CREATE TABLEcomanda get create datatable (CREAȚI TABEL), care conține structura, indexul etc. a tabelului de date original.
  • Copiați instrucțiunea SQL afișată de următoarea comandă, modificați numele tabelului de date și executați instrucțiunea SQL. Structura tabelului de date va fi copiată complet prin comanda de mai sus.
  • Dacă doriți să copiați conținutul tabelului, puteți utilizaINSERT INTO … SELECT declarație de realizat.

Instanță

Încercați următorul exemplu pentru a replica tabelul chenweiliang_tbl.

primul pas:

Obțineți structura completă a tabelului de date.

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  
 
  

错误没有指定查询

Pasul doi:

Modificați numele tabelului de date al instrucțiunii SQL și executați instrucțiunea 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  
 
 

Pasul trei:

După efectuarea celui de-al doilea pas, veți crea un nou tabel clon clone_tbl în baza de date.Dacă doriți să copiați datele din tabelul de date, puteți utilizaINSERT INTO … SELECT declarație de realizat.

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 

După efectuarea pașilor de mai sus, veți avea o copie completă a tabelului, inclusiv structura tabelului și datele tabelului.

Un alt mod de a copia un tabel

O altă modalitate de a face o copie completă a tabelului:

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

alte:

Puteți copia unele dintre aceste câmpuri într-un tabel:

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

Puteți redenumi câmpurile tabelului nou creat:

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

O parte din date poate fi copiată:

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

Informațiile câmpului din tabel pot fi definite în timpul creării tabelului:

CREATE TABLE newadmin
 
    id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY

    SELECT * FROM admin
   

发表 评论

Adresa ta de e-mail nu va fi publicată. Sunt utilizate câmpurile obligatorii * Eticheta

Derulaţi în sus