Ich kehre zum MySQL Query Browser der MySQL GUI Tools zurück, da ich die Verknüpfung zum Abrufen des Erstellungsskripts einer Tabelle in MySQL Workbench nicht finden kann.
Ich kehre zum MySQL Query Browser der MySQL GUI Tools zurück, da ich die Verknüpfung zum Abrufen des Erstellungsskripts einer Tabelle in MySQL Workbench nicht finden kann.
Antworten:
Ich kann eine solche Option auch nicht finden, zumindest in der Community-Ausgabe.
Ich nehme an, dies entspricht der Reverse Engineering- Funktion, die leider nur in der kommerziellen Ausgabe verfügbar ist (Zitat) :
Das Reverse Engineering einer Datenbank direkt von einem MySQL-Server gilt nur für kommerzielle Versionen von MySQL Workbench .
Sie können jedoch Plain-SQL verwenden, um die create table
Anweisung abzurufen, mit der Sie eine Tabelle erstellen können.
Zum Beispiel die folgende Abfrage:
show create table url_alias;
Wenn es in einer Drupal-Datenbank ausgeführt wird, würde es geben, wenn es direkt click > copy field content
auf das Ergebnis angewendet wird :
'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'
Leider (wieder) fügt MySQL Workbench beim Kopieren auf diese Weise überall einige Anführungszeichen hinzu :-(
click > copy field (unquoted)
das Ergebnis direkt bearbeiten, um das gewünschte Ergebnis ohne Anführungszeichen zu erhalten.
Am Ende besteht die einfachste Lösung, außer bei MySQL Query Browser zu bleiben, höchstwahrscheinlich darin, über den Befehlszeilenclient eine Verbindung zur Datenbank herzustellen und die show create table
Abfrage von dort aus auszuführen :
mysql> show create table url_alias\G
*************************** 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)
Dort ist es einfacher, " den richtigen Teil " der Ausgabe zu erhalten: kein Zitat zum Entfernen.
Und der Vollständigkeit halber können Sie auch mysqldump
die Struktur Ihres Tisches ermitteln:
mysqldump --no-data --user=USERNAME --password=PASSWORD --host=HOST DATABASE_NAME TABLE_NAME
Mit dem --no-data
Schalter erhalten Sie nur die Struktur - mitten in einigen Moduseinstellungen und so weiter .
Um das Erstellungsskript einer einzelnen Tabelle zu erhalten, klicken Sie mit der rechten Maustaste auf den Tabellennamen und klicken Sie auf In Zwischenablage kopieren> Anweisung erstellen.
So aktivieren Sie die Option Datei> Forward Engineering SQL_CREATE-Skript .. und rufen das Erstellungsskript für Ihre gesamte Datenbank ab:
Es befindet sich eher in der Serververwaltung als in der SQL-Entwicklung.
Ich kam hierher und suchte nach der Antwort auf dieselbe Frage. Aber ich habe selbst eine viel bessere Antwort gefunden.
In the tables list, if you right-click on the table name there is a suite of CRUD script generation options in "Send to SQL Editor". You can select multiple tables and take the same approach too.
Meine Version von MySQL Workbench: 5.2.37
Ich bin mir nicht sicher, ob ich Ihr Problem vollständig verstanden habe, aber wenn es nur um das Erstellen von Exportskripten geht, sollten Sie den Ingenieur an das SQL-Skript weiterleiten - Strg + Umschalt + G oder Datei -> Exportieren -> erste Option.
Ich bin mir nicht sicher, ob dies immer noch ein Problem ist, aber für mich ist es in 5.2.35CE möglich, die Erstellungsskripte zu erhalten, indem ich:
Datenbank -> Reverse Engineer
Wählen Sie unter Gespeicherte Verbindung Ihre Datenbank aus
Klicken Sie einige Male auf "Weiter", wählen Sie das Schema aus, das Sie zurückentwickeln möchten, und lassen Sie das Tool arbeiten
Sie erhalten eine "EER-Diagramm" -Ansicht mit allen DB-Schemata. Wenn Sie mit der rechten Maustaste auf die Tabelle klicken, die Sie interessiert, und "SQL in Zwischenablage kopieren" wählen, haben Sie wahrscheinlich das, was Sie brauchen.
Hoffentlich hilft das jemand anderem, der es braucht.
Sie können MySQL Proxy und sein Skriptsystem verwenden , um SQL-Abfragen in Echtzeit im Terminal anzuzeigen.
Oder überprüfen Sie https://dev.mysql.com/doc/workbench/en/wb-admin-export-import-management.html