MySQL Workbench can be extended and customized in many ways (without having to hack the main source code): * Diagram figure stylesheets * Scripts * Plugins...See more »
MySQL Workbench can be extended and customized in many ways (without having to hack the main source code): * Diagram figure stylesheets * Scripts * Plugins Figure stylesheets are used to define the graphical appearance of the objects displayed on the canvas. The appearance of tables, relationships, notes etc can all be custom defined with XML files containing SVG snippets. You can create your own stylesheets if you're used to a different notation, want to have fancy looking diagrams or just want to save ink when printing diagrams :) Scripts can be used to automate Workbench tasks. You can do things like reverse engineering a 100 tables that used to be from an old MySQL 4.0 database, converting all columns that are called 'name' to use UTF8 as their character set and ALTER them in the database. Pretty much everything that Workbench does internally (and more) can be accessed from Workbench plugins, so it can be a very powerful tool. Currently, scripts can be written in the Lua and Python scripting languages. Plugins are also a very flexible mechanism to extend the Workbench to perform tasks that you need. Since they're easy to develop (if you have some programming or scripting knowledge) you can write plugins to do things like validating your model against a set of company specific conventions/rules, applying changes to all selected tables, autoarranging objects in a layout you like etc. Below, is list of langues that are currently supported: * Lua * Python * C/C++ * Java * PHP (planned) It's possible to add support for new ones, although it will require some C++ coding and some studying of the GRT internals. Support for dynamically loading language support modules is planned.See less »