Как конвертировать.mwb в.sql без верстака
У меня есть база данных.mwb, но мне нужно загрузить ее в мой phpmyadmin (у меня уже установлен Wamp). Я попытался установить MySQL Workbench, но он обнаружил другой MySQL, и я отменил установку.
Как я могу преобразовать его, чтобы взять.sql файл этого.mwb?
Спасибо!
1 ответ
Модель Workbench представляет собой сжатый файл (другими словами, переименованный ZIP-файл). Вы должны быть в состоянии открыть его с любым приличным архиватором. Внутри есть файл XML. Я не знаю, задокументирован ли формат, но выглядит он довольно просто:
<value type="object" struct-name="db.mysql.Table" id="{DF899AC1-6CAA-42A8-A584-A663E17596E9}" struct-checksum="0x1a403946">
<value type="string" key="avgRowLength"></value>
<value type="int" key="checksum">0</value>
<value _ptr_="0971BA88" type="list" content-type="object" content-struct-name="db.mysql.Column" key="columns">
<value type="object" struct-name="db.mysql.Column" id="{A742D230-C0CE-48C7-88E0-B5DB74409FE4}" struct-checksum="0x783b5183">
<value type="int" key="autoIncrement">1</value>
<value type="string" key="characterSetName"></value>
<value _ptr_="0971BF08" type="list" content-type="object" content-struct-name="db.CheckConstraint" key="checks"/>
<value type="string" key="collationName"></value>
<value type="string" key="datatypeExplicitParams"></value>
<value type="string" key="defaultValue"></value>
<value type="int" key="defaultValueIsNull">0</value>
<value _ptr_="0971BF98" type="list" content-type="string" key="flags">
<value type="string">UNSIGNED</value>
</value>
<value type="int" key="isNotNull">1</value>
<value type="int" key="length">-1</value>
<value type="string" key="name">invoice_id</value>
<value type="int" key="precision">10</value>
<value type="int" key="scale">-1</value>
<link type="object" struct-name="db.SimpleDatatype" key="simpleType">com.mysql.rdbms.mysql.datatype.int</link>
<value type="string" key="comment"></value>
<value type="string" key="oldName">invoice_id</value>
<link type="object" struct-name="GrtObject" key="owner">{DF899AC1-6CAA-42A8-A584-A663E17596E9}</link>
Таким образом, вам нужно потратить несколько дней на написание сценария, который анализирует XML и составляет код SQL.
(Честно говоря, я думаю, что это пустая трата времени, учитывая, что оригинальный Workbench бесплатный и кроссплатформенный.)