Saltar al contenido

¿Cómo obtener un script de creación de tablas en MySQL Workbench?

Solución:

Tampoco puedo encontrar esa opción, al menos en la edición comunitaria.

Supongo que esto corresponde al Ingeniería inversa característica, que, lamentablemente, solo está disponible en la edición comercial (citando) :

aplicar ingeniería inversa a una base de datos directamente desde un servidor MySQL se aplica solo a las versiones comerciales de MySQL Workbench.

Aún así, puede usar SQL simple para obtener el create table instrucción que le permitirá crear una tabla.

Por ejemplo, la siguiente consulta:

show create table url_alias;

cuando se ejecuta en una base de datos drupal, daría, cuando se usa correctamente click > copy field content sobre el resultado:

'CREATE TABLE `url_alias` (
  `pid` int(10) unsigned NOT NULL auto_increment,
  `src` varchar(128) NOT NULL default '''',
  `dst` varchar(128) NOT NULL default '''',
  `language` varchar(12) NOT NULL default '''',
  PRIMARY KEY  (`pid`),
  UNIQUE KEY `dst_language` (`dst`,`language`),
  KEY `src_language` (`src`,`language`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8'

Desafortunadamente (de nuevo), MySQL Workbench agrega algunas comillas en todas partes al copiar de esta manera 🙁


EDITAR: Usando MySQL 8.0, hay una opción a la derecha click > copy field (unquoted) en el resultado para obtener el resultado deseado sin comillas.

Al final, el mas simple La solución, excepto permanecer con el navegador de consultas MySQL, será probablemente conectarse a la base de datos, usar el cliente de línea de comandos y ejecutar el show create table consulta desde allí:

mysql> show create table url_aliasG
*************************** 1. row ***************************
       Table: url_alias
Create Table: CREATE TABLE `url_alias` (
  `pid` int(10) unsigned NOT NULL auto_increment,
  `src` varchar(128) NOT NULL default '',
  `dst` varchar(128) NOT NULL default '',
  `language` varchar(12) NOT NULL default '',
  PRIMARY KEY  (`pid`),
  UNIQUE KEY `dst_language` (`dst`,`language`),
  KEY `src_language` (`src`,`language`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8
1 row in set (0.00 sec)

Obtener “la parte correcta“de la salida es más fácil, no hay cotización para eliminar.


Y, solo en aras de la completitud, también puede usar mysqldump para obtener la estructura de su tabla:

mysqldump --no-data --user=USERNAME --password=PASSWORD --host=HOST DATABASE_NAME TABLE_NAME

Utilizando el --no-data cambia, solo obtendrás la estructura – en medio de algunos ajustes de modo y todo eso.

Para obtener el script de creación de una tabla individual, simplemente haga clic con el botón derecho en el nombre de la tabla y haga clic en Copiar al portapapeles> Crear declaración.

Para habilitar la opción File> Forward Engineering SQL_CREATE Script .. y obtener el script de creación para toda su base de datos:

  1. Base de datos> Ingeniero inverso (Ctrl + R)
  2. Siga los pasos para crear el diagrama EER
  3. Al ver el diagrama EER, haga clic en Archivo> Ingeniería avanzada SQL_CREATE Script … (Ctrl + Shift + G)

Haga clic con el botón derecho en la tabla correspondiente y elija una de las siguientes opciones:

  • Copiar al portapapeles> Crear declaración
  • Enviar al editor SQL> Crear declaración

Eso parece funcionar para mí.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *