2010-04-30 5 views
2

J'ai un extrait de code ancien que j'utilise pour copier des tables dans MySQL.Copier une table dans MySQL et y inclure la clé primaire

CREATE TABLE new_table (select * from old_table); 

Cela fonctionne très bien, à une exception près. Il ne copie pas la clé primaire ou d'autres index de table.

Existe-t-il un moyen de copier une table dans MySQL ET d'inclure les index/clé primaire ??

Répondre

7

Il y a deux façons. Pour voir comment une table est construite, vous pouvez utiliser

SHOW CREATE TABLE old_table 

Vous pouvez aussi (je pense que vous devrez le tester), exécutez:

CREATE TABLE new_table LIKE old_table; 
INSERT INTO new_table SELECT * FROM old_table; 
+1

'a testé la CREATE TABLE new_table syntaxe LIKE' le 5.1.36. Les index sont copiés mais pas les contraintes de clé étrangère. –

2

Vous pouvez utiliser ce

CREATE TABLE new_table LIKE old_table; 

mais il ne fournit pas de données dupliquez.

Questions connexes