Latest web development tutorials

Tabla MySQL Copia

Si necesitamos una copia completa de las tablas de datos de MySQL, incluyendo la estructura de la tabla, los índices, valores por defecto, etc. Si sólo utiliza la instrucción CREATE TABLE ... comando SELECT, no pueden ser alcanzados.

Este capítulo le mostrará cómo completar copiar tablas de datos MySQL, los siguientes pasos:

  • Uso de comandos SHOW CREATE TABLE para obtener datos para crear una tabla (CREATE TABLE) declaración que contiene las estructuras originales de la tabla de datos, índices, y así sucesivamente.
  • Copia el siguiente comando para mostrar las sentencias SQL para modificar el nombre de la tabla, y ejecutar sentencias SQL, el comando anterior se replicará totalmente estructura de la tabla de datos.
  • Si desea copiar el contenido de la tabla, puede utilizar la instrucción INSERT INTO ... SELECT de lograr.

Ejemplos

Prueba los siguientes ejemplos para copiar w3big_tbl tabla.

Paso uno:

Obtener la estructura completa de la tabla de datos.

mysql> SHOW CREATE TABLE w3big_tbl \G;
*************************** 1. row ***************************
       Table: w3big_tbl
Create Table: CREATE TABLE `w3big_tbl` (
  `w3big_id` int(11) NOT NULL auto_increment,
  `w3big_title` varchar(100) NOT NULL default '',
  `w3big_author` varchar(40) NOT NULL default '',
  `submission_date` date default NULL,
  PRIMARY KEY  (`w3big_id`),
  UNIQUE KEY `AUTHOR_INDEX` (`w3big_author`)
) ENGINE=InnoDB 
1 row in set (0.00 sec)

ERROR:
No query specified

Paso dos:

Modificar la instrucción SQL nombre de la tabla de datos, y ejecutar sentencias SQL.

mysql> CREATE TABLE `clone_tbl` (
  -> `w3big_id` int(11) NOT NULL auto_increment,
  -> `w3big_title` varchar(100) NOT NULL default '',
  -> `w3big_author` varchar(40) NOT NULL default '',
  -> `submission_date` date default NULL,
  -> PRIMARY KEY  (`w3big_id`),
  -> UNIQUE KEY `AUTHOR_INDEX` (`w3big_author`)
-> ) ENGINE=InnoDB;
Query OK, 0 rows affected (1.80 sec)

Paso tres:

Después de realizar el segundo paso, va a crear una nueva tabla clon clone_tbl en la base de datos. Si desea copiar la tabla de datos puede utilizar la instrucción INSERT INTO ... SELECT para lograr.

mysql> INSERT INTO clone_tbl (w3big_id,
    ->                        w3big_title,
    ->                        w3big_author,
    ->                        submission_date)
    -> SELECT w3big_id,w3big_title,
    ->        w3big_author,submission_date
    -> FROM w3big_tbl;
Query OK, 3 rows affected (0.07 sec)
Records: 3  Duplicates: 0  Warnings: 0

Después de realizar los pasos anteriores, llevará a cabo mesas de copia, como la estructura de la tabla y los datos de la tabla.