# page_content_content

c1title: Libzip License
c2content:
 B.14. Libzip License B.14. Libzip License The following software may be included in this product: libzip Copyright (C) 1999-2008 Dieter Baron and Thomas Klausner The authors can be contacted at &lt;libzip@nih.at&gt; Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The names of the authors may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 


c1title: Libxml2 License
c2content:
 B.13. Libxml2 License B.13. Libxml2 License The following software may be included in this product: Libxml2 Except where otherwise noted in the source code (e.g. the files hash.c, list.c and the trio files, which are covered by a similar licence but with different Copyright notices) all the files are: Copyright (C) 1998-2003 Daniel Veillard. All Rights Reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE DANIEL VEILLARD BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Except as contained in this notice, the name of Daniel Veillard shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization from him. 


c1title: Manage DB Connections Dialog
c2content:
 6.6. Manage DB Connections Dialog 6.6. Manage DB Connections Dialog 6.6.1. The Password Storage Vault 6.6.2. Standard TCP/IP Connection 6.6.3. Local Socket/Pipe Connection 6.6.4. Standard TCP/IP over SSH Connection MySQL Workbench provides a Manage DB Connections dialog for creating and managing connections to servers. The connections created can then be used from the wizards that must connect to a server, such as the wizard used to reverse engineer a live database. However, it is still possible to set connection parameters from these wizards if required, without invoking the Manage DB Connections dialog directly. The Manage DB Connections dialog is invoked by selecting Database , Manage Connections from the main menu. It can also be invoked from any of the wizards requiring access to a live database. This is achieved by using the Manage Stored Connections item, found in the wizard's Stored Connection list. After the Manage DB Connections dialog is launched, you are presented with the following dialog, which enables you to create or delete connections. Figure 6.1. Manage DB Connections - Dialog Click New to create a new connection. Once created, the connection can be selected from the Stored Connections list. You can then set various parameters for the connection, including the following: Connection Name : The name used to refer to this connection. This connection can then be selected from a list in other wizards requiring a connection. Connection Method : The methods available are Standard TCP/IP, Local Socket/Pipe, and Standard TCP/IP over SSH. After you select a connection method, the fields available in the Parameters tab and the Advanced tab of the dialog changes accordingly. More details about these options and parameters are available in the following sections. After all parameters have been set as required, you can click the Test Connection button to test the connection to the live server. After you are satisfied that the connection works as expected, you can close the wizard by clicking the Close button. The stored connection then is available for use from any of the wizards requiring a connection to a live server. You can duplicate an existing connection using the Duplicate button. This is an easy way to begin setting up a new connection that differs only slightly from an existing one. 


c1title: Plugins
c2content:
 9.3. Plugins 9.3. Plugins Plugins are special Modules that are exposed to the user through the Workbench GUI. This is typically done using the main menu, or the context-sensitive menu. Much of the MySQL Workbench functionality is implemented using plugins; for example, table, view, and routine editors are native C++ plugins, as are the forward and reverse engineering wizards. The Administrator facility in MySQL Workbench is implemented entirely as a plugin in Python. A plugin can be a simple function that performs some action on an input, and ends without further interaction with the user. Examples of this include auto-arranging a diagram, or making batch changes to objects. To create a simple plugin, the function must be located in a module and declared as a plugin using the plugin decorator of the ModuleInfo object. Plugins can have an indefinite runtime, such as when they are driven by the user through a graphical user interface. This is the case for the various object editors and wizards within MySQL Workbench. Although this latter type of plugin must be declared in the usual way, only the entry point of the plugin will need to be executed in the plugin function, as most of the additional functionality will be invoked as a result of the user interacting with the GUI. Declare a plugin using this syntax: @ModuleInfo.plugin(plugin_name, caption, [input], [groups], [pluginMenu]) These parameters are defined as follows: plugin_name : A unique name for the plugin. It may contain only alphanumeric characters, dots, and underscores. caption : A caption to use for the plugin in menus. input : An optional list of input arguments. groups : Optional list of groups the plugin belongs to. Recognized values are: Overview/Utility : The Context menu in the Model Overview. Model/Utility : The menu for diagram objects. Menu/&lt;category&gt; : The Plugins menu in the main menu. pluginMenu : Optional name of a submenu in the Plugins menu where the plugin should appear. For example, Catalog , Objects , Utiities . This is equivalent to adding a Menu/&lt;category&gt; in the groups list. 


c1title: Uninstalling MySQL Workbench on Linux
c2content:
 3.3.6. Uninstalling MySQL Workbench on Linux 3.3.6. Uninstalling MySQL Workbench on Linux The procedure for uninstalling MySQL Workbench on Linux depends on the package you are using. Uninstalling DEB packages To uninstall a Debian package, use this command: shell&gt; sudo dpkg -r mysql-workbench-oss This command does not remove the configuration files. If you wish to also remove the configuration files, use this command: shell&gt; sudo dpkg --purge mysql-workbench-oss Uninstalling RPM packages To uninstall an RPM package, use this command: shell&gt; sudo rpm -e mysql-workbench-oss This command does not remove the configuration files. 


c1title: Changes in MySQL Workbench 5.1.11 (Not yet released)
c2content:
 A.2.9. Changes in MySQL Workbench 5.1.11 (Not yet released) A.2.9. Changes in MySQL Workbench 5.1.11 (Not yet released) This section documents all changes and bug fixes applied since the release of 5.1.10. Bugs Fixed MySQL Workbench crashed when attempting to delete an EER diagram from the EER Diagrams section of the main project tab. (Bug #44245) When using MySQL Workbench on Linux, if a new layer was created it was not possible to then change the layer's name in the Properties tab. (Bug #44202) 


c1title: Export to Disk
c2content:
 8.7.6.1. Export to Disk 8.7.6.1. Export to Disk The Export to Disk tab enables you to select the schema and tables to export. You also have the option to export tables to their own files, or all tables to a single file. Exporting tables to individual files enables you to restore on a per-table basis. Figure 8.9. Administrator - Export to Disk 


c1title: Installing MySQL Workbench on Windows
c2content:
 3.3.1. Installing MySQL Workbench on Windows 3.3.1. Installing MySQL Workbench on Windows MySQL Workbench for Windows can be installed using the Windows Installer package or installed manually from a Zip file. Important Installing MySQL Workbench using the Installer package requires either Administrator or Power User privileges. If you are using the Zip file without an installer, you do not need Administrator or Power User privileges. Installing MySQL Workbench Using the Installer Package MySQL Workbench can be installed using the Windows Installer ( .msi ) installation package. The MSI package bears the name mysql-workbench- version -win32.msi , where version indicates the MySQL Workbench version number. Improving the MySQL Installation Wizard depends on the support and feedback of users. If you find that the MySQL Installation Wizard lacks some feature important to you, or if you discover a bug, please report it in our bugs database. Select the Report a Bug item from the Help menu. To install MySQL Workbench, right-click the MSI file and select the Install item from the pop-up menu, or double-click the file. In the Setup Type window you may choose a Complete or Custom installation. To use all features of MySQL Workbench choose the Complete option. Unless you choose otherwise, MySQL Workbench is installed in C:\ %PROGRAMFILES% \MySQL\MySQL Workbench 5.1 edition_type \ , where %PROGRAMFILES% is the default directory for programs for your locale. The %PROGRAMFILES% directory may be C:\Program Files or C:\programme . Installing from the Zip File If you have problems running the Installer package, an alternative is to install from a Zip file without an installer. That file is called mysql-workbench- version -win32.zip . To install using the Zip file, download the Zip file to a convenient location and decompress the file using a Zip utility. You can place the resulting directory anywhere on you system. You need not install or configure the application before using it. You may want to create a shortcut on your desktop or the quick launch bar. 


c1title: The Table Tool
c2content:
 7.6.1.7. The Table Tool 7.6.1.7. The Table Tool Use this tool to create a table on the EER Diagram canvas. Clicking the canvas creates a table. To edit the table with MySQL Table Editor, right-click it and choose Edit Table... or Edit in New Window... from the pop-up menu. You can also double-click the table to load it into the table editor. To activate the table tool from the keyboard, use the T key. For more information about creating and editing tables, see Section 7.7.1.3, “The MySQL Table Editor” . 


c1title: Changes in MySQL Workbench 5.1.14 (19 June 2009)
c2content:
 A.2.6. Changes in MySQL Workbench 5.1.14 (19 June 2009) A.2.6. Changes in MySQL Workbench 5.1.14 (19 June 2009) This section documents all changes and bug fixes applied since the release of 5.1.13. Bugs Fixed On Mac OS X, MySQL Workbench crashed when creating a new document after another one had been worked on. If editing a document, and then selecting to create a new document and not saving the current document when prompted, MySQL Workbench crashed when the save dialog closed. (Bug #45519) Printing an EER diagram crashed MySQL Workbench. (Bug #45518) When right-clicking an item that was not selected, such as a table or routine, in the MySQL Model tab, the item was selected without the other items being deselected. The expected behavior for applications in both Windows and Linux is that right-clicking an item that has not been selected, should deselect all other items. Right-clicking an already selected item should not alter any of the selections. (Bug #44268) When synchronizing a model with a database, rather than synchronizing only the selected tables, all tables were synchronized. (Bug #43485) 


c1title: Printing
c2content:
 7.9. Printing 7.9. Printing 7.9.1. Printing Options The printing options used to create printouts of your EER Diagrams are found under the File menu. To create documentation of your models, see Section 7.5.1.5.1, “The DBDoc Model Reporting Dialog Window (Commercial Version)” . 


c1title: Manage Data Import/Export
c2content:
 8.3. Manage Data Import/Export 8.3. Manage Data Import/Export This action item enables you to create a dump file from a database, or restore data from a file to a live database. Clicking this item launches the Import/Export MySQL Data wizard. This enables you to select a server instance to connect to. For further details, see Section 8.7.6, “The Data Dump Tab” . 


c1title: The Arrange Menu
c2content:
 7.5.1.4. The Arrange Menu 7.5.1.4. The Arrange Menu The Arrange menu items apply only to objects on an EER diagram canvas and are enabled only if an EER diagram view is active. The Arrange menu has these items: Align to Grid : Aligns items on the canvas to the grid lines Bring to Front : Brings objects to the foreground Send to Back : Sends objects to the background Center Diagram Contents : Centers objects on the canvas Autolayout : Automatically arranges objects on the canvas Reset Object Size : Expands an object on an EER diagram. For example, if a table has a long column name that is not fully displayed, this menu item expands the table to make the column visible. This menu item is not enabled unless an object is selected. Expand All : Use this item to expand all objects on an EER diagram. This item will display a table's columns if the object notation supports expansion. Some object notations, such as Classic , do not permit expansion or contraction. Indexes will not automatically be expanded unless they were previously expanded and have been collapsed using the Collapse All menu item. Collapse All : Undo the operation performed by Expand All . 


c1title: Reverse Engineering
c2content:
 7.7.9. Reverse Engineering 7.7.9. Reverse Engineering 7.7.9.1. Reverse Engineering Using a Create Script 7.7.9.2. Reverse Engineering a Live Database With MySQL Workbench, you can reverse engineer a database using a MySQL create script or you can connect to a live MySQL server and import a single database or a number of databases. All versions of MySQL Workbench can reverse engineer using a MySQL DDL script. Only commercial versions of MySQL Workbench can reverse engineer a database directly from a MySQL server. 


c1title: New Connection
c2content:
 6.2. New Connection 6.2. New Connection Clicking the New Connection action item launches the Manage DB Connections wizard. This wizard enables you to create a new connection. Note that the wizard when launched from here does not display existing connections, it only enables you to create a new connection. To read more about creating and managing connections, see Section 6.6, “Manage DB Connections Dialog” . 


c1title: Changes in MySQL Workbench 5.2.37 (Not yet released)
c2content:
 A.1.1. Changes in MySQL Workbench 5.2.37 (Not yet released) A.1.1. Changes in MySQL Workbench 5.2.37 (Not yet released) This section documents all changes and bug fixes applied to MySQL Workbench since the release of 5.2.36. Bugs Fixed Database synchronization would sometimes confuse similar table and routine names. (Bug #61028, Bug #12656879) Case changes to ENUM values were not recognized by MySQL Workbench. (Bug #60478, Bug #11889204) Within the Database , Forward Engineer dialogue for a Model, the DROP Objects Before Each CREATE Object option was ignored if the Export MySQL Table Objects option was not selected. (Bug #59200, Bug #11766157) Altering the case of a table name caused an error, when that was the only change and the SQL Identifiers are Case Sensitive option was set to true. (Bug #58808, Bug #11765806) The Forward engineering feature now preserves case for schema names, even on case-insensitive systems. Before it would create lowercase variants of the schema names on these systems. (Bug #56237, Bug #11763520) The Forward engineer feature would sometimes create invalid SQL syntax for old MySQL Workbench files with deleted routines and roles. (Bug #53973, Bug #11761473) 


c1title: Changes in MySQL Workbench 5.2.18 (13 April 2010)
c2content:
 A.1.22. Changes in MySQL Workbench 5.2.18 (13 April 2010) A.1.22. Changes in MySQL Workbench 5.2.18 (13 April 2010) This section documents all changes and bug fixes applied since the release of 5.2.17. Functionality Added or Changed MySQL Workbench now features the ability to copy field data in the SQL Editor results tab in quoted or unquoted mode. (Bug #51041) Bugs Fixed When using the Forward Engineer SQL Script wizard, the wizard did not terminate DROP procedure IF EXISTS statements with a semicolon. This caused SQL syntax errors if the script was executed on a server. (Bug #52743) In the SQL Editor, if a routine was altered in the routine editor, it was possible to close the editor without the editor prompting you to save any changes made, and so changes were lost. (Bug #52728) The Triggers tab in the Alter Table dialog of the SQL Editor erased all entered code, when an attempt was made to copy and paste text within the tab. (Bug #52587) The Data Dump facility in the Administrator exported the entire schema into a single file when the Dump Views option was selected. Further, if tables were selected and the Dump stored routines option selected, the routines would be stored in their own file, but with the DROP PROCEDURE IF EXISTS statements missing. (Bug #52579) During the import procedure of the Data Dump facility in the Administrator, stored routines were not imported. (Bug #52577) The Connection Information panel in the SQL Editor did not display information for the User field. (Bug #52560) MySQL Workbench crashed when an attempt was made to create an EER Diagram from a database containing a large number of tables (1500+). (Bug #52500) MySQL Workbench crashed if No in the Delete Object dialog was clicked when attempting to delete a view from an EER Diagram. (Bug #52310) In the SQL Editor, if in the Alter Routine dialog, the user had a routine that contained an error, the routine would be lost if an attempt was made to close the Alter Routine dialog using the close button, and then click Yes to apply changes. (Bug #51921) In the Alter Table dialog of the SQL Editor, in the columns or indexes tab, the first right-click in the dialog central area failed to display the context-sensitive menu. However, it was displayed on subsequent clicks. (Bug #51796) In the SQL Editor, it was not possible to export a result set, if the result set was not the first result set. For example, if there were two result sets, it would be possible to export the first one created, but not the second result set. (Bug #51595) In the Object Explorer of the Sidebar, if an existing table was right-clicked, the context-sensitive menu displayed the option Create Table... . However, selecting this option appeared to have no effect. (Bug #51570) In the SQL Editor, in the results editor, it was not possible to edit or copy data containing multiple lines of text. Further, lines containing new lines were displayed as if the new lines did not exist. MySQL Workbench now includes a blob editor. This can be accessed by right-clicking in the field to edit and selecting Open Value in Editor . (Bug #51561) In the Alter Routine dialog of the SQL editor, there was inconsistency between the operation of the close dialog button ('X') on the top right of the window, and the Close button on the bottom right. When using the close dialog button you were prompted to save changes, regardless of whether you actually changed the routine or not. When using the Close button, the user was not prompted, even if the routine had changed. (Bug #51518) The Message Log text area in the Forward Engineer to Database wizard was in active, preventing scrolling of the message when an error occurred. (Bug #51417) In the SQL Editor, right-clicking a row in the results editor (after double-clicking a table), and selecting delete from the context-sensitive menu, did not have any effect. (Bug #51361) The scrollable boxes on the Home screen did not respond to mouse wheel events. (Bug #51213) When editing a row in the SQL Editor, if a column was NOT NULL and had a default value, and a value was not entered for it, then after changing another column if changes were applied an error would be generated. This was because the editor attempted to set the NOT NULL column to NULL, rather than to its default value. (Bug #50781) The Log text area in the Reverse Engineer SQL Script wizard was inactive, preventing the log message from being scrolled. (Bug #50758) The model Navigator did not redraw itself correctly. The Navigator worked correctly for the first model loaded into MySQL Workbench, but not for subsequently loaded models. (Bug #50580, Bug #50622) When editing a table in the SQL Editor, the context sensitive menu items did not affect the row under the cursor, but a previously selected row. This potentially led to the unintentioned deletion of a row. (Bug #50113) On the Linux platform, no context-sensitive menu was displayed when right-clicking a schema tab in the Physical Schemata section of the MySQL Model page. (Bug #49429) In the EER Diagram view, when a table with a name containing underscores was right-clicked, the context-sensitive menu displayed menu items containing the table name without the underscores. (Bug #49314) In the MySQL Model page it was not possible to delete a schema by using the context sensitive menu in the Physical Schemata section. (Bug #48055) 


c1title: Changes in MySQL Workbench 5.2.15 (28 January 2010)
c2content:
 A.1.25. Changes in MySQL Workbench 5.2.15 (28 January 2010) A.1.25. Changes in MySQL Workbench 5.2.15 (28 January 2010) This section documents all changes and bug fixes applied since the release of 5.2.14. Functionality Added or Changed The GRT Shell exhibited various issues and could generate exceptions in some circumstances. The GRT Shell has been updated and is now implemented as a standalone dialog known as the Workbench Scripting Shell. (Bug #49298) Bugs Fixed Double-clicking any main tab, just below the main menu toolbar, caused MySQL Workbench to generate an exception. (Bug #50562) If text was entered into the search bar in the SQL Editor, and the sidebar button clicked twice, MySQL Workbench crashed. This only happened on Mac OS X. (Bug #50560) In the Columns tab of the Table Editor, attempting to change the column data type using the list caused MySQL Workbench to crash. (Bug #50546, Bug #50598, Bug #50527) The Portrait and Landscape icons were missing from the Page Setup dialog. (Bug #50529) It was not possible to print EER Diagrams or schemata. The File , Print option was grayed out, and Control+P did not have any effect. (Bug #50528) On an EER Diagram, when a relationship was placed using the toolbar button Place a Relationship using Existing Columns , if the relationship was subsequently checked in the Foreign Keys tab of the Table Editor, it was found to contain incorrect values for foreign key names, for example, fk_%dcolumn%1. It was apparent that the placeholder had not had its value correctly substituted. (Bug #50492) MySQL Workbench reported the remote server as being down, in the Database Server Status section of the Administrator, even though the server was in fact running, and queries could be successfully run against the database using MySQL Workbench. (Bug #50453) When the menu item File , Page Setup was selected from the main menu, MySQL Workbench crashed. (Bug #50315) When performing a data dump in the Administrator, the operation failed with an exit code 7. MySQL Workbench has been changed so that it will generate an error if the mysqldump executable cannot be found. (Bug #50184) Client-side sorting always sorted on an alpha basis, regardless of data type. This meant numeric values were not sorted into the order expected. (Bug #50158) With an EER Diagram open, the File , Page Setup menu item was unavailable. (Bug #49863) When working through the Manage DB Connections wizard, the prompt to Enter SSH password appeared as a sheet behind the modal dialog box for the wizard. In some situations, it was not possible to see the Enter SSH password sheet, and it was not possible to click any buttons on, or close, the modal wizard. This meant the user had to move the modal dialog box to see the Enter SSH password sheet, but is was not obvious that this was possible because the window decorations indicated that the modal dialog could not be focused. MySQL Workbench now uses a dialog rather than a wizard used for Manage DB Connections when creating a new connection. (Bug #49810) The Synchronize Model with Database wizard generated a script that erroneously dropped schemata that had been selected to be ignored. (Bug #49587) On the General tab of the configuration file editor, if a value was set for Temp directory , and the changes applied, the value set was not displayed in the preview, implying it would not be set in the server configuration file. (Bug #49423) When a MySQL Workbench unhandled exception occurred and the exception dialog was displayed, if the user clicked Quit , and there were unsaved changes, a new dialog was displayed, warning of unsaved changes. If Cancel was clicked on this dialog, MySQL Workbench would exit, which was not the expected behavior because changes would then be lost. If Yes was clicked on this dialog, to save changes, MySQL Workbench crashed. Overall, the behavior of the dialogs was confusing. A new error dialog has been introduced that changes the handling. It presents the user options to go to the bug report page, copy debug information to the clipboard and to close the dialog. (Bug #49304) In the Administrator, when an attempt was made to import multiple tables from the same project folder, MySQL Workbench only imported the first table and then stopped, reporting the import process as finished. (Bug #49217) In the SQL Editor, if an attempt was made to change the number of partitions in a table, using Alter Table, the SQL code produced did not contain the necessary ALTER TABLE statement to effect this change. (Bug #49054) If the MySQL Server was stopped outside of MySQL Workbench then the server status displayed in the Administrator did not update correctly until the Startup tab was clicked. The log file did however correctly note the change in status. (Bug #48966) When exporting a model to a single file using File , Export , Export as Single Page PDF or Export as Single Page Postscript File , the table positions contained in the file were incorrect. (Bug #47384) If a model contained a table which used a user defined type for a column, then when the model was forward engineered an erroneous COLUMN CHANGE statement was generated for the column. This only happened for user defined types without additional arguments. For example, a user defined type using INTEGER(11) would not create a COLUMN CHANGE statement, but using INTEGER would. (Bug #45834) 


c1title: The Edit Menu
c2content:
 7.5.1.2. The Edit Menu 7.5.1.2. The Edit Menu 7.5.1.2.1. Find Dialog Window 7.5.1.2.2. Workbench Preferences Use the Edit menu to make changes to objects. The text description for several of the menu items changes to reflect the name of the currently selected object. This menu has items for cutting, copying, and pasting. These actions can also be performed using the Control+X , Control+C , and Control+V key combinations. Undo a deletion using the Undo Delete ' object_name ' item. The Control+Z key combination can also be used to undo an operation. It is also possible to carry out a Redo operation using either the menu item, or the key combination Control+Y . Also find a Delete ' object_name ' menu item for removing the currently selected object. The keyboard command for this action is Control+Delete . You can also right-click an object and choose the delete option from the pop-up menu. The Delete ' object_name ' menu item behaves differently depending upon circumstances. For example, if an EER Diagram is active and a table on the canvas is the currently selected object, a dialog box may open asking whether you want to remove the table from the canvas only or from the database as well. For information about setting the default behavior when deleting from an EER Diagram, see Section 5.4.4, “The Model Tab” . Warning If the MySQL Model page is active, the selected object is deleted from the catalog and there will be no confirmation dialog box . Choose Edit Selected to edit the currently selected object. You can also perform edits in a new window by selecting Edit Selected in New Window . The keyboard shortcuts for Edit Selected and Edit Selected in New Window are Control+E and Control+Shift+E , respectively. The Select item has the following submenus: Select All (Keyboard shortcut, Control+A ): Selects all the objects on the active EER diagram. Similar Figures (Objects of the same type): Finds objects similar to the currently selected object. Connected Figures : Finds all the objects connected to the currently selected object. These menu items are active only when an EER Diagram tab is selected. The Similar Figures and the Connected Figures menu items are disabled if no object is currently selected on an EER diagram. When multiple objects have been selected using one of these menu items, you can navigate between selected items by choosing the Go to Next Selected or Go to previous Selected menu item. Selecting objects changes some of the Edit menu items. If only one object is selected, that object's name appears after the Cut , Copy and Delete menu items. If more than one object is selected, these menu items show the number of objects selected. 7.5.1.2.1. Find Dialog Window The Find submenu displays the following menu items: Find : Takes you to the toolbar search box. You can look for objects in the current view. Find can locate objects in the Model view, the EER Diagram view, and also in the Catalog palette. Find Next : Finds the next occurrence of the object. Find Previous : Finds the previous occurrence of the object. Search and Replace : Displays the Search and Replace dialog. This is currently for use only with the SQL Editor, to enable you to quickly search and replace script code items. The Standard Edition of MySQL Workbench includes a more advanced Find facility: Figure 7.2. The Find Window You can search the following locations: Entire Model: Searches the entire model. Current View: Searches the current view only. This may be the MySQL Model page. All Views: Searches the MySQL Model Page and all EER diagrams. Database Objects: Searches database objects only. Selected Figures: Searches the currently selected objects. This feature works only for EER diagrams. Enter the text you wish to search for in the Find Text list. You may also select any or all of the following check boxes: Match Case Whole Word Use Regular Expression Search in Comments Search in SQL for Views, SPs etc. Any text you enter into the Find Text list is retained for the duration of your session. Use the Next or Previous buttons to find occurrences of your search criterion. Clicking the Find All button opens a Find Results window anchored at the bottom of the application. If you wish, you may undock this window as you would any other. Use this window to navigate to objects. For example, double-clicking the Description of an object located on an EER diagram navigates to the specific diagram and selects the object. Notice that the properties of the object are displayed in the Properties palette. The Find dialog window can also be opened using the Control+F key combination. Use Control+G to find the next occurrence and Control+Shift+G to find a previous occurrence. Close the Find dialog window by clicking the x in the top right corner or by pressing the Esc key. 7.5.1.2.2. Workbench Preferences This menu item enables you to set global preferences for the MySQL Workbench application. For further information, see Section 5.4, “Workbench Preferences” . 


c1title: Adding Images to an EER Diagram
c2content:
 7.7.8.1. Adding Images to an EER Diagram 7.7.8.1. Adding Images to an EER Diagram To add images to an EER Diagram, use the Image tool on the vertical toolbar. Make sure that the EER Diagram tab is selected, then right-click the image icon on the vertical toolbar. The image icon is the icon just above the table icon. Clicking the mouse on this icon changes the mouse pointer to an image pointer. You can also change the mouse pointer to an image pointer by pressing the I key. Create an image by clicking anywhere on the EER Diagram canvas. This opens a file open dialog box. Select the desired image, then close the dialog box to create an image on the canvas. To revert to the default mouse pointer, click the arrow icon at the top of the vertical toolbar. Right-clicking this object opens a pop-up menu with the following items: Cut 'Image' Copy 'Image' Edit Image... Edit in New Window... Delete 'Image' These menu items function in exactly the same way as they do for other objects on an EER diagram. However, images are not database objects so there is no confirmation dialog box when they are deleted. 


c1title: The Eraser Tool
c2content:
 7.6.1.3. The Eraser Tool 7.6.1.3. The Eraser Tool Use the eraser tool to delete objects from the EER Diagram canvas. Change the mouse pointer to the eraser tool, then click the object you wish to delete. Depending upon your settings, the delete dialog box should open, asking you to confirm the type of deletion. Note The delete action of the eraser tool is controlled by the general option setting for deletion. Before using the eraser tool, be sure that you understand the available options described in Section 5.4.4, “The Model Tab” . To activate the eraser tool from the keyboard, use the D key. You can also delete an object by selecting it and pressing Control+Delete or by right-clicking it and choosing Delete from the pop up menu. 


c1title: Changes in MySQL Workbench 5.0.14beta (25 February 2008)
c2content:
 A.3.18. Changes in MySQL Workbench 5.0.14beta (25 February 2008) A.3.18. Changes in MySQL Workbench 5.0.14beta (25 February 2008) This section documents all changes and bug fixes applied since the release of 5.0.13beta. Workbench Improvements in this Version Expand All and Collapse All menu options have been added under the Arrange menu. The Expand All option expands all objects on an EER. This option will display a table's columns if the object notation supports expansion. Indexes will not automatically be expanded unless they were previously expanded and have been collapsed using the Collapse All menu option. Some object notations, such as Classic , do not permit expansion or contraction. Collapse All undoes the operation performed by Expand All . A Fit Objects to Contents option has been added under the Arrange menu option. This option expands an object on an EER diagram. For example, if a table has a long column name that is not fully displayed, using this menu option will expand the table making the column name visible. A System Information menu option has been added to the Help menu. This option displays information about your system that is useful when reporting a big. An Export as SVG menu option has been added under the File , Export menu option. Because of serious performance and display issues Workbench no longer uses Mesa. For those users who don't have native OpenGL support, Workbench now uses the Windows GDI API. The command line switch for using this mode is -swrendering . For more information about running Workbench from the command line see Section 3.3.2, “Launching MySQL Workbench on Windows” . The GRT inspector has been improved to support new types. Namely: text longtext bool color file This makes it much easier to change object properties manually. Multiple selection support has also been improved—you can easily change a value for several selected objects at once. Bugs Fixed When exporting an SQL CREATE script it was possible to create two tables in the same schema with the same name. (Bug #34668) After placing related tables on an EER diagram and then removing them using the Undo menu option, the connection lines between related tables no longer showed up. (Bug #34601) When choosing the Export as PNG menu option the file dialogue box file type was All Files instead of PNG . The same was true for Export as singlePage PDF and Export as singlePage PS . The default is now the appropriate file type. (Bug #34548) If there was a relationship between table A and table B and also one between table B and table A , the connection lines appeared on top of each other. Connection lines now appear attached at the related columns. (Bug #34543) When there were multiple tables with long identifiers the Physical Schemata section of the MySQL Model page was messy. Table names were obscured and sometimes overlapped. Also, the position of the Add Table icon was not optimal. Now the space between table names is adjusted to the largest entry and the Add Table icon is fixed in the upper left corner. (Bug #34536) When returning to the SQL Export Filter page after using the Back button, filters were no longer selected. Selections now persist. (Bug #34503) The export filters were applied more than once when forward engineering an SQL CREATE script. This happened if you exported the script after using the Back button on the SQL Export Filter page. (Bug #34501) When the object notation was Workbench Classic the width of a table on an EER diagram could not be less than the widest column. If there was an enum column with many options, this made for a disproportionately wide table. Table width can now be less than the widest column. (Bug #34496) When multiple objects on an EER diagram were selected and deleted, Workbench crashed. This happened when both connections and tables were selected. (Bug #34434) Setting a column to AUTO_INCREMENT caused the application to crash. (Bug #34418) It was reported that you could not add a primary key to a table imported from a MySQL CREATE script. This was not true but did highlight the fact that the method for adding a primary key was not obvious. Now, in addition to adding a primary key by double-clicking the icon to the left of a column in the table editor view, you can also add a primary key by checking the PRIMARY KEY check box in the Column Details section of the table editor. (Bug #34408) When using the menu option Generate Schema Diff Report an exception was thrown. A new tree-less version of the Diff report plugin resolves this problem. (Bug #34396) Users failed to be created when exporting an SQL CREATE script. (Bug #34342) When a table's expanded property was set to 0 , the connection line between related tables, appeared at a diagonal orientation. A connection line is now docked on the sides of a table even when the expanded property is set to 0 . (Bug #34249) Copying a table from the MySQL Model page to an EER diagram canvas created a duplicate table with the same name as the original. This table did not show up in the Catalog palette or in the appropriate schema in the Physical Schemata section of the MySQL Model page. (Bug #34230) Creating a new foreign key did not update an EER diagram. An EER diagram is now updated immediately. (Bug #34206) When there were many tables on an EER diagram, constant screen refreshing made the application unusable. The performance of the software rendering mode has been improved. (Bug #33646) A table with many columns did not display properly. When the table was expanded on an EER diagram it was impossible to scroll down and view all the columns. Improved rendering has helped solve this problem. However, for very large tables you may have to increase the size of an EER. To do this use the Model , Diagram Size ... menu option. (Bug #33367) When changing the foreign key column of a table on an EER diagram, the foreign key did not change color and Workbench crashed when attempting to save the MWB file. The application no longer crashes and the foreign key is updated. (Bug #33139) It was not possible to resize a table that used the Workbench (Default) object notation. This was problematic for a number of reasons: Long table names make the table very wide. Column definitions that are long relative to the table name, are truncated. Even if you trimmed column names using the Diagram tab of the Workbench Options the names were sometimes truncated bled over the table border. This has been corrected. (Bug #32981) When there were two schemata and two EER diagrams tables did not show up on the EER diagram if tables from different schemata were added to different EER diagrams. This was caused by defective software rendering. (Bug #32588) When forward engineering to a live database, objects not selected on the Select Objects page were still created. This applied to tables, routines, and users. (Bug #32578) It was not possible to drag or resize tables on an EER diagram. Tables can now be manually resized. To revert a table to automatic sizing use the Property palette and set manualSizing to True. (Bug #32549) The display turned black when the application was resized. This happened when viewing the MySQL Model page or when viewing an EER diagram. (Bug #23959) 


c1title: Manage Connections
c2content:
 6.5. Manage Connections 6.5. Manage Connections Clicking this action item launches the Manage DB Connections wizard. This wizard also displays Stored Connections, which can be selected and changed as desired. This wizard can also be used to create new connections. To read more about managing connections, see Section 6.6, “Manage DB Connections Dialog” . 


c1title: Creating a Foreign Key
c2content:
 7.8.3.2. Creating a Foreign Key 7.8.3.2. Creating a Foreign Key Select the table tool again and place another table on the canvas. Name this table invoice_item . Next click the 1:n Non-Identifying Relationship tool. First, click the invoice_item table; notice that a red border indicates that this table is selected. Next, click the invoice table. This creates a foreign key in the invoice_item table, the table on the “ many ” side of the relationship. This relationship between the two tables is shown graphically in crow's foot notation. Revert to the default mouse pointer by clicking the arrow at the top of the vertical toolbar. Click on the invoice_item table and select the Foreign keys tab. Click the Foreign key Name field. The referenced table should show in the Referenced Table column and the appropriate column in the Referenced Column column. To delete the relationship between two tables, click the line joining the tables and then press Control+Delete . Experiment with the other tools on the vertical toolbar. Delete a relationship by selecting the eraser tool and clicking the line joining two tables. Create a view, add a text object, or add a layer. Save your changes to a MySQL Workbench Models file ( mwb extension) by choosing Save from the File menu or by using the keyboard command Control+S . 


c1title: Adding Users
c2content:
 7.5.5.2. Adding Users 7.5.5.2. Adding Users To add a user, double-click the Add User icon. This creates a user with the default name user1 . Double-clicking this user opens the user editor docked at the bottom of the application. In the User Editor , set the user's name and password using the Name and Password fields. Assign one role or a number of roles to the user by selecting the desired roles from the field on the right and then clicking the &lt; button. Roles may be revoked by moving them in the opposite direction. Right-clicking a user opens a pop-up menu. The items in the menu function as described in Section 7.5.5.1, “Adding Roles” . 


c1title: Importing a Data Definition SQL Script
c2content:
 7.8.1. Importing a Data Definition SQL Script 7.8.1. Importing a Data Definition SQL Script 7.8.1.1. Adding an EER Diagram For this tutorial, use the sakila database script, which you can find by visiting the http://dev.mysql.com/doc/ page, selecting the Other Docs tab, and looking in the Example Databases section After downloading the file, extract it to a convenient location. Open MySQL Workbench and find the Reverse Engineer MySQL Create Script menu item by first choosing File and then Import . Find and import the sakila-schema.sql file. This is the script that contains the data definition statements for the sakila database. The file filter for the file open dialog window defaults to *.sql so you should be able to view only files with the sql extension. If the file was successfully imported, the application's status bar reads, Import MySQL Create Script done. To view the newly imported script, expand the Physical Schemata section by double-clicking the arrow on the left of the Physical Schemata title bar. Select the tab labeled sakila . You may also wish to remove the default schema tab, mydb . Select this tab, then click the - button on the upper right in the Physical Schemata panel. To view all the objects in the sakila schema, you may need to expand the Physical Schemata window. Move the mouse pointer anywhere over the gray area that defines the lower edge of the Physical Schemata window. Hold down the right mouse button and move the mouse to adjust the size of the window. After you have expanded the window, all the objects in the sakila database should be visible. Tables appear at the top followed by views and then routines. There are no routine groups in this schema, but you should see the Routine Groups section and an Add Group icon. For a complete description of importing a MySQL create script, see Section 7.7.9.1, “Reverse Engineering Using a Create Script” . 


c1title: Changes in MySQL Workbench 5.0.30 (18 February 2009)
c2content:
 A.3.1. Changes in MySQL Workbench 5.0.30 (18 February 2009) A.3.1. Changes in MySQL Workbench 5.0.30 (18 February 2009) This section documents all changes and bug fixes applied since the release of 5.0.29. Bugs Fixed MySQL Workbench crashed when the mouse wheel was used. If you scrolled the Options tab of the Table Editor , closed the Table Editor and then used the mouse wheel again on the MySQL Model page, MySQL Workbench crashed. (Bug #42847) Introducing a UserType into a model caused the File , Export , Forward Engineer SQL CREATE Script wizard to crash. Further, peforming a Plugins , Objects , Copy SQL to Clipboard operation also caused MySQL Workbench to crash. (Bug #42085) The Forward Engineer SQL CREATE Script wizard failed to generate a script correctly. This happened when using the File , Export , Forward Engineer SQL CREATE Script facility. If, in the wizard, Object of type MySQL table was selected, and then all tables added to the Exclusion Masks pane, before moving back the required table to the Objects to Process pane, the script was generated for the entire database rather than the selected table. (Bug #41475) When a diagram was renamed, the history displayed: Rename 'new name' to 'new name It should have instead displayed: Rename 'old name' to 'new name' (Bug #41355) If a model contained a View that was using a Function, and an attempt was made to Synchronize the database, an error was generated such as: Error 1305: FUNCTION `bleble` does not exist A similar error was also generated if the Forward Engineer SQL CREATE Script wizard was used. (Bug #40846) The viewport, which is the combobox in the top right corner of Workbench, did not scale to less than 40%. However, resizes above 40% worked fine. (Bug #39607) The Forward Engineer SQL ALTER Script wizard produced an erroneous script. If Forward Engineer SQL CREATE Script was used to generate a script and this was then used as an input to Forward Engineer SQL ALTER Script, without having made any changes to the model, then an ALTER script with no changes should be produced. However, the ALTER script showed many changes, even though no changes had been made to the model. (Bug #37709) 


c1title: Creating Views
c2content:
 7.7.3. Creating Views 7.7.3. Creating Views 7.7.3.1. Adding Views to the Physical Schemata 7.7.3.2. Adding Views to an EER Diagram 7.7.3.3. The View Editor 7.7.3.4. Modifying a View Using the Properties Palette You can add views to a database either from the Physical Schemata section of the MySQL Model page or from the EER Diagram. 


c1title: Overview Tabsheet
c2content:
 6.7.4.1. Overview Tabsheet 6.7.4.1. Overview Tabsheet This tabsheet provides a live overview of the schema. It displays Tables, Views, and Routines for the current schema. 


c1title: Tool-Specific Toolbar Items
c2content:
 7.5.2.1. Tool-Specific Toolbar Items 7.5.2.1. Tool-Specific Toolbar Items When an EER diagram canvas is selected, the following icons appear to the right of the arrow icons: The toggle grid icon: Turns the grid on and off The grid icon: Aligns objects on the canvas with the grid The toolbar also changes depending upon which tool from the vertical toolbar is active. For discussion of these tools, see Section 7.6.1, “The Vertical Toolbar” . If the Table tool is active, schemata lists, engine types, and collations appear on the toolbar. The table properties can be modified using the Properties Editor. When an object is selected, the object's properties, such as color, can be changed in the Properties Editor. 


c1title: Lua (liblua) License
c2content:
 B.15. Lua (liblua) License B.15. Lua (liblua) License The following software may be included in this product: Lua (liblua) Copyright © 1994–2008 Lua.org, PUC-Rio. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 


c1title: Server Administration
c2content:
 8.1. Server Administration 8.1. Server Administration This action item enables you to quickly connect to a predefined server instance and carry out administration functions on the associated server. Clicking this item launches the Server Administration dialog, from which you can select the server instance to which you wish to connect. A new Admin tab will be launched, which displays the Server Status and Configuration. Server Administration (icon) If you have already created server instances, you can most quickly launch these by clicking the icon for the Server Instance you wish to access. A new Admin tab will be launched, which displays Server Status and Configuration. For further details, see Section 8.7, “Server Administration and Configuration” . 


c1title: Changes in MySQL Workbench 5.0.26 (16 October 2008)
c2content:
 A.3.5. Changes in MySQL Workbench 5.0.26 (16 October 2008) A.3.5. Changes in MySQL Workbench 5.0.26 (16 October 2008) This section documents all changes and bug fixes applied since the release of 5.0.25. Bugs Fixed When attempting to export a model using the File , Export , Forward Engineer SQL CREATE Script menu item, Workbench crashed on clicking the wizard's Finish button. (Bug #39578) The Copy Insert to Clipboard action generated SQL with lowercase keywords. This was not consistent with the behavior of the Copy SQL to Clipboard action. (Bug #39477) Renaming a table and then selecting Forward Engineer SQL ALTER Script did not result in a RENAME statement. Instead, DROP and CREATE statements were generated. (Bug #39256) The script generated by the Export , Forward Engineer SQL CREATE Script menu item contained invalid statements when using two schemata. (Bug #39211) Exported SQL code containing a trigger that called a procedure would fail when an INSERT activated the trigger. (Bug #39088) 


c1title: Open an Existing EER Model
c2content:
 7.1. Open an Existing EER Model 7.1. Open an Existing EER Model Clicking this action item launches a file browser. You can then select the model file you wish to load. A new MySQL Model tab will then be created, and your model displayed. If you have already created one or more model files, each will appear in this panel as an icon. Double-clicking the item of the model you wish to load creates a new MySQL Model tab and displays your model. If you already have created a connection to a database, it will appear in this panel as an icon. Double-clicking the icon directly launches an SQL Editor tab, and connects you to the database as defined by the connection. To read more about modeling, see Section 7.5, “Model Editor” . 


c1title: Creating and Managing Server Instances
c2content:
 8.6. Creating and Managing Server Instances 8.6. Creating and Managing Server Instances 8.6.1. New Server Instance Wizard 8.6.2. Manage Server Instances Dialog Server instances can be created and managed from the Home page. To create new server instances, use one of these methods: Click the New Server Instance action item from the Server Administration section of the Home window. This launches the Create a new server instance wizard. For further details, see Section 8.6.1, “New Server Instance Wizard” . Click the Manage Server Instances action item from the Server Administration section of the Home window. This launches the Manage Server Instances dialog, from within which a new server instance can be created. For further details, see Section 8.6.2, “Manage Server Instances Dialog” . 


c1title: Finding Invisible Objects Using the Layers Palette
c2content:
 7.5.11.1. Finding Invisible Objects Using the Layers Palette 7.5.11.1. Finding Invisible Objects Using the Layers Palette In some circumstances, you may want to make an object on an EER diagram invisible. Select the object and, in the Properties palette, set the visible property to False . The Layer palette provides an easy way to locate an object, such as a relationship, that has been set to hidden . Open the Layers palette and select the object by double-clicking it. You can then edit the object and change its visibility setting to Fully Visible . 


c1title: Chapter 9. Extending Workbench
c2content:
 Chapter 9. Extending Workbench Chapter 9. Extending Workbench Table of Contents 9.1. GRT and Workbench Data Organization 9.2. Modules 9.3. Plugins 9.4. Adding a GUI to a Plugin Using MForms 9.5. The Workbench Scripting Shell 9.5.1. Exploring the Workbench Scripting Shell 9.5.2. The Shell Window 9.5.3. The Globals, Classes, and Modules Tabs 9.6. Tutorial: Writing Plugins MySQL Workbench provides an extension and scripting system that enables the developer to extend MySQL Workbench capabilities. While the core of MySQL Workbench is developed using C++, it is possible to harness this core functionality using both the Lua and Python scripting languages. MySQL Workbench also provides access to a cross-platform GUI library, MForms, which enables the creation of extensions that feature a graphical user interface. The extension system enables the following capabilities: Automate common tasks Extend the Workbench user-interface Create plugins (code which can be invoked from the Workbench menu system) Manipulate schemata Create custom Workbench features 


c1title: The Layer Tool
c2content:
 7.6.1.4. The Layer Tool 7.6.1.4. The Layer Tool The layer tool is the rectangular icon with a capital L in the lower left corner. Use the layer tool to organize the objects on an EER Diagram canvas. It is useful for grouping similar objects. For example, you may use it to group all your views. Click the layer tool and use it to draw a rectangle on the canvas. Change to the standard mouse pointer tool and pick up any objects you would like to place on the newly created layer. To change the size of a layer, first select it by clicking it. When a layer is selected, small rectangles appear at each corner and in the middle of each side. Adjust the size by dragging any of these rectangles. You can also make changes to a layer by selecting the layer and changing properties in the Properties panel. Using the Properties panel is the only way to change the name of a layer. To activate the layer tool from the keyboard, use the L key. For more information about layers, see Section 7.7.5, “Creating Layers” . 


c1title: Changes in MySQL Workbench 5.0.21 (27 April 2008)
c2content:
 A.3.10. Changes in MySQL Workbench 5.0.21 (27 April 2008) A.3.10. Changes in MySQL Workbench 5.0.21 (27 April 2008) This section documents all changes and bug fixes applied since the release of 5.0.20. Bugs Fixed The undo operation did not completely undo a relationship between two tables. It removed only the line drawn between two tables, but did not undo the fields and keys. (Bug #36645) Double-clicking a column-heading separator in Find results caused a crash. (Bug #36266) The scripts generated by the File , Export , Forward Engineer SQL ALTER Script and File , Export , Forward Engineer SQL CREATE Script include unnecessary SQL code. (Bug #36170) The Copy Connection nn menu item on the context menu of a connection does not have a complementary Paste Connection menu item. The Edit menu has a greyed-out Paste Connection menu item. (Bug #36166) When a schema used InnoDB , and then was switched to use MyISAM , the script generated by Forward Engineer SQL CREATE Script still contained InnoDB -only syntax. (Bug #35947) Forward Engineer wizard failed to create a table, but did not show any error messages. (Bug #35874) Saving a file restores the column widths of the list view to default under Physical Schemata . (Bug #35718) When making a column a primary key and this column has NULL as default value, this default value is not changed. When the table gets synchronized back to the database Workbench creates a statement such as: ALTER TABLE `test_defhan`.`table1` CHANGE COLUMN `id_table1` `id_table1` INT(11) NOT NULL DEFAULT NULL, ... This leads to an error: Error 1067: Invalid default value for 'id_table1' (Bug #32972) 


c1title: Workbench Application Minimum Window Size
c2content:
 5.3. Workbench Application Minimum Window Size 5.3. Workbench Application Minimum Window Size As of version 5.2.10, the MySQL Workbench application features a fixed minimum window size of 1024x768. You cannot reduce the size of the application to less than this resolution. 


c1title: Changes in MySQL Workbench 5.2.33 (11 March 2011)
c2content:
 A.1.6. Changes in MySQL Workbench 5.2.33 (11 March 2011) A.1.6. Changes in MySQL Workbench 5.2.33 (11 March 2011) This section documents all changes and bug fixes applied since the release of 5.2.32. Bugs Fixed It was not possible to forward engineer a model, or synchronize it with a live model. (Bug #60396, Bug #11850052) In the Administrator, when Manage Security was selected, an error message was displayed in the status bar. It was not then possible to see and therefore manage user privileges. (Bug #60370, Bug #11840439) The ability to synchronize non-model sources was added. (Bug #60009, Bug #11766805) The query beautifier failed for queries containing subqueries. (Bug #58835, Bug #11765832) In the Users and Privileges task of the Administrator, it was not possible to sort the users alphabetically. (Bug #56456, Bug #11763710) MySQL Workbench would incorrectly report that the MySQL server had stopped. (Bug #51146, Bug #11758886) 


c1title: Changes in MySQL Workbench 5.0.16rc (26 March 2008)
c2content:
 A.3.15. Changes in MySQL Workbench 5.0.16rc (26 March 2008) A.3.15. Changes in MySQL Workbench 5.0.16rc (26 March 2008) This section documents all changes and bug fixes applied since the release of 5.0.15rc. Functionality Added or Changed Options and configuration options that affect models can now be set on a model by model basis. Choose Options from the Model menu and choose the Diagram tab. (Bug #34610) Bugs Fixed When double-clicking the row in a column as a primary key, the primary key property would be toggled. The editor will now permit you to edit the value when you click a data row on the table. (Bug #35613) Opening the Indexes portion of a table would generate a unhandled exception error. (Bug #35598) When disabling global options on an individual model would fail to honor the model specific options would be ignored. (Bug #35516) When placing a 1:n relation, an index out of range error could be raised. This could further result in operation on NULL object: Invalid value errors when trying to edit the relation. (Bug #35447) Setting the value of a numeric column to a negative value was not supported. (Bug #35442) Printing an HTML version of the schema would produce a fatal error. (Bug #35400) The OK and Cancel buttons for the Diagram Size dialog would not be initialized properly. (Bug #34808) When using print preview on a diagram, clicking the Print button would send a blank page to the printer. (Bug #34630) When copying multiple table definitions from one schema to another, only the first table in the selection would be pasted into the new schema. (Bug #34483) The Draw Line Crossing option would fail to be recognized correctly. You can also now set this on an individual model basis using the Options optin in the Model menu. (Bug #34248) Copying an existing module to the plugins directory would trigger a double registration of the modulem, and produce an error. (Bug #34134) When exporting a diagram to PDF, some additional lines would be added to the generated PDF. (Bug #33586) Placing an image on to the canvas could crash the application. For images larger than the canvas, the image is automatically reduced so that it is properly visible on the canvas for editing. (Bug #33179) A 1:m relation in a diagram would fail to be generated properly when exported as a PDF. (Bug #32882) The Undo and Redo options would not be applied properly when making modifications to partition definitions. (Bug #32279) 


c1title: The Standard Mouse Pointer
c2content:
 7.6.1.1. The Standard Mouse Pointer 7.6.1.1. The Standard Mouse Pointer The standard mouse pointer, located at the top of the vertical toolbar, is the default mouse pointer for your operating system. Use this tool to revert to the standard mouse pointer after using other tools. To revert to the default pointer from the keyboard, use the Esc key. 


c1title: Changes in MySQL Workbench 5.0.19 (15 April 2008)
c2content:
 A.3.12. Changes in MySQL Workbench 5.0.19 (15 April 2008) A.3.12. Changes in MySQL Workbench 5.0.19 (15 April 2008) This section documents all changes and bug fixes applied since the release of 5.0.18rc. Bugs Fixed The HTML Basic Single Page DBDoc report from the Model -&gt; DBDoc -&gt; Model Reporting menu option was missing the schema and table numbers. (Bug #36060) Forward Engineer SQL CREATE Script wizard generated no output script. Further, no error or warning messages appeared to be generated that might explain this. The error message in this case was displayed in the Advanced Log, which was not visible to the user. MySQL Workbench was changed so that the Advanced Log appeared to the user if it received an error message. (Bug #34430) 


c1title: MySQL Workbench
c2content:
 MySQL Workbench MySQL Workbench Abstract This manual documents the MySQL Workbench SE version 5.2 and the MySQL Workbench OSS version 5.2. If you have not yet installed MySQL Workbench OSS please download your free copy from the download site . MySQL Workbench OSS is available for Windows, Mac OS X, and Linux. Document generated on: 2011-11-30 (revision: 28180) For legal information, see the Legal Notice . Table of Contents Preface and Legal Notice 1. MySQL Workbench Introduction 2. MySQL Workbench Editions 3. Installing and Launching MySQL Workbench 3.1. Hardware Requirements 3.2. Software Requirements 3.3. Starting MySQL Workbench 3.3.1. Installing MySQL Workbench on Windows 3.3.2. Launching MySQL Workbench on Windows 3.3.3. Uninstalling MySQL Workbench on Windows 3.3.4. Installing MySQL Workbench on Linux 3.3.5. Launching MySQL Workbench on Linux 3.3.6. Uninstalling MySQL Workbench on Linux 3.3.7. Installing MySQL Workbench on Mac OS X 3.3.8. Launching MySQL Workbench on Mac OS X 3.3.9. Uninstalling MySQL Workbench on Mac OS X 3.4. Activation Procedure (Commercial Version) 4. Getting Started Tutorial 4.1. Administering a MySQL Server 4.2. Creating a Model 4.3. Adding Data to Your Database 5. The Home Window 5.1. Workbench Central 5.2. Workspace 5.3. Workbench Application Minimum Window Size 5.4. Workbench Preferences 5.4.1. The General Tab 5.4.2. The Administrator Tab 5.4.3. The SQL Editor Tab 5.4.4. The Model Tab 5.4.5. The MySQL Tab 5.4.6. The Diagram Tab 5.4.7. The Appearance Tab 6. SQL Development 6.1. Open Connection to Start Querying 6.2. New Connection 6.3. Edit Table Data 6.4. Edit SQL Script 6.5. Manage Connections 6.6. Manage DB Connections Dialog 6.6.1. The Password Storage Vault 6.6.2. Standard TCP/IP Connection 6.6.3. Local Socket/Pipe Connection 6.6.4. Standard TCP/IP over SSH Connection 6.7. SQL Editor 6.7.1. Main Menu 6.7.2. Toolbar 6.7.3. SQL Query Panel 6.7.4. Main Tabsheets 6.7.5. Sidebar 7. Data Modeling 7.1. Open an Existing EER Model 7.2. Create New EER Model 7.3. Create EER Model from Existing Database 7.4. Create EER Model from SQL Script 7.5. Model Editor 7.5.1. Modeling Menus 7.5.2. The Toolbar 7.5.3. EER Diagrams 7.5.4. The Physical Schemata Panel 7.5.5. The Schema Privileges Panel 7.5.6. The SQL Scripts Panel 7.5.7. The Model Notes Panel 7.5.8. The History Palette 7.5.9. The Model Navigator Panel 7.5.10. The Catalog Tree Palette 7.5.11. The Layers Palette 7.5.12. The Properties Palette 7.6. EER Diagram Editor 7.6.1. The Vertical Toolbar 7.7. Working with Models 7.7.1. Creating Tables 7.7.2. Creating Foreign Key Relationships 7.7.3. Creating Views 7.7.4. Creating Routines and Routine Groups 7.7.5. Creating Layers 7.7.6. Creating Notes 7.7.7. Creating Text Objects 7.7.8. Creating Images 7.7.9. Reverse Engineering 7.7.10. Forward Engineering 7.8. Modeling Tutorials 7.8.1. Importing a Data Definition SQL Script 7.8.2. Using the Default Schema 7.8.3. Basic Modeling 7.8.4. Documenting the sakila Database 7.9. Printing 7.9.1. Printing Options 7.10. MySQL Workbench Schema Validation Plugins (Commercial Version) 7.10.1. General Validation 7.10.2. MySQL-Specific Validation 7.11. The DBDoc Model Reporting Dialog Window (Commercial Version) 7.12. Customizing DBDoc Model Reporting Templates 7.12.1. Supported Template Markers 7.12.2. Creating a Custom Template 8. Server Administration 8.1. Server Administration 8.2. New Server Instance 8.3. Manage Data Import/Export 8.4. Manage Security 8.5. Manage Server Instances 8.6. Creating and Managing Server Instances 8.6.1. New Server Instance Wizard 8.6.2. Manage Server Instances Dialog 8.7. Server Administration and Configuration 8.7.1. The Startup Tab 8.7.2. The Configuration Tab 8.7.3. The Accounts Tab 8.7.4. The Connections Tab 8.7.5. The Variables Tab 8.7.6. The Data Dump Tab 8.7.7. The Logs Tab 9. Extending Workbench 9.1. GRT and Workbench Data Organization 9.2. Modules 9.3. Plugins 9.4. Adding a GUI to a Plugin Using MForms 9.5. The Workbench Scripting Shell 9.5.1. Exploring the Workbench Scripting Shell 9.5.2. The Shell Window 9.5.3. The Globals, Classes, and Modules Tabs 9.6. Tutorial: Writing Plugins 10. Keyboard Shortcuts 11. MySQL Workbench FAQ A. MySQL Workbench Change History A.1. Changes in Release 5.2 A.1.1. Changes in MySQL Workbench 5.2.37 (Not yet released) A.1.2. Changes in MySQL Workbench 5.2.36 (Not yet released) A.1.3. Changes in MySQL Workbench 5.2.35 (23 September 2011) A.1.4. Changes in MySQL Workbench 5.2.34 (26 May 2011) A.1.5. Changes in MySQL Workbench 5.2.33b (21 March 2011) A.1.6. Changes in MySQL Workbench 5.2.33 (11 March 2011) A.1.7. Changes in MySQL Workbench 5.2.32 (05 March 2011) A.1.8. Changes in MySQL Workbench 5.2.31a (13 December 2010) A.1.9. Changes in MySQL Workbench 5.2.31 (08 December 2010) A.1.10. Changes in MySQL Workbench 5.2.30 (20 November 2010) A.1.11. Changes in MySQL Workbench 5.2.29 (12 October 2010) A.1.12. Changes in MySQL Workbench 5.2.28 (19 September 2010) A.1.13. Changes in MySQL Workbench 5.2.27 (01 September 2010) A.1.14. Changes in MySQL Workbench 5.2.26 (06 August 2010) A.1.15. Changes in MySQL Workbench 5.2.25 (30 June 2010 General Availability) A.1.16. Changes in MySQL Workbench 5.2.24 (21 June 2010) A.1.17. Changes in MySQL Workbench 5.2.23 (Internal release only) A.1.18. Changes in MySQL Workbench 5.2.22 (02 June 2010) A.1.19. Changes in MySQL Workbench 5.2.21 (12 May 2010 Release Candidate) A.1.20. Changes in MySQL Workbench 5.2.20 (27 April 2010) A.1.21. Changes in MySQL Workbench 5.2.19 (16 April 2010) A.1.22. Changes in MySQL Workbench 5.2.18 (13 April 2010) A.1.23. Changes in MySQL Workbench 5.2.17 (02 April 2010) A.1.24. Changes in MySQL Workbench 5.2.16 (17 February 2010) A.1.25. Changes in MySQL Workbench 5.2.15 (28 January 2010) A.1.26. Changes in MySQL Workbench 5.2.14 (21 January 2010) A.1.27. Changes in MySQL Workbench 5.2.13 (Not released) A.1.28. Changes in MySQL Workbench 5.2.12 (Not released) A.1.29. Changes in MySQL Workbench 5.2.11 (18 December 2009) A.1.30. Changes in MySQL Workbench 5.2.10 (01 December 2009) A.1.31. Changes in MySQL Workbench 5.2.9 (Internal release only) A.1.32. Changes in MySQL Workbench 5.2.8 (18 November 2009 Beta) A.1.33. Changes in MySQL Workbench 5.2.7 (Internal release only) A.1.34. Changes in MySQL Workbench 5.2.6 (21 October 2009) A.1.35. Changes in MySQL Workbench 5.2.5 (Internal Release Only) A.1.36. Changes in MySQL Workbench 5.2.4 (07 October 2009) A.1.37. Changes in MySQL Workbench 5.2.3 (15 September 2009) A.1.38. Changes in MySQL Workbench 5.2.2 (27 July 2009) A.1.39. Changes in MySQL Workbench 5.2.1 (22 May 2009) A.1.40. Changes in MySQL Workbench 5.2.0 (30 April 2009 Alpha) A.2. Changes in Release 5.1 A.2.1. Changes in MySQL Workbench 5.1.19 (06 September 2010) A.2.2. Changes in MySQL Workbench 5.1.18 (03 September 2009 General Availability) A.2.3. Changes in MySQL Workbench 5.1.17 (14 August 2009) A.2.4. Changes in MySQL Workbench 5.1.16 (30 June 2009 General Availability) A.2.5. Changes in MySQL Workbench 5.1.15 (26 June 2009) A.2.6. Changes in MySQL Workbench 5.1.14 (19 June 2009) A.2.7. Changes in MySQL Workbench 5.1.13 (12 June 2009) A.2.8. Changes in MySQL Workbench 5.1.12 (27 April 2009) A.2.9. Changes in MySQL Workbench 5.1.11 (Not yet released) A.2.10. Changes in MySQL Workbench 5.1.10 (10 April 2009) A.2.11. Changes in MySQL Workbench 5.1.9 (Not yet released Beta) A.2.12. Changes in MySQL Workbench 5.1.8 (Not yet released) A.2.13. Changes in MySQL Workbench 5.1.7 (Not yet released) A.2.14. Changes in MySQL Workbench 5.1.6 (Not yet released) A.2.15. Changes in MySQL Workbench 5.1.4 (Not yet released) A.3. Changes in Release 5.0 A.3.1. Changes in MySQL Workbench 5.0.30 (18 February 2009) A.3.2. Changes in MySQL Workbench 5.0.29 (12 December 2008) A.3.3. Changes in MySQL Workbench 5.0.28 (06 December 2008) A.3.4. Changes in MySQL Workbench 5.0.27 (07 November 2008) A.3.5. Changes in MySQL Workbench 5.0.26 (16 October 2008) A.3.6. Changes in MySQL Workbench 5.0.25 (12 September 2008) A.3.7. Changes in MySQL Workbench 5.0.24 (12 August 2008) A.3.8. Changes in MySQL Workbench 5.0.23 (25 June 2008) A.3.9. Changes in MySQL Workbench 5.0.22 (27 May 2008) A.3.10. Changes in MySQL Workbench 5.0.21 (27 April 2008) A.3.11. Changes in MySQL Workbench 5.0.20 (26 April 2008) A.3.12. Changes in MySQL Workbench 5.0.19 (15 April 2008) A.3.13. Changes in MySQL Workbench 5.0.18rc (not released) A.3.14. Changes in MySQL Workbench 5.0.17rc (07 April 2008) A.3.15. Changes in MySQL Workbench 5.0.16rc (26 March 2008) A.3.16. Changes in MySQL Workbench 5.0.15rc (17 March 2008) A.3.17. Changes in MySQL Workbench 5.0.14abeta (28 February 2008) A.3.18. Changes in MySQL Workbench 5.0.14beta (25 February 2008) B. Third Party Licenses B.1. .NET Flat TabControl License B.2. Bitstream Vera License B.3. Boost Library License B.4. Cairo License B.5. CTemplate (Google Template System) License B.6. cURL ( libcurl ) License B.7. DockPanel Suite License B.8. Dojo Toolkit v1.7.0b1 License B.9. GLib License (for MySQL Workbench) B.10. Glitz License B.11. GNU Lesser General Public License Version 2.1, February 1999 B.12. HtmlRenderer (System.Drawing.Html) B.13. Libxml2 License B.14. Libzip License B.15. Lua (liblua) License B.16. PCRE License B.17. Pixman License B.18. PyCrypto License B.19. Python License B.20. Scintilla License B.21. ScintillaNET License B.22. TinyXML License B.23. TreeViewAdv for .NET License B.24. VSQLite++ License 


c1title: Creating Layers
c2content:
 7.7.5. Creating Layers 7.7.5. Creating Layers 7.7.5.1. Adding Layers to an EER Diagram 7.7.5.2. Modifying a Layer Using the Properties Palette You can add layers to a database only from an EER Diagram. Layers are used to help organize objects on the canvas. Typically, related objects are added to the same layer; for example, you may choose to add all your views to one layer. 


c1title: The Accounts Tab
c2content:
 8.7.3. The Accounts Tab 8.7.3. The Accounts Tab 8.7.3.1. Administrative Roles The Accounts tab has two subtabs: Server Access Management Schema Privileges Server Access Management enables you to list existing user accounts. You can also add and delete accounts. You can allocate administrative roles and also set account limits. Schema Privileges enables you to set specific privileges on a user basis. Figure 8.6. Administrator - Accounts Tab Note In the current version of MySQL Workbench, it is not possible to manage privileges below the schema level. For example, it is not possible to view or manage grants at the table, column, or procedure level. 


c1title: Adding Tables to the Physical Schemata
c2content:
 7.7.1.1. Adding Tables to the Physical Schemata 7.7.1.1. Adding Tables to the Physical Schemata Double-clicking the Add table icon in the Physical Schemata section of the MySQL Model page adds a table with the default name of table1 . If a table with this name already exists, the new table is named table2 . Adding a new table automatically opens the table editor docked at the bottom of the application. For information about using the table editor, see Section 7.7.1.3, “The MySQL Table Editor” . Right-clicking a table opens a pop-up menu with the following items: Cut ' table_name ' Copy ' table_name ' Edit Table... Edit in New Window... Copy SQL to Clipboard Copy Insert to Clipboard : Copies INSERT statements based on the model's inserts. Nothing is copied to the clipboard if the table has no inserts defined. Copy Insert Template to Clipboard : Copies a generic INSERT statement that is based on the model. Delete ' table_name ' If the table editor is not open, the Edit Table... item opens it. If it is already open, the selected table replaces the previous one. Edit in New Window... opens a new table editor tab. The cut and copy items are useful for copying tables between different schemata. Warning Use the Delete ' table_name ' item to remove a table from the database. There will be no confirmation dialog box. Any tables added to the Physical Schemata section also show up in the Catalog palette on the right side of the application. They may be added to an EER Diagram by dragging and dropping them from this palette. 


c1title: Changes in MySQL Workbench 5.2.27 (01 September 2010)
c2content:
 A.1.13. Changes in MySQL Workbench 5.2.27 (01 September 2010) A.1.13. Changes in MySQL Workbench 5.2.27 (01 September 2010) This section documents all changes and bug fixes applied since the release of 5.2.26. Functionality Added or Changed Several changes were made to the Sychronize Model With Database wizard: The wizard shows all schemata in a model, regardless of whether they exist in the live database. The wizard shows a list of schemata that exist in the model but are missing from the live server, with a note recommending the use of the Forward Engineering wizard. The wizard does not auto-select schemata names that are in the model but not in the live database. (Bug #54748) Bugs Fixed Attempts to restore a backup of selected tables resulted in this error: File "C:\Program Files\MySQL\MySQL Workbench 5.2 CE\modules\wb_admin_export.py", line 841, in start logmsg = "Restoring %s (%s)" % (schema, table) NameError: global name 'schema' is not defined (Bug #56020) Forward engineering a model to a live database caused MySQL Workbench to crash. (Bug #56009) The Dump tab did not display the target folder before the dump was performed. (Bug #55945) MySQL Workbench crashed in the foreign key editor. The Microsoft Visual C++ Runtime Library runtime error generated prior to the crash was: R6025 - pure virtual function call (Bug #55910) If the sidebar was placed on the right hand side, using the option in Workbench Preferences, this Unexpected Error was generated when Add Diagram was double-clicked: SplitterDistance value is invalid (-52) (Bug #55902) In the SQL Editor, executing statements designed for MySQL Server 5.5 generated syntax or syntax highlighting errors. (Bug #55867, Bug #55891) After dropping a schema from the list in the Object Browser, the schema that was dropped remained, but with the name of the schema that followed it. Refreshing the list of available schemata produced an unhandled exception: An unhandled exception has occurred: Invalid node index (Bug #55861) Selecting "Dump views" for a backup produced this error: Unhandled exception: global name 'views_by_schema' is not defined It was necessary to restart the Administrator to enable the dump facility again. (Bug #55833) In the SQL Editor, right-clicking a routine name in the Object Browser caused MySQL Workbench to exit unexpectedly. (Bug #55822) MySQL Workbench crashed when using the Partitioning tab of the Table Editor. (Bug #55761) If a table was copied in the EER Diagram view, and then the model was synchronized with the live database, the synchronize functionality did not recognize the copied table as a new table and overwrote the original table. (Bug #55566) MySQL Workbench crashed when using the Export recordset to an external file command button on the result pane of the SQL Editor. (Bug #55554) Renaming a column with a foreign key resulted in an invalid script being generated on forward engineering or synchronization with a live database. (Bug #55502) The second attempt to save a read-only model file produced this error: Couldn't backup existing file name-of-the-file.mwb: No such file or directory (Bug #55439) When a table was being edited in the Table Editor, and its name was changed, the name change was not reflected on the Table Editor's table tab. (Bug #55338) It was not possible to add the LOCK TABLES privilege when assigning a new role in the Model Overview because that privilege was missing from the available options. (Bug #55186) The schema collation was not saved after being changed in the Table Editor. (Bug #55152) When an attempt was made to synchronize a model with a live database, no schemata were listed as available in the Synchronize Model with Database wizard. This happened when the name of the schema in the model and the schema on the live server differed only in lettercase. (Bug #55147) When using MySQL Workbench to report a bug, it was not possible to attach a file using the Choose File button because the button had no effect. (Bug #55112) Dumping tables or schemata without the LOCK TABLE privilege produced this error: mysqldump: Got error: 1044: Access denied for user 'wwroot'@'%' to database db' when doing LOCK TABLES (Bug #55019) Selecting Validate (SQL) from the Model menu and then selecting the Validate All option reported no errors. Selecting Forward Engineer from the Database menu and selecting Run Validations also reported no errors. However, executing the SQL script resulted in this error: ERROR: Error 1005: Can't create table 'xxx' (errno:150) (Bug #54985) Selecting the Check Duplicated Identifiers (Additions) operation from the Validation (SQL) submenu of the Model menu produced this error message: Type mismatch: expected object of type db.Schema, but got workbench.physical.Model (Bug #54968) When using the Edit Table Data wizard (launched from Home screen), if a database with a single table was connected to, after selecting the table, the Finish button remained grayed out. (Bug #54942) At startup, these warnings were generated in the Workbench Scripting Shell: Starting Workbench...Registered 147 GRT classes. WARNING: Could not load wb.mysql.validation.grt.dylib: Invalid module /Applications/MySQLWorkbench.app/Contents/PlugIns/wb.mysql.validation.grt.dylib WARNING: Could not load wb.validation.grt.dylib: Invalid module /Applications/MySQLWorkbench.app/Contents/PlugIns/wb.validation.grt.dylib (Bug #54929) When an attempt was made to synchronize a modified exported script with the current model, using File , Export , Synchronize with SQL Create Script , the model was not updated. (Bug #54501) When the Alter Table dialog for an InnoDB table was displayed in an SQL Editor session, the Foreign Key Options Index showed INVALID when a foreign key in the Foreign Keys tab was clicked. (Bug #54471) MySQL Workbench caused Windows XP to reboot if launched from Start , Programs , MySQL , MySQL WorkBench 5.2 OSS . If a MySQL Workbench model file ( .mwb ) was opened directly, an error dialog titled Microsoft Visual C++ Runtime Library was displayed with the message: R6034 An application has made an attempt to load the C runtime library incorrectly. Please contact the application's support team for more information. The dialog's only option was OK . After clicking OK , two more instances of the same dialog were displayed. After clicking OK for all three, MySQL Workbench opened with the model file displayed. On Windows 7 x64, the same runtime error (R6034) occurred. (Bug #52949) Opening an SQL Editor connection for a remote server produced this error: OverviewBE::get_node:invalid node 0.0.0. (Bug #52648) 


c1title: SQL Query Panel
c2content:
 6.7.3. SQL Query Panel 6.7.3. SQL Query Panel In this area, you can enter SQL statements directly. The statements entered can be saved to a file for later use. At any point, you can also execute the statements you have entered. To save a snippet of code entered into the SQL Query panel, click the Save SQL to Snippets List , enter a name, and click OK . The snippet can be inserted into the SQL Query panel at any time by double-clicking the named snippet in the SQL Snippets Palette. Figure 6.7. SQL Editor - SQL Query Panel Note To quickly enter the name of a table, view, or column, double-click the item in the Schemata Palette. The item name will be inserted into the SQL Query panel. 


c1title: PyCrypto License
c2content:
 B.18. PyCrypto License B.18. PyCrypto License The following software may be included in this product: PyCrypto - The Python Cryptography Toolkit =================================================================== Distribute and use freely; there are no restrictions on further dissemination and usage except those imposed by the laws of your country of residence. This software is provided "as is" without warranty of fitness for use or suitability for any purpose, express or implied. Use at your own risk or not at all. =================================================================== Incorporating the code into commercial products is permitted; you do not have to make source available or contribute your changes back (though that would be nice). --amk (www.amk.ca) /********************************************************************\ * FILE: rmd160.c * CONTENTS: A sample C-implementation of the RIPEMD-160 hash-function. * TARGET: any computer with an ANSI C compiler * AUTHOR: Antoon Bosselaers, Dept. Electrical Eng.-ESAT/COSIC * DATE: 1 March 1996 VERSION: 1.0 ********************************************************************** * Copyright (c) Katholieke Universiteit Leuven 1996, All Rights Reserved * The Katholieke Universiteit Leuven makes no representations concerning * either the merchantability of this software or the suitability of this * software for any particular purpose. It is provided "as is" without * express or implied warranty of any kind. These notices must be retained * in any copies of any part of this documentation and/or software. \********************************************************************/ 


c1title: Administrative Roles
c2content:
 8.7.3.1. Administrative Roles 8.7.3.1. Administrative Roles To aid in assigning privileges to MySQL Server users, MySQL Workbench introduces the concept of Administrative Roles. Roles are a quick way of granting a set of privileges to a user, based on the work the user must carry out on the server. It is also possible to assign multiple roles to a user. To assign roles, click the User Account you wish to modify, then click the Administrative Roles tab. Then click the check boxes according to the roles you wish to allocate to the user. After you select a role to a user, you will see the accumulated privileges in the Global Privileges Assigned to User panel. For example, if you select the role BackupAdmin , the privileges granted include EVENT , LOCK TABLES , SELECT , SHOW DATABASES . If you also select the role of ReplicationAdmin , the list of privileges expands to include REPLICATION CLIENT , REPLICATION SLAVE and SUPER . These roles are available: DBA : Grants all privileges MaintenanceAdmin : Grants privileges to maintain the server ProcessAdmin : Grants privileges to monitor and kill user processes UserAdmin : Grants privileges to create users and reset passwords SecurityAdmin : Grants privileges to manage logins and grant and revoke server privileges MonitorAdmin : Grants privileges to monitor the server DBManager : Grants privileges to manage databases DBDesigner : Grants privileges to create and reverse engineer any database schema ReplicationAdmin : Grants privileges to set up and manage replication BackupAdmin : Grants privileges required to back up databases 


c1title: Reverse Engineering Using a Create Script
c2content:
 7.7.9.1. Reverse Engineering Using a Create Script 7.7.9.1. Reverse Engineering Using a Create Script To reverse engineer using a create script, choose the File , Import , Reverse Engineer MySQL Create Script... menu items. This opens a file open dialog box with the default file type set to an SQL script file, a file with the extension sql . You can create a data definition (DDL) script by executing the mysqldump db_name --no-data &gt; script_file.sql command. Using the --no-data option ensures that the script contains only DDL statements. However, if you are working with a script that also contains DML statements you need not remove them; they will be ignored. Note If you plan to redesign a database within MySQL Workbench and then export the changes, be sure to retain a copy of the original DDL script. You will need the original script to create an ALTER script. For more information, see Section 7.7.10.1.2, “Altering a Schema” . Use the --databases option with mysqldump if you wish to create the database as well as all its objects. If there is no CREATE DATABASE db_name statement in your script file, you must import the database objects into an existing schema or, if there is no schema, a new unnamed schema is created. If your script creates a database, MySQL Workbench creates a new physical schemata tab on the MySQL Model page. Any database objects may be imported from a script file in this fashion: tables, views, routines, and routine groups. Any indexes, keys, and constraints are also imported. Objects imported using an SQL script can be manipulated within MySQL Workbench the same as other objects. Before exiting, be sure to save the schema. Choose the File , Save menu item and the reverse-engineered database will be saved as a MySQL Workbench file with the extension mwb . See Section 7.8.1, “Importing a Data Definition SQL Script” , for a tutorial on reverse engineering the sakila database. 


c1title: Changes in MySQL Workbench 5.1.13 (12 June 2009)
c2content:
 A.2.7. Changes in MySQL Workbench 5.1.13 (12 June 2009) A.2.7. Changes in MySQL Workbench 5.1.13 (12 June 2009) This section documents all changes and bug fixes applied since the release of 5.1.12. Bugs Fixed When using the Forward Engineer SQL Script wizard, the SQL Object Export Filter step displayed duplicate items. (Bug #45241) When using the Generate Catalog Diff Report wizard, the Stored Connection information was not automatically populated when a previously defined Stored Connection was selected. (Bug #45234) Adding Insert records for a table worked correctly. However, there was no way to remove the records once the Open Editor facility has been used to add them. (Bug #45233) On Mac OS X, using the Forward Engineer to Database , or Forward Engineer SQL Script wizards caused MySQL Workbench to generate this error message: The application MySQLWorkbench quit unexpectedly after it was relaunched. (Bug #45229) When defining a primary key with a user-defined data type, it was not possible to set the auto-increment (AI) attribute. Clicking the AI check box had no effect. To circumvent this problem it was possible to temporarily change the data type of the column to a built-in data type such as INT , set the AI attribute and then change the data type back to the desired user-defined data type. The model could then be saved. However, if this model was reopened and File , Export , Forward Engineer SQL CREATE Script used to generate a script, MySQL Workbench would crash. (Bug #45165) MySQL Workbench did not limit foreign key name length. This meant that an exported SQL script was invalid and MySQL Server generated an error on attempting to import it: 1059 - ER_TOO_LONG_IDENT (Bug #45139) On Mac OS X, if the mouse pointer was used to select an entity and then Command + Delete was pressed before the tooltip appeared, MySQL Workbench crashed when the delete was confirmed. (Bug #45042) Foreign key names must be unique. However, MySQL Workbench default generated foreign key names were sometimes identical, causing Forward Engineer SQL CREATE Script to fail. (Bug #45027) Synchronization of the model with an external database failed to report errors. This meant there was the possibility of an incomplete synchronization, without the developer being informed. (Bug #45024) Changing a relationship's visibility had no effect. If a relationship was right-clicked in the EER diagram, Edit Relationship selected, and then the Relationship tab selected, the visibility radio buttons were displayed. However, if the visibility settings were changed there was no effect. (Bug #44988) On Ubuntu Linux, MySQL Workbench crashed with a segmentation fault when an attempt was made to save the model. (Bug #44974) On the Linux version of MySQL Workbench it was not possible to rename a layer by double-clicking it in the Layers window (which is typically docked to the right hand side of the screen). A layer editor has now been added to the Linux version of MySQL Workbench. This can be activated by double-clicking the layer's title. (Bug #44972) It was not possible to rename a table created using Add Table , by copying text into its text field. (Bug #44913) In the Flags box, which is located in the Column Details panel in the Table Editor , the same flags were not listed as available for both the INT and INTEGER data types. INT has both UNSIGNED and ZEROFILL listed, but these were not listed for the column if it was of type INTEGER . Also, the AI check box was not selectable for columns defined as INTEGER . (Bug #44872) Using the Foreign Keys tab of the Table Editor , it was not possible to correctly create multiple foreign key relationships. (Bug #44701) MySQL Workbench appeared not to display table rows in an EER diagram for tables that had more than 20 columns. MySQL Workbench now includes the ability to manually resize the table, besides automatically limiting the number of columns to a user selectable value, by order of appearance, regardless of being key columns or not. (Bug #44675) On Debian Linux (Lenny), after adding a second table and selecting AI on the first column element, MySQL Workbench generated a segmentation fault. (Bug #44612) In the Workbench Preferences dialog, on the Diagram tab, in the Tables panel, the check boxes Show Column Types and Show Column Flags did not work correctly. Selecting or deselecting Show Column Types only had an effect when MySQL Workbench was restarted. Selecting Show Column Flags had no effect at all, and the flags were never displayed. (Bug #44586) When in the Columns tab of the Table Editor , if an attempt was made to change a column data type to INTEGER(n) this would have no effect and the column data type would remain unchanged. However, if INT(n) was entered this was accepted and the data type changed accordingly. (Bug #44552) When a new index was created in the Indexes tab for a table that already had indexes, the previously displayed index field remained selected. This caused concern that the newly created index would be on the wrong field. (Bug #44532) The Forward Engineer SQL Script wizard did not permit the SQL script text to be copied using the keyboard shortcut. Only the mouse could be used to select and copy the text. (Bug #44531) On Ubuntu Linux, the following MySQL Workbench menu items did not work: Page Setup , Print Preview and Print . If those menu items were selected, these console messages were generated: ** Message: item_activated: 0xaa44bf0 -&gt; 'builtin:wb.page_setup' ** Message: show_progress_becb not implemented ** Message: unhandled message 4: wb.print.setup finished in 0,00s ** Message: show_progress_becb not implemented create font Helvetica 0 0 11,000000 (200)** Message: item_activated: 0xa4c9800 -&gt; 'plugin:wb.print.printPreview' ** Message: show_progress_becb not implemented ** (mysql-workbench-bin:11732): WARNING **: Could not open editor shared object '/usr/lib/mysql-workbench/plugins/' ** Message: unhandled message 4: wb.print.printPreview finished in 0,00s ** Message: show_progress_becb not implemented ** Message: item_activated: 0xa4cec08 -&gt; 'plugin:wb.print.print' ** Message: show_progress_becb not implemented ** Message: unhandled message 4: wb.print.print finished in 0,00s ** Message: show_progress_becb not implemented create font Helvetica 0 0 11,000000 (300) (Bug #44524) When a Routine Group was renamed, this was not immediately updated in the EER diagram. (Bug #44503) When Workbench:copyToClipboard() was used from within a plugin, only garbage characters were copied to the Windows clipboard. This affected the operation of plugins. When a plugin attempted to output the string “ abcdefghijklmnopqrstuvwxyz0123456789!§$%&amp;/()= ” a runtime exception was generated. (Bug #44461) The Forward Engineer SQL Script wizard would write over an existing file without prompting the user for confirmation. (Bug #44437) On Mac OS X, an application window's red close button should contain a solid circle if the current document is unsaved. However, for MySQL Workbench this did not work correctly. Although the circle was initially shown, it was not displayed after subsequent edits to the model. (Bug #44435) When attempting to delete an existing EER diagram, MySQL Workbench crashed. The origin of the diagram seemed to have no bearing on whether the crash occurred because it happened both with diagrams created from reverse engineering and those created independently. (Bug #44407) Deleting or cutting a Relation from an EER diagram crashed MySQL Workbench. (Bug #44340) When Relations were deleted using the Foreign Keys tab, MySQL Workbench intermittently generated an exception: System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt. at System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous) at System.Windows.Forms.Control.Invoke(Delegate method, Object[] args) at System.Windows.Forms.Control.Invoke(Delegate method) at MySQL.GUI.Workbench.Plugins.ObjectEditorPlugin.RefreshFormDataInvoke() at MySQL.Grt.DelegateSlot0&lt;void\,void&gt;.cpp_callback() at sigc.pointer_functor0&lt;void&gt;.()(pointer_functor0&lt;void&gt;* ) at sigc.adaptor_functor&lt;sigc::pointer_functor0&lt;void&gt; &gt;.()(adaptor_functor&lt;sigc::pointer_functor0&lt;void&gt; &gt;* ) at sigc.internal.slot_call0&lt;sigc::pointer_functor0&lt;void&gt;,void&gt;.call_it(slot_rep* rep) at MySQL.Grt.Db.TableEditorBE.remove_fk(NodeId fk) at MySQL.GUI.Workbench.Plugins.DbMysqlTableEditor.deleteSelectedFKsToolStripMenuItem_Click(Ob ject sender, EventArgs e) at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e) at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e) at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e) at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e) at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met) at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met) at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea) at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea) at System.Windows.Forms.Control.WmMouseUp(Message&amp; m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message&amp; m) at System.Windows.Forms.ScrollableControl.WndProc(Message&amp; m) at System.Windows.Forms.ToolStrip.WndProc(Message&amp; m) at System.Windows.Forms.ToolStripDropDown.WndProc(Message&amp; m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message&amp; m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message&amp; m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) (Bug #44326) When exiting MySQL Workbench with unsaved changes, you are given the choices Save , Don't Save and Cancel . When Cancel was clicked, MySQL Workbench exited without saving, rather than returning to the application without making any changes. This only happened when clicking the main application Close button, in the upper right corner. It did not happen if the application was exited by selecting File , Exit from the main menu. (Bug #44267) The Copy SQL to Clipboard menu item, which was normally available when right-clicking a table in MySQL Workbench, was not displayed. (Bug #44254) If the order of columns was changed in the Columns tab, this was not reflected in the EER diagram. (Bug #44240) In the table editor the VARBINARY data type was not listed in the list for columns. (Bug #44023) In the table editor, when a column was added with a data type of TIMESTAMP , and the default value of 0 entered, MySQL Workbench erroneously added quotation marks around the 0. Any generated SQL script therefore contained errors, and would subsequently fail. (Bug #44006) The Forward Engineer SQL Script wizard did not emit table INSERT statements in the generated script when requested to do so. (Bug #43799, Bug #44385) When synchronizing a model with a database, using the Synchronize Model with Database wizard, the data type translation resulted in errors. (Bug #42728) Omit Schema Qualifiers did not omit schema for foreign keys. When using File , Export , Forward Engineer SQL CREATE Script and selecting the Omit Schema Qualifiers check box, the schema for foreign keys were not omitted. (Bug #42328) When editing a column's type in the Columns tab of the Table Editor , the list for selecting the data type displayed BOOL . However, once that had been selected the data type was displayed as BOOLEAN . Further, if a column data type was set by entering INTEGER in the Datatype column, it then changed to INT on pressing return. (Bug #41934) MySQL Workbench frequently crashed with an unknown exception in Wb.h at line 1010. This occurred while working on tables within EER diagrams on a design consisting of more than 190 tables and 20 EER diagrams. (Bug #41325) Invisible characters in a reverse engineered script caused errors to be generated when the same script was forward engineered. The problem was due to the reverse engineered script containing a mixture of \n, \r and \r\n line endings. These are now normalized to \n in the reverse engneering code. The validation process now also checks SQL code objects to ensure valid line endings. (Bug #41254) When working in the Routines tab of the Routine Group editor, the Routine tab did not appear to save changes to routine code. If code was copied from an external application into the Routine tab, then the model saved and MySQL Workbench exited, then on restarting MySQL Workbench, any changes to the routine code were lost. (Bug #40885) When trying to synchronize a model to a database, tables defining some columns as FLOAT or DOUBLE prevented the synchronization SQL script from working. The SQL generated used the syntax FLOAT(256) or DOUBLE(256) which was rejected by MySQL Server 5.0.51a. Editing the generated script manually to use just FLOAT or DOUBLE worked. However, MySQL Workbench then assumed the target table was not correctly synchronized, and prompted the user accordingly. (Bug #40169) When a relationship was fully visible in the EER diagram, if the user chose to have it drawn split, or hidden, MySQL Workbench behaved as expected. However, if the relationship was hidden, and the user chose to have it drawn split, or fully visible again, the relationship was not properly redrawn. The user had to move either of the tables involved in the relationship to have the relationship redrawn. (Bug #40015) When editing a foreign key in the Foreign Keys tab of the Table Editor, and then removing the corresponding relationship from the EER Diagram canvas, the Foreign Keys tab remained open and populated, instead of being cleared and closed. (Bug #39478) When tables with relationship connectors were dragged or copied from one EER diagram to another, the connectors were not always drawn. (Bug #38545) 


c1title: Model Editor
c2content:
 7.5. Model Editor 7.5. Model Editor 7.5.1. Modeling Menus 7.5.2. The Toolbar 7.5.3. EER Diagrams 7.5.4. The Physical Schemata Panel 7.5.5. The Schema Privileges Panel 7.5.6. The SQL Scripts Panel 7.5.7. The Model Notes Panel 7.5.8. The History Palette 7.5.9. The Model Navigator Panel 7.5.10. The Catalog Tree Palette 7.5.11. The Layers Palette 7.5.12. The Properties Palette When the Model Editor is executed from the Home window, MySQL Workbench displays the MySQL Model page. The MySQL Model page has three main panels, as shown in the following screenshot: Description Editor, User Types List/History panel, and Model Overview. Figure 7.1. The MySQL Model Page The Description Editor and User Types List/History panel are contained within the Sidebar. The Sidebar is located on the left by default, but can be relocated to the right using a setting in the Workbench Preferences dialog. The Model Overview panel has several sections: EER Diagrams Physical Schemata Schema Privileges SQL Scripts Model Notes For each of these sections, add objects to a project by clicking the appropriate add-object icon. You may also rename, edit, cut, copy, or delete objects on this page by right-clicking to open a pop-up menu. The following sections further discuss the MySQL Model page. 


c1title: The Properties Palette
c2content:
 7.5.12. The Properties Palette 7.5.12. The Properties Palette The Properties palette is used to display and edit the properties of objects on an EER diagram. It is especially useful for editing display objects such as layers and notes. All objects except connections have the following properties except as noted: color : The color accent of the object, displayed as a hexadecimal value. Change the color of the object by changing this value. Only characters that are legal for hexadecimal values may be entered. You can also change the color by clicking the ... button to open a color changer dialog box. description : Applicable to layers only. A means of documenting the purpose of a layer. expanded : This attribute applies to objects such as tables that can be expanded to show columns, indexes, and triggers. height : The height of the object. Depending upon the object, this property may be read only or read/write. left : The number of pixels from the object to the left side of the canvas. locked : Whether the object is locked. The value for this attribute is either true or false . manualSizing : Whether the object has been manually sized. The value for this attribute is either true or false . name : The name of the object. top : The number of pixels from the object to the top of the canvas. visible : Whether the object shows up on the canvas. Use ‘1’ for true and ‘0’ for false. It is currently used only for relationships. width : The width of the object. Depending upon the object, this property may be read only or read/write. Tables have the following additional properties: indexesExpanded : Whether indexes are displayed when a table is placed on the canvas. Use ‘1’ for true and ‘0’ for false. triggersExpanded : Whether triggers are displayed when a table is placed on the canvas. Use ‘1’ for true and ‘0’ for false. For a discussion of connection properties, see Section 7.7.2.3, “Connection Properties” . 


c1title: Changes in Release 5.0
c2content:
 A.3. Changes in Release 5.0 A.3. Changes in Release 5.0 A.3.1. Changes in MySQL Workbench 5.0.30 (18 February 2009) A.3.2. Changes in MySQL Workbench 5.0.29 (12 December 2008) A.3.3. Changes in MySQL Workbench 5.0.28 (06 December 2008) A.3.4. Changes in MySQL Workbench 5.0.27 (07 November 2008) A.3.5. Changes in MySQL Workbench 5.0.26 (16 October 2008) A.3.6. Changes in MySQL Workbench 5.0.25 (12 September 2008) A.3.7. Changes in MySQL Workbench 5.0.24 (12 August 2008) A.3.8. Changes in MySQL Workbench 5.0.23 (25 June 2008) A.3.9. Changes in MySQL Workbench 5.0.22 (27 May 2008) A.3.10. Changes in MySQL Workbench 5.0.21 (27 April 2008) A.3.11. Changes in MySQL Workbench 5.0.20 (26 April 2008) A.3.12. Changes in MySQL Workbench 5.0.19 (15 April 2008) A.3.13. Changes in MySQL Workbench 5.0.18rc (not released) A.3.14. Changes in MySQL Workbench 5.0.17rc (07 April 2008) A.3.15. Changes in MySQL Workbench 5.0.16rc (26 March 2008) A.3.16. Changes in MySQL Workbench 5.0.15rc (17 March 2008) A.3.17. Changes in MySQL Workbench 5.0.14abeta (28 February 2008) A.3.18. Changes in MySQL Workbench 5.0.14beta (25 February 2008) 


c1title: The Startup Tab
c2content:
 8.7.1. The Startup Tab 8.7.1. The Startup Tab The Startup tab has several purposes: To display database server status To start up and shut down the server To display the Startup Message log To select whether the server starts when the system starts Figure 8.4. Administrator - Startup Tab 


c1title: Changes in Release 5.1
c2content:
 A.2. Changes in Release 5.1 A.2. Changes in Release 5.1 A.2.1. Changes in MySQL Workbench 5.1.19 (06 September 2010) A.2.2. Changes in MySQL Workbench 5.1.18 (03 September 2009 General Availability) A.2.3. Changes in MySQL Workbench 5.1.17 (14 August 2009) A.2.4. Changes in MySQL Workbench 5.1.16 (30 June 2009 General Availability) A.2.5. Changes in MySQL Workbench 5.1.15 (26 June 2009) A.2.6. Changes in MySQL Workbench 5.1.14 (19 June 2009) A.2.7. Changes in MySQL Workbench 5.1.13 (12 June 2009) A.2.8. Changes in MySQL Workbench 5.1.12 (27 April 2009) A.2.9. Changes in MySQL Workbench 5.1.11 (Not yet released) A.2.10. Changes in MySQL Workbench 5.1.10 (10 April 2009) A.2.11. Changes in MySQL Workbench 5.1.9 (Not yet released Beta) A.2.12. Changes in MySQL Workbench 5.1.8 (Not yet released) A.2.13. Changes in MySQL Workbench 5.1.7 (Not yet released) A.2.14. Changes in MySQL Workbench 5.1.6 (Not yet released) A.2.15. Changes in MySQL Workbench 5.1.4 (Not yet released) 


c1title: The Data Dump Tab
c2content:
 8.7.6. The Data Dump Tab 8.7.6. The Data Dump Tab 8.7.6.1. Export to Disk 8.7.6.2. Import from Disk 8.7.6.3. Advanced Export Options The Import/Export Server Data tab enables you to create a dump file, or restore data from a dump file. Clicking the Import/Export Server Data action item launches a new Admin page, at the Data Dump tab. Within the Data Dump tab are three further tabbed windows: Export to Disk Import from Disk Advanced Options 


c1title: Reverse Engineering a Live Database
c2content:
 7.7.9.2. Reverse Engineering a Live Database 7.7.9.2. Reverse Engineering a Live Database 7.7.9.2.1. Errors During Reverse Engineering To reverse engineer a live database, choose the Database , Reverse Engineer... menu item from the main menu. This opens the Reverse Engineer Database wizard. Figure 7.14. Reverse Engineer Database Wizard The first page of the wizard enables you to set up a connection to the live database you wish to reverse engineer. You can set up a new connection or select a previously created stored connection. Typical information required for the connection includes host name, user name and password. After this information has been entered, or you have selected a stored connection, click the Next button to proceed to the next page. Figure 7.15. Connect to DBMS Review the displayed information to make sure that the connection did not generate errors, then click Next . The next page displays the schemata available on the server. Click the check box or check boxes for any schemata you wish to process. Figure 7.16. Select Schemata After you have selected the desired schemata, click the Next button to continue. The wizard then displays the tasks it carried out and summarizes the results of the operation. Figure 7.17. Retrieve Object Information Review the results before clicking Next to continue. The next page is the Select Objects page. It has a section for each object type present in the schema (tables, views, routines, and so forth). This page is of special interest if you do not wish to import all the objects from the existing database. It gives you the option of filtering which objects are imported. Each section has a Show Filter button. Click this button if you do not want to import all the objects of a specific type. Figure 7.18. Select Objects For the Import MySQL Table Objects section, if you click the Show Filter button, the following page is displayed. Figure 7.19. Show Filter This page enables you to select specific tables for import. Having selected the desired tables, you can optionally hide the filter by clicking the Hide Filter button. The other sections, such as MySQL Routine Objects , have similar filters available. Click Execute to continue to the next page. The wizard then imports objects, displaying the tasks that have been carried out and whether the operation was successful. If errors were generated, you can click the Show Logs button to see the nature of the errors. Figure 7.20. Progress Click Next to continue to the next page. The final page of the wizard provides a summary of the reverse engineered objects. Figure 7.21. Results Click Finish to exit the wizard. Before exiting MySQL Workbench be sure to save the schema. Choose the File , Save menu item to save the reverse-engineered database as a MySQL Workbench file with the extension mwb . 7.7.9.2.1. Errors During Reverse Engineering During reverse engineering, the application checks for tables and views that duplicate existing names and disallows duplicate names if necessary. If you attempt to import an object that duplicates the name of an existing object you will be notified with an error message. To see any errors that have occurred during reverse engineering, you can click the button Show Logs . This will create a panel containing a list of messages, including any error messages than may have been generated. Click the Hide Logs button to close the panel. Figure 7.22. Message Log If you wish to import an object with the same name as an existing object, rename the existing object before reverse engineering. If you import objects from more than one schema, there will be a tab in the Physical Schemata section of the MySQL Model page for each schema imported. You cannot reverse engineer a live database that has the same name as an existing schema. If you wish to do this, first rename the existing schema. 


c1title: cURL (libcurl) License
c2content:
 B.6. cURL (libcurl) License B.6. cURL ( libcurl ) License The following software may be included in this product: cURL (libcurl) Use of any of this software is governed by the terms of the license below: COPYRIGHT AND PERMISSION NOTICE Copyright (c) 1996 - 2009, Daniel Stenberg, &lt;daniel@haxx.se&gt;. All rights reserved. Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder. 


c1title: Starting MySQL Workbench
c2content:
 3.3. Starting MySQL Workbench 3.3. Starting MySQL Workbench 3.3.1. Installing MySQL Workbench on Windows 3.3.2. Launching MySQL Workbench on Windows 3.3.3. Uninstalling MySQL Workbench on Windows 3.3.4. Installing MySQL Workbench on Linux 3.3.5. Launching MySQL Workbench on Linux 3.3.6. Uninstalling MySQL Workbench on Linux 3.3.7. Installing MySQL Workbench on Mac OS X 3.3.8. Launching MySQL Workbench on Mac OS X 3.3.9. Uninstalling MySQL Workbench on Mac OS X The procedure for launching MySQL Workbench depends on the platform. Generally, there are two ways to launch MySQL Workbench: either from the command line or from the graphical user interface of the host operating system. Using the command-line launching facility is useful when you want to customize some aspects of the way MySQL Workbench operates. The following sections describe how to launch MySQL Workbench for each of the supported platforms. In addition to platform-specific command-line options, MySQL Workbench has the following command-line options: --admin instance : Load the server instance specified. --query connection : Load the connection specified. --model modelfile : Load the model specified. --script script : Run the script specified. --run code : Run the code snippet specified. --quit-when-done : Quits MySQL Workbench after --script or --run finishes. 


c1title: Changes in MySQL Workbench 5.0.27 (07 November 2008)
c2content:
 A.3.4. Changes in MySQL Workbench 5.0.27 (07 November 2008) A.3.4. Changes in MySQL Workbench 5.0.27 (07 November 2008) This section documents all changes and bug fixes applied since the release of 5.0.26. Functionality Added or Changed There was a problem where relationships that were hidden could then not be selected to bring up their relationship editor. Relationships can now be selected as objects in the Layer window. Once selected, the relationship's visible property can be set to True in the Properties window, thus making the relationship visible again. (Bug #40167) Bugs Fixed When a stored routine was edited, the edit cursor jumped back to the start of the page unless typing was constant. (Bug #40426) When using the Copy Insert to Clipboard menu item the generated SQL code was incorrect. The “ S ” was missing from “ VALUES ” and the data was not included. This resulted in SQL code such as: INSERT INTO `table1` (`table1_id`, `descr`) VALUE (); (Bug #40041) If a trigger was renamed, and the design then synched with a database instance, the generated SQL created a trigger with the new name and then dropped the trigger with the old name. This resulted in this error: Error 1235: This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table' (Bug #39989) The Copy SQL to Clipboard action (right-click menu on table) did not use Windows-compatible line endings. (Bug #39476) When a column had a data type BOOLEAN and it was exported using Forward Engineer SQL ALTER , the exported type was BOOLEAN(2) instead of BOOLEAN . (Bug #39257) Workbench application performance was poor, with slow loading times and excessive memory usage. (Bug #38439) When a DBDesigner model with 333 tables was imported into Workbench the RAM usage went up to approximately 1GB. Workbench then crashed with this exception: Error creating cairo context: out of memory (Bug #37178) 


c1title: The History Palette
c2content:
 7.5.8. The History Palette 7.5.8. The History Palette Use the History palette to review the actions that you have taken. Left-clicking an entry opens a pop-up menu with the item, Copy History Entries to Clipboard . Choose this item to select a single entry. You can select multiple contiguous entries by pressing the Shift key and clicking the entries you wish to copy. Select noncontiguous entries by using the Control key. Only actions that alter the MySQL model or change an EER diagram are captured by the History palette. 


c1title: The SQL Scripts Panel
c2content:
 7.5.6. The SQL Scripts Panel 7.5.6. The SQL Scripts Panel Use the SQL Scripts panel to load and modify SQL scripts. If you created your project from an SQL script and plan to create an ALTER script, you may want to add the original script here, since it will be needed to create an ALTER script. For more information, see Section 7.7.10.1.2, “Altering a Schema” . 


c1title: Changes in MySQL Workbench 5.2.26 (06 August 2010)
c2content:
 A.1.14. Changes in MySQL Workbench 5.2.26 (06 August 2010) A.1.14. Changes in MySQL Workbench 5.2.26 (06 August 2010) This section documents all changes and bug fixes applied since the release of 5.2.25. Functionality Added or Changed When using the MySQL Workbench table properties to add a foreign key, the size of a new foreign key field will now update to match the size of the corresponding primary key. (Bug #55083, Bug #11762482) Added the default value of CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP to context menu of column editor for TIMESTAMP columns. (Bug #54987) Bugs Fixed On the Home screen, the saved connections previously listed in the Workspace were no longer visible. (Bug #55484) When a model was synchronized with a live database, CHAR( N ) columns were always synchronized as CHAR(1) . (Bug #55334) Importing a DBDesigner model caused MySQL Workbench to crash. (Bug #55300) In the Synchronize Model with Database wizard, the list of schemata was not drawn correctly on the Select Schemata page, if Back was clicked from the Fetch Object Info page. (Bug #55174) Complex queries with multiple newlines did not fit well in the Action column of the Output tab of the SQL Editor. This prevented any query error messages from being read. (Bug #55117) In the Reverse Engineer Database wizard, using a pattern mask to filter tables being imported caused a subsequent MySQL Workbench crash. (Bug #55076) In the Administrator, if the MySQL server configuration file was modified to enable skip-innodb , and the server was restarted, InnoDB was still active. (Bug #55030) On the Snippets tab, the tooltip for the Insert selected snippet to cursor position in the active SQL editor button contained the misspelling “ seleced ”. (Bug #55026) The Configuration section of the MySQL Workbench Administrator did not copy configuration variables from the my.cnf file that contained an underscore character. (Bug #54933) MySQL Workbench crashed if minimized while loading a model. (Bug #54918) In the Overview tab of the SQL Editor, if there was a large number of schemata, using the arrow buttons in the interface to scroll through them caused MySQL Workbench to crash, usually on the last schema in the list. (Bug #54891) When using the SQL Editor and issuing a query containing SQL_CALC_FOUND_ROWS and a subsequent FOUND_ROWS() query, FOUND_ROWS() returned zero instead of the number of matching rows without a LIMIT applied. (Bug #54868) MySQL Workbench would not compile on RHEL 5. This was due to the calls to the function set_opacity in library/form/gtk/src/lf_utilities.cpp (line 661) and library/forms/gtk/src/lf_popup.cpp (line 64). The set_opacity function was not available in GTK 2.10. (Bug #54844) Multi-statement syntax did not work in the SQL Editor. If the delimiter was set to a character other than the default semicolon, the SQL Editor should still have recognized semicolon as a valid delimiter for multi-statements, but it did not. (Bug #54831) In the SQL Editor, if a column's comment contained a Chinese word, then in the Object Browser, if the context-sensitive menu item Send to SQL Editor , Create Statement was selected, incomplete script code was sent to the SQL Query tab. (Bug #54822) When a model was forward engineered to a database, insert statements associated with binary data were not present in the generated code. As a result, binary data was not forwarded to the database. (Bug #54680) In an EER Diagram, the circles at each end of a relationship line were drawn in different sizes. (Bug #54663) When forward engineering an SQL ALTER script, the generated code attempted to recreate all foreign keys. (Bug #54363) In forward engineering a model to a database, the PRIMARY index was not reordered correctly when columns were reordered. (Bug #54176) When using su -user instead of sudo , rather than requesting the password of the user for invoking the su command, MySQL Workbench requested the root password and attempted to invoke the sudo command. (Bug #53740) When zooming in and out of the EER Diagram view, MySQL Workbench generated an unknown error. (Bug #52829, Bug #55390) When connecting to a server, MySQL Workbench prompted for a password, even if one had not been set for that account. (Bug #52826) After creating a server instance and double-clicking it on the Home screen, the Administrator took an excessively long time to load (over 10 minutes). (Bug #52530) MySQL Workbench crashed when executing LOAD DATA LOCAL INFILE as a query in the SQL Editor. (Bug #49694) If the Start Server button was clicked twice in MySQL Workbench, the server would stop. (Bug #49588) In the list view of the physical schemata, clicking a list column heading failed to sort the items by that column. (Bug #38863) 


c1title: Local Socket/Pipe Connection
c2content:
 6.6.3. Local Socket/Pipe Connection 6.6.3. Local Socket/Pipe Connection This connection method enables MySQL Workbench to connect to MySQL Server using a socket file (on Unix) or a named pipe (on Windows). Parameters The unique field here is Socket/Pipe Path . Enter the name of the socket or pipe here. If the field is left blank, the default socket or pipe name is used. On Unix, the default socket name is /tmp/mysql.sock . On Microsft Windows, the default pipe name is MySQL . This option can be seen in the following screenshot. Figure 6.3. Manage DB Connections - Socket/Pipe Parameters Advanced The only option available in this tab is Use ANSI quoutes to quote identifiers . This option was discussed in Section 6.6.2, “Standard TCP/IP Connection” . 


c1title: The Password Storage Vault
c2content:
 6.6.1. The Password Storage Vault 6.6.1. The Password Storage Vault The vault provides a convenient secure storage for passwords used to access MySQL servers. By using the vault, you need not enter credentials every time MySQL Workbench attempts to connect to a server. The vault is implemented differently on each platform: Windows : The vault is an encrypted file in the MySQL Workbench data directory. This is where connections.xml and related files are located. The file is encrypted using a Windows API which performs the encryption based on the current user, so only the current user can decrypt it. As a result it is not possible to decrypt the file on any other computer. It is possible to delete the file, in which case all stored passwords are lost, but MySQL Workbench will otherwise perform as expected. You then must re-enter passwords as required. Mac OS X : The vault is implemented using the Mac OS X Secure Keychain. The keychain contents can be viewed using the Keychain Access.app utility. Linux : The vault works by storing passwords using the gnome-keyring daemon, which must be running for password persistency to work. The daemon is automatically started in GNOME desktops, but normally is not in KDE and others. The gnome-keyring daemon can be used for password storage in MySQL Workbench on non-GNOME platforms, but must be started manually. 


c1title: The View Menu
c2content:
 7.5.1.3. The View Menu 7.5.1.3. The View Menu The View menu has these items: Home : Selects the Home window Windows : A submenu with items that provide a means for opening the windows associated with them: Model Navigator : Opens the Model Navigator palette Catalog : Opens the Catalog palette Layers : Opens the Layers palette User Datatypes : Opens the User Datatypes palette Object description : Opens the Description palette Object properties : Opens the Properties palette Undo History : Opens the History palette Advanced Output Window : Displays the console output. The keyboard shortcut for this menu item is Control+F2 . GRT Shell : Opens the GRT shell. For more information about the GRT shell, see Section 9.5, “The Workbench Scripting Shell” . The keyboard shortcut for this menu item is Control+F3 . Reset Window Layout : Resets all windows to their default layout Zoom 100% : The default level of detail of an EER diagram Zoom In : Zooms in on an EER diagram. Zoom Out : Zooms out from an EER diagram. The ability to zoom in on an EER diagram is also available using the slider tool in the Model Navigator palette. See Section 7.5.9, “The Model Navigator Panel” . Set Marker : Bookmarks an object. From the keyboard, select the object you wish to bookmark, then use the key combination Control+Shift and the number of the marker (1 through 9). You may create up to nine markers. Go To Marker : Returns to a marker. From the keyboard, use the Control key and the number of the marker. 


c1title: Changes in MySQL Workbench 5.1.12 (27 April 2009)
c2content:
 A.2.8. Changes in MySQL Workbench 5.1.12 (27 April 2009) A.2.8. Changes in MySQL Workbench 5.1.12 (27 April 2009) This section documents all changes and bug fixes applied since the release of 5.1.11. Bugs Fixed In the Foreign Key tab of the Relationship Editor, the two buttons labeled Edit Table... were inactive. Clicking them had no effect. (Bug #45391) When running on Ubuntu Linux the edit window in MySQL Workbench was not expanded horizontally by default. When editing existing routines, the horizontal scroll-bar covered 100% of the visible area, no matter how long any of the rows are. This meant that if a row expanded outside the visible area, it was not possible to scroll sideways to see the rest of the row. All of the row was there, but the right part was not visible. (Bug #44296) It was not possible to change the Default Collation for any schema. (Bug #44220) 


c1title: Scintilla License
c2content:
 B.20. Scintilla License B.20. Scintilla License The following software may be included in this product: Scintilla License for Scintilla and SciTE Copyright 1998-2003 by Neil Hodgson &lt;neilh@scintilla.org&gt; All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. NEIL HODGSON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL NEIL HODGSON BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. Scintilla includes some files copyright Adobe Systems Incorporated: Copyright (c) 2007 Adobe Systems Incorporated Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ---- Scintilla includes some files copyright Apple Computer, Inc.: Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in consideration of your agreement to the following terms, and your use, installation, modification or redistribution of this Apple software constitutes acceptance of these terms. If you do not agree with these terms, please do not use, install, modify or redistribute this Apple software. In consideration of your agreement to abide by the following terms, and subject to these terms, Apple grants you a personal, non-exclusive license, under Apple's copyrights in this original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the Apple Software, with or without modifications, in source and/or binary forms; provided that if you redistribute the Apple Software in its entirety and without modifications, you must retain this notice and the following text and disclaimers in all such redistributions of the Apple Software. Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to endorse or promote products derived from the Apple Software without specific prior written permission from Apple. Except as expressly stated in this notice, no other rights or licenses, express or implied, are granted by Apple herein, including but not limited to any patent rights that may be infringed by your derivative works or by other works in which the Apple Software may be incorporated. The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN COMBINATION WITH YOUR PRODUCTS. IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Copyright (c) 2002 Apple Computer, Inc., All Rights Reserved 


c1title: Forward Engineering Using an SQL Script
c2content:
 7.7.10.1. Forward Engineering Using an SQL Script 7.7.10.1. Forward Engineering Using an SQL Script 7.7.10.1.1. Creating a Schema 7.7.10.1.2. Altering a Schema To create a script of your database model, choose the Export item from the File menu. You may export a script to alter an existing database or create a new database. The script to create a database is similar to the one created using the mysqldump db_name command. If you choose to create a database, there are several export options available. 7.7.10.1.1. Creating a Schema Select the File , Export , Forward Engineer SQL CREATE Script menu item to start the Forward Engineer SQL Script wizard. The following figure shows the first page of the wizard. Figure 7.23. SQL Export Options The SQL Export Options displays the following facilities: Output SQL Script File To specify the output file name, enter it into the Output SQL Script File field, or use the Browse button to select a file. If this field is left blank, you will be able to view the generated script, but it will not be saved to a file. Generate DROP Statements Before Each CREATE Statement Select this option to generate a statement to drop each object before the statement that creates it. This ensures that any existing instance of each object is removed when the output is executed. Omit Schema Qualifier in Object Names Select this option to generate unqualified object names in SQL statements. Generate Separate CREATE INDEX Statements Select this option to create separate statements for index creation instead of including index definitions in CREATE TABLE statements. Add SHOW WARNINGS after every DDL statement Select this option to add SHOW WARNINGS statements to the output. This causes display of any warnings generated when the output is executed, which may be useful for debugging. Do Not Create Users. Only Export Privileges Select this option to update the privileges of existing users, as opposed to creating new users. Exporting privileges for nonexistent users will result in errors when you execute the CREATE script. Exporting users that already exist will also result in an error. Generate INSERT Statements for Tables Select this option if you have added any rows to a table. For more information about inserting rows, see Section 7.7.1.3.9, “The Inserts Tab” . Clicking Next takes you to the SQL Object Export Filter page where you select the objects you wish to export. Figure 7.24. SQL Object Export Filter Precise control over the objects to export can be fine tuned by clicking the Show Filter button. After the objects to export have been selected, it is possible to reduce the expanded panel by clicking the same button, now labeled Hide Filter . After selecting the objects to export, click the Next button to review the script that has been generated. Figure 7.25. Review Generated Script You may return to the previous page using the Back button. The Finish button saves the script file and exits. You can then use the saved script to create a database. 7.7.10.1.2. Altering a Schema The menu item for altering a schema, Forward Engineer SQL ALTER Script... , is used for updating a database that has been redesigned within MySQL Workbench. Typically, this option is used when the SQL script of a database has been imported into MySQL Workbench and changed, and then you want to create a script that can be run against the database to alter it to reflect the adjusted model. For instructions on importing a DDL script, see Section 7.7.9.1, “Reverse Engineering Using a Create Script” . Select the File , Export , Forward Engineer SQL ALTER Script menu item to start the Forward Engineer an ALTER Script wizard. You will be presented with the first page showing the available options. Figure 7.26. Options This first page enables you to select an SQL script and compare it with the model currently in MySQL Workbench. The difference between the two models will be used to create an alter script that can be used to modify the target schema to match the model held in MySQL Workbench. To view the script generated, rather than saving it to a file, leave the Output File field empty. Note The script selected as the Input File must use full schema qualifiers, such as schema_name.table_name . Otherwise, MySQL Workbench cannot generate a useable alter script. Clicking Next brings you to the Review SQL Script page. Figure 7.27. Script Here you can review and change the alter script that will be generated. Make any changes you wish and, if you are happy with the changes, save the ALTER script to file using the Save to File... button. You can also click the Execute button to tell MySQL Workbench to write the script to the previously specified output file. The generated script can then be used to update the database. 


c1title: Changes in MySQL Workbench 5.1.7 (Not yet released)
c2content:
 A.2.13. Changes in MySQL Workbench 5.1.7 (Not yet released) A.2.13. Changes in MySQL Workbench 5.1.7 (Not yet released) This section documents all changes and bug fixes applied since the release of 5.1.6. Bugs Fixed MySQL Workbench 5.1.7 for Mac OS X crashed at startup. It was looking for libmysqlclient.15 , which was not found in /usr/local/mysql/lib . The error generated was: Process: MySQLWorkbench [14915] Path: /Applications/MySQLWorkbench.app/Contents/MacOS/MySQLWorkbench Identifier: com.sun.MySQLWorkbench Version: ??? (???) Code Type: X86 (Native) Parent Process: launchd [95] Date/Time: 2009-02-02 18:53:52.120 +0100 OS Version: Mac OS X 10.5.6 (9G55) Report Version: 6 Exception Type: EXC_BREAKPOINT (SIGTRAP) Exception Codes: 0x0000000000000002, 0x0000000000000000 Crashed Thread: 0 Dyld Error Message: Library not loaded: /usr/local/mysql/lib/libmysqlclient.15.dylib Referenced from: /Applications/MySQLWorkbench.app/Contents/MacOS/MySQLWorkbench Reason: image not found Note that MySQL was installed, but the specific version of client library required was not present. (Bug #42550) 


c1title: The SQL Editor Tab
c2content:
 5.4.3. The SQL Editor Tab 5.4.3. The SQL Editor Tab This section provides configuration options that affect the SQL Editor functionality in MySQL Workbench. There are three main groups of parameters that can be set here: SQL properties Query Editor Query Results SQL Properties SQL properties that can be set include the SQL_MODE , case sensitivity of identifiers, and the SQL delimiter used. The document property SqlMode defines SQL_MODE for all operations affecting SQL parsing at the document scope. The purpose of this option is to preserve the consistency of SQL statements within the document. The property has the following functions: Sets the SQL_MODE DBMS session variable to the value stored in the SqlMode property of the document when performing reverse engineering, forward engineering, or synchronization operations. Honors the SQL_MODE values defined in SqlMode so that SQL parsing is correct. Only a subset of all possible SQL_MODE values affect the MySQL Workbench SQL parser. These values are: ANSI_QUOTES , HIGH_NOT_PRECEDENCE , IGNORE_SPACE , NO_BACKSLASH_ESCAPES , PIPES_AS_CONCAT . Other values do not affect the MySQL Workbench SQL parser and are ignored. If the value of SqlMode is not set, the default value of the SQL_MODE session variable defined by the server stays unchanged during operations with the server. However, the MySQL Workbench SQL parser behaves as if SQL_MODE is also not set. This may potentially lead to inconsistencies in parsing of SQL statements stored in the document. If you choose to not set the SqlMode property, ensure that the default SQL_MODE variable defined by the server does not contain any values from the following list: ANSI_QUOTES , HIGH_NOT_PRECEDENCE , IGNORE_SPACE , NO_BACKSLASH_ESCAPES , PIPES_AS_CONCAT . The SqlMode property is defined in two locations: globally and at document scope. MySQL Workbench uses the global property to initialize the document property for each new document created. For each document, the property value defined at document scope always has higher priority over the one defined globally. Query Editor The query editor properties that can be set include the following: Show Live Schema Overview : This option enables a simplification of the user interface by removing the Overview tab from the SQL Editor. This is extremely useful if schemata have a large number of tables, or a model has a large number of schemata. In each of these cases, load times would be greatly increased as the tables and schemata are enumerated and drawn. Show Schema Contents in Schema Tree : Enumerating, populating, and drawing large numbers of items can significantly increase loading times. For this reason, this facility can be switched off for models containing large numbers of schemata and tables. Show Metadata Schemata : By default metadata schemata are not displayed. To display them, for example to troubleshoot or check metadata information, select this option. Continue on SQL Script Error : Should an error occur while executing a script, this option causes execution to continue for the remainder of the script. Forbid UPDATE and DELETE statements without a WHERE clause : This option enables the SQL_SAFE_UPDATES option for the sesson, preventing UPDATE and DELETE statements from being executed if a WHERE clause is not present. This can avoid potentially dangerous situations where a statement could accidentally update or delete all rows in a table. Max syntax error count : Large complex scripts can contain many errors. Further, a syntax error early on can lead to many subsequent syntax errors. For these reasons, it is possible to limit the number of errors displayed using this option. The default is 100 error messages. Progress status update interval : When executing long running queries over a slow connection, you may need to increase this value to prevent excess load on the connection. DBMS connection keep-alive interval : When executing long running queries over a slow connection, you may need to increase this value to prevent the connection being lost. Query Results The query results properties that can be set include the following: Limit Rows : Queries can sometimes return an excessive number of rows, which can heavily load the connection, and take time to display in MySQL Workbench. To prevent this, you can set a more moderate value here. Limit Rows Count : Specify the maximum number of result rows to return. Max. Field Value Length to Display : To avoid display problems due to excessive field length, it is possible to set the maximum field length to display (in bytes). Treat BINARY/VARBINARY as non-binary character string : Binary byte string values are not displayed by default in the results grid, but are instead marked as BLOB values. These can then be viewed or edited with the BLOB editor. Nonbinary character string values are displayed in the results grid, and can be edited in the grid cell or using the BLOB editor. If this option is turned on, data truncation may result: Binary byte string values may contain null bytes as part of their valid data, whereas for nonbinary character strings, a null byte terminates the string. Enable Data Changes Commit Wizard : In the SQL Editor, if you edit table data and then click the Applying changes to data button, MySQL Workbench launches a wizard to step you through applying your changes. This gives you a chance to review the SQL that will be applied to the live server to make the requested changes. If this option is deselected, the changes will be applied to the server without the wizard being displayed and without giving you a chance to review the changes that will be made. 


c1title: Adding Data to Your Database
c2content:
 4.3. Adding Data to Your Database 4.3. Adding Data to Your Database In the previous section, you created a model, schema, and table. You also forward engineered your model to the live server. In this section, you will see how you can use MySQL Workbench to add data into your database on the live server. On the Home window, click the link Edit Table Data in the SQL Development area of the Workspace. This launches Edit Table Data wizard. Figure 4.19. Getting Started Tutorial - Edit Table Data In the wizard, select the “ Big Iron Server ” connection from the stored connection list. Click Next . Select the schema, dvd_collection . Select the table to edit, movies . Click Finish . You will see a data grid. This is where you can enter the data for your database. Remember that the movie_id was set to be autoincrement, so you need not enter values directly for this column. In the data grid, enter the movie information shown in the following table. title release_date Gone with the Wind 1939-04-17 The Hound of the Baskervilles 1939-03-31 The Matrix 1999-06-11 Above the Law 1988-04-08 Note Do not modify any values in the movie_id column. Now click the Apply changes to data source button in the toolbar located in the bottom right corner. A list of SQL statements will be displayed. Confirm that you understand the operations to be carried out. Click Apply SQL to apply these changes to the live server. Confirm that the script was executed correctly, then click Finish . View the data grid again and observe that the autoincrement values have been generated. Figure 4.20. Getting Started Tutorial - Edit Data Now you will check that the data really has been applied to the live server. Launch the MySQL Command Line Client. Enter SELECT * FROM movies; to see the data just entered. You can also carry out a similar check from within MySQL Workbench. Click on the Home window tab. Click the link Open Connection to start Querying in the SQL Development section of the Workspace. This will launch the Connect to Database dialog. Select “ Big Iron Server ” from the list. Click OK . A new SQL Editor tab will be displayed. In the SQL Statements area, enter the following code: USE dvd_collection; SELECT * FROM movies; Now click the Execute SQL Script in Connected Server toolbar button. This resembles a small lightning bolt. The SQL Editor will display a new Result tab contain the result of executing the SQL statements. Figure 4.21. Getting Started Tutorial - Results In this section of the tutorial, you have learned how to add data to your database, and also how to execute SQL statements using MySQL Workbench. 


c1title: The Toolbar
c2content:
 7.5.2. The Toolbar 7.5.2. The Toolbar 7.5.2.1. Tool-Specific Toolbar Items The MySQL Workbench toolbar is located immediately below the menu bar. Click the tools in the toolbar to perform the following actions: The new document icon: Creates a new document The folder icon: Opens a MySQL Workbench file ( mwb extension) The save icon: Saves the current MySQL Workbench project The right and left arrows: The left arrow performs an “ Undo ” operation. The right arrow performs a “ Redo ” operation. Other tools appear on the toolbar depending upon the context. 


c1title: The Schema Objects Panel
c2content:
 7.5.4.1. The Schema Objects Panel 7.5.4.1. The Schema Objects Panel The Physical Schemata panel has the following sections: Tables Views Routines Routine Groups Each section contains the specified database objects and an icon used for creating additional objects. Any database objects added to an EER diagram canvas also show up in the Physical Schemata section. For information about adding objects to an EER diagram canvas, see Section 7.6, “EER Diagram Editor” . 


c1title: TinyXML License
c2content:
 B.22. TinyXML License B.22. TinyXML License The following software may be included in this product: TinyXML TinyXML is released under the zlib license: This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. 


c1title: Changes in MySQL Workbench 5.2.21 (12 May 2010 Release Candidate)
c2content:
 A.1.19. Changes in MySQL Workbench 5.2.21 (12 May 2010 Release Candidate) A.1.19. Changes in MySQL Workbench 5.2.21 (12 May 2010 Release Candidate) First release candidate. This section documents all changes and bug fixes applied since the release of 5.2.20. Functionality Added or Changed MySQL Workbench now features a check that compares the mysqldump version on the client and server machines. (Bug #52689) MySQL Workbench now includes the following menu items and keyboard shortcuts: Execute Current Statement , Control+Enter Execute (All or Selection) , Control+Shift+Enter Explain Current Statement , Control+Alt+Enter Explain (All or Selection) , Control+Alt+Shift+Enter The Stop toolbar button and menu item now are automatically enabled and disabled. (Bug #50911) Bugs Fixed Proceeding through the Edit Table Data wizard (launched by the Edit Table Data action item on the Home screen) and clicking Finish to complete the wizard caused MySQL Workbench to crash. (Bug #53511) When forward engineering a model to a database, not all tables were created on the live database. (Bug #53506) Russian characters were not displayed correctly in the SQL Query tab of the SQL Editor. (Bug #53408) It was not possible to give the index name and foreign key name of a column different names. Now renaming an index in MySQL Workbench does not automatically rename a corresponding foreign key. Renaming a foreign key automatically renames the associated index only if the names still match at the time the foreign key is renamed. (Bug #53370) The Edit SQL Script action item on the Home screen failed to load and execute the script. (Bug #53359) If a socket/pipe connection method was used, and the password was stored in the keychain, MySQL Workbench could not connect to the server. (Bug #53355) On Mac OS X, the overlay text for NULL and BLOB fields was missing from the results grid in the SQL editor. This meant that those fields appeared empty if a query was executed that returned a BLOB , such as SELECT SHA1('hello'); . (Bug #53335) Changing the fonts in the Workbench Preferences dialog had no effect on the appearance of MySQL Workbench. (Bug #53321, Bug #49832) In the SQL Editor, if some script text was highlighted, when Control+S was pressed to save the script to a file, only the highlighted text was saved. (Bug #53275) An error was generated when a server was selected from the Import/Export MySQL Data dialog, displayed after clicking the Manage Import/Export action item on the Home screen. (Bug #53271) In the modeler, if a table was double-clicked to open it in the Table Editor, and then, without closing the Table Editor, another table was double-clicked to open it, the Table Editor was rendered as a blank panel. (Bug #53250, Bug #53347) MySQL Workbench crashed after using the Edit SQL Script action item from the Home screen. In the Edit SQL Script wizard, a connection was chosen that did not use a stored password, and then a script selected and the Finish button clicked to exit the wizard. MySQL Workbench subsequently crashed when the requested password was entered into the dialog and the OK clicked. (Bug #53247) In the SQL Editor, if a BLOB field containing an image was loaded into the Viewer, the image was not displayed. (Bug #53245) In the Administrator tab of the Workbench Preferences dialog, the description to the right of the text field Path to mysql Tool was incorrect. (Bug #53201) MySQL Workbench permitted the creation of invalid foreign keys that referenced a column that did not use a PRIMARY KEY or UNIQUE key declaration. MySQL Workbench now filters the list of columns permitted for a referenced foreign key, so that only primary key and indexed columns are listed. (Bug #53136) In the Alter Table dialog of the SQL Editor, it was not possible to create new Foreign Keys. (Bug #53134) If a model was saved using a file name that contained non-English characters, it could not be reopened from the list of existing models on the Home screen. (Bug #53110) In the SQL Editor, if multiple Query tabs were opened so that they used more than the available screen width, it was not possible to move to the tabs that were not visible. MySQL Workbench now includes scroll buttons should the number of tabs exceed the screen width. The scroll buttons make it possible to access non-visible tabs. (Bug #53070) If a model was forward engineered to a database, renamed, and then forward engineered again, the SQL that was generated was erroneous. (Bug #53068) In the Inserts tab of the Table Editor, if characters were entered into an integer column, MySQL Workbench crashed when a new column was selected. (Bug #53066) If a table was copied in the modeler, the copy of the table was renamed. However, foreign key relationships contained within the table were not renamed. (Bug #53020) In the Alter Table dialog of the SQL Editor, if two triggers were created, the second with a bad command, and the error corrected, then when changes were applied, the generated code was incorrect, dropping both triggers. (Bug #52997) It was not possible to increase the font size of text in the SQL Editor. MySQL Workbench has been changed so that fonts set in the Workbench Preferences dialog now also affect the SQL Editor. (Bug #52968) It was not possible to delete a trigger from the Triggers tab in the Alter Table dialog. Even though the trigger code was selected and deleted, and then Apply clicked, the code that was generated did not drop the deleted trigger as expected. (Bug #52955) Synchronize to live database failed when the model contained triggers. (Bug #52939) In the SQL Editor, when the Alter Table context-sensitive menu option was used on a table and changes were made, it was not possible to save them because the dialog reported that no changes to the object had been detected. (Bug #52786) In the SQL Editor, if the table data was edited, attempts to apply the changes did nothing. (Bug #52705) Selecting Plugins , Utilities , Test filters produced an unexpected error: Error calling WbAdmin.openFilterDebugger The Filters Debugger facility can now be accessed in the Manage Server Instances dialog. It is located on the Server Stats sub-tab of the Server Profile tab. (Bug #52655) In the SQL Editor the Find and Replace facility did not appear to function. (Bug #52251) Changes to EER Diagram page size using File , Page Setup were not reflected in the model navigator. (Bug #52077) When editing table data in the SQL Editor, the table would refresh after data was edited in the first column. This meant it was necessary to then scroll to the bottom of the table data to continue editing the record. (Bug #51965) Any columns that contained a comment were marked for change when synchronizing the model with the live database. (Bug #51765) Diagram names containing an ampersand were not displayed correctly in the Model Overview. (Bug #51617) The default Export Directory Path in the Workbench Preferences dialog was given as DriveLetter :\ MyDocumentsPath /dumps . This mixed the '/' and '\' directory separators. Further, the preferred Export Directory Path set in the Workbench Preferences dialog was not reflected in the Export to Disk section of the Data Dump facility in the Administrator. (Bug #51519) In the Alter Table dialog of the SQL Editor, there was no effective way of altering a foreign key. Also, the Column and Referenced Column were not updated when a foreign key was created in the Foreign Keys tab. (Bug #51124, Bug #51262) In trigger code, triggers using the alias new were correctly colored by the syntax highlighter, but triggers using the alias old were not. (Bug #51061) When an EER Diagram layout was set to span multiple pages and then printed, the diagram was printed so small as to be illegible. (Bug #51032) When MySQL Workbench was maximized, it did not fit correctly onto the screen and the title bar was not displayed. (Bug #50975) If the name of a table was changed in the Alter Table dialog and Apply was clicked, the message “ no changes to object were detected ” was received, even though a change had been made. (Bug #50894) In the EER Diagram view, changing the page orientation to landscape using File , Page Setup caused multiple problems in MySQL Workbench. The Navigator orientation did not change, the diagram did not print at the correct size, and MySQL Workbench eventually crashed. (Bug #50861) When the SQL Editor was launched, MySQL Workbench became overloaded, due to a large number of tables (10,000+) in the schema. MySQL Workbench now includes two new options in the Workbench Preferences dialog: Disable Live Schema Overview and Show Schema Names Only in Catalog List . This enables the application to be configured to handle schemata with large numbers of tables. (Bug #50701) The Relationship and Layer editors did not close if the object they were editing was deleted. MySQL Workbench now supports auto-closing of all open editors, should the object being edited be deleted. (Bug #50681) If a PDF is generated of the EER Diagram and the resulting PDF file is viewed in Acrobat Reader, MySQL Workbench crashed if an attempt was made to reprint the diagram (overwriting the file that was currently opened in Acrobat Reader). (Bug #50408) In the User Defined Types dialog (launched using the main menu item Model , User Defined Types ), selection of the UNSIGNED or ZEROFILL check boxes was not reflected in SQL code generated by the Forward Engineer SQL Script wizard. (Bug #50323) If some changes were made in the Table Editor, and the editor was still in edit mode, the active changes in the Table Editor were not saved when the model was saved. (Bug #50006) Using the Compare and Report Differences in Catalogs wizard caused MySQL Workbench to crash. (Bug #49561) Find was always enabled, even in contexts where it had no useful functionality. (Bug #49293) MySQL Workbench permitted setting the auto-increment check box for multiple columns in the Table Editor. (Bug #49278) In the Select Changes to Apply page of the Synchronize Model with Database wizard, if a schema was selected and then any of the Update Model , Ignore , or Update Source buttons was clicked, this change was not applied to child objects of the schema. (Bug #45454) 


c1title: Create EER Model from Existing Database
c2content:
 7.3. Create EER Model from Existing Database 7.3. Create EER Model from Existing Database This action item enables you to create an EER Model from an existing live database. Clicking this action item launches the Reverse Engineer Database. This is a multi-stage wizard that enables you to select a connection to a live server, and select the schema and objects you wish to reverse engineer into your new model. This is a convenient way to see how an existing database is structured. For further information about reverse engineering, see Section 7.7.9.2, “Reverse Engineering a Live Database” . 


c1title: Working with Models
c2content:
 7.7. Working with Models 7.7. Working with Models 7.7.1. Creating Tables 7.7.2. Creating Foreign Key Relationships 7.7.3. Creating Views 7.7.4. Creating Routines and Routine Groups 7.7.5. Creating Layers 7.7.6. Creating Notes 7.7.7. Creating Text Objects 7.7.8. Creating Images 7.7.9. Reverse Engineering 7.7.10. Forward Engineering 


c1title: Main Menu
c2content:
 6.7.1. Main Menu 6.7.1. Main Menu When an SQL Editor tab is selected, the most important items on the main menu bar are the Query and Edit menus. Query Menu The Query menu features the following items: Execute (All or Selection) : Executes all statements in the SQL Query area, or only the selected statements. Execute Current Statement : Executes the current SQL statement. Explain (All or Selection) : Describes all statements, or the selected statement. Explain Current Statement : Describes the current statement. Stop : Stops executing the currently running script. Reconnect to Server : Reconnects to the MySQL server. New Tab : Creates a duplicate of the current SQL Editor tab. Commit Transaction : Commits a database transaction. Rollback Transaction : Rolls back a database transaction. Refresh : Synchronizes with the live server and refreshes views such as the live Overview tabsheet. Commit Result Edits : Commits any changes you have made to the server. Discard Result Edits : Discards any changes you have made. Export Results : Exports result sets to a file. Selecting this option displays the Export Query Results to File dialog. The dialog enables you to select which result set you wish to export, the file format (CSV, HTML, XML), and the name and location of the output file. Then click Export to export the data. Edit Menu The Edit menu features the Format submenu. The Format submenu includes the following menu items that are of importance when in SQL Editor mode: Beautify Query : Reformats the query selected in the query tab and lays it out in nicely indented fashion. UPCASE Keywords : Converts keywords to uppercase in the currently selected query in the query tab. lowercase Keywords : Converts keywords to lowercase in the currently selected query in the query tab. Indent Lines : Indents the lines selected in the query tab. Unindent Lines : Unindents the lines selected in the query tab. Un/Comment Selection : Comments the lines currently selected in the query tab. If the lines are already commented, this operation removes the comments. 


c1title: Launching MySQL Workbench on Windows
c2content:
 3.3.2. Launching MySQL Workbench on Windows 3.3.2. Launching MySQL Workbench on Windows To start MySQL Workbench on Windows, select Start , Programs , MySQL , then select MySQL Workbench. Alternatively, start MySQL Workbench from the command line. To view the available command-line options, issue the command MySQLWorkbench -help | more from the MySQL Workbench installation directory. You will see the following output: MySQL Workbench 5.2.34 SE. (C) 2006-2011 by Oracle Corporation. All rights reserved. Usage: MySQLWorkbench [options] [model file] Options -admin instance .... Open an admin tab to the named server instance at startup -open filename ..... Open the given filename at startup -query server ...... Open a DB query tab to the named server connection at startup -run script ........ Executes the given Workbench script at startup -run-python script . Executes the given Workbench Python script at startup -run-lua script .... Executes the given Workbench Lua script at startup -script scriptfile . Executes the given Workbench script file at startup -quit-when-done .... Quits Workbench once the given script finishes executing -swrendering ....... Force the canvas to use software rendering instead of OpenGL -nologo ............ Do not display the splash screen -log ............... Instruction to save messages (other debug info) to file -verbose (-v) ...... Print verbose output in the GRT Shell -version ........... Print the version information -grtversion ........ Print the GRT version information -help (-h) ......... Print this output The MySQL Workbench help output includes a version number, a usage message, and the option descriptions. Use the -swrendering option if your video card does not support OpenGL 1.5. The -version option can be used to display the MySQL Workbench version number. The -grtversion can be used to display the GRT (Generic RunTime) shell version number. The other options are self-explanatory. Note When using the -help and -version , command-line options that display output to a console window, be sure that you pipe the output through the more command. Otherwise, nothing will be displayed. 


c1title: The Model Tab
c2content:
 5.4.4. The Model Tab 5.4.4. The Model Tab This section provides configuration options that affect the Modeling functionality in MySQL Workbench. Use the When Deleting Physical Model Figures in Diagram section to determine the behavior when deleting objects from the EER diagram canvas. Choose Ask and whenever you delete an object, you will be asked whether you wish to remove the object from an EER diagram only or also from the catalog. The Keep Database Object in Catalog is the safest option. You also have the option of deleting the object from both the EER diagram and the catalog. Note If you choose the Ask option, a confirmation dialog box opens only when you are deleting an object from an EER Diagram. When deleting in the MySQL Model view, there is no confirmation dialog window and the delete action always removes the object from the catalog. There are a variety of ways to delete an object from an EER canvas: using the eraser tool; choosing a pop-up menu item; using the delete key; and by choosing the delete option from the Edit menu. In each case, the action performed by the delete key is determined by the option chosen from the When Deleting Physical Model Figures in Diagram section. Use the Model tab to set the default value for various object names and the primary key data type. The following table shows the object names and their default values. Object Name Default Value Primary Key Column Name id%table% Primary Key Column Type INT Column Name %table%col Column Type VARCHAR(45) Foreign Key Name fk%stable_%dtable% Foreign Key Column Name %table%_%column% ON UPDATE NO ACTION ON DELETE NO ACTION Associative Table Name %stable%_has_%dtable% The Primary Key Column Name Primary Key Column Type , Column Name , and Column Type values are the defaults used by the table editor. The others are the default names used when using the relationship tools on an EER diagram. Within object values items enclosed by percentage signs are variables. Their meanings are as follows: %table% : The table associated with the object %stable% : The source table associated with the object %dtable% : The destination table associated with the object %column% : The column associated with the object Legitimate values for the foreign key update or delete rules are: RESTRICT CASCADE SET NULL NO ACTION (default) For more information about these actions, see Section 7.7.1.3.5, “The Foreign Keys Tab” . 


c1title: Connection Properties
c2content:
 7.7.2.3. Connection Properties 7.7.2.3. Connection Properties Right-click a connection to select it. When a connection is selected, it is highlighted and its properties are displayed in the properties palette. Connection properties are quite different from the properties of other objects. The following list describes them: caption : The name of the connection. By default, the name is the name of the foreign key and the property is centered above the connection line. captionXOffs : The X offset of the caption. captionYOffs : The Y offset of the caption. comment : The comment associated with the relationship. drawSplit : Whether to show the relationship as a continuous line. endCaptionXOffs : The X termination point of the caption offset. endCaptionYOffs : The Y termination point of the caption offset. extraCaption : A secondary caption. By default, this extra caption is centered beneath the connection line. extraCaptionXOffs : The X offset of the secondary caption. extraCaptionYOffs : The Y offset of the secondary caption. mandatory : Whether the entities are mandatory. For more information, see Section 7.7.2.2, “The Relationship Editor” . many : False if the relationship is a one-to-one relationship. middleSegmentOffset : The offset of the middle section of the connector. modelOnly : Set when the connection will not be propagated to the DDL. It is just a logical connection drawn on a diagram. This is used, for example, when drawing MyISAM tables with a visual relationship, but with no foreign keys. name : The name used to identify the connection on the EER Diagram canvas. Note that this is not the name of the foreign key. referredMandatory : Whether the referred entity is mandatory. startCaptionXOffs : The start of the X offset of the caption. startCaptionYOffs : The start of the Y offset of the caption. In most cases, you can change the properties of a relationship using the relationship editor rather than the Properties palette. If you make a relationship invisible by hiding it using the relationship editor's Visibility Settings , and then close the relationship editor, you will no longer be able to select the relationship to bring up its relationship editor. To make the relationship visible again, you must expand the table object relating to the relationship in the Layers palette and select the relationship object. To edit the selected object, right-click it, then select Edit Object . You can then set the Visibility Settings to Fully Visible . The relationship will then be visible in the EER Diagram window. 


c1title: Changes in MySQL Workbench 5.2.31 (08 December 2010)
c2content:
 A.1.9. Changes in MySQL Workbench 5.2.31 (08 December 2010) A.1.9. Changes in MySQL Workbench 5.2.31 (08 December 2010) This section documents all changes and bug fixes applied since the release of 5.2.30. Functionality Added or Changed Edit , Format , Un/Comment Selection was added. (Bug #55278, Bug #11762657) The query execution time was added to the query result status bar. (Bug #53509, Bug #11761054) MySQL Workbench has been changed so that holding the spacebar while in the EER Diagram view temporarily changes the cursor to the hand tool. When the spacebar is released the cursor reverts to the tool that was selected prior to the spacebar having been pressed. (Bug #52331) Bugs Fixed Typing into the Workbench Scripting Shell resulted in an Unexpected Error: MySQL Workbench has encountered a problem. Attempted to read or write protected memory. This is often an indication that other memory is corrupt. (Bug #58832) These query beautifier problems were corrected: When the beautifier was used on a query that performed a join with the USING keyword, the table name was concatenated with that keyword. The beautifier did not recognize the optional AS keyword in table references. When AS was used with a table alias, the beautifier concatenated that keyword and the alias, which caused any references to the original alias to fail. Using the beautifier on a query containing USING resulted in an invalid query being generated. This was due to missing spaces around USING . Using the beautifier on a query resulted in an unhandled exception. If a query was partially selected, and then the beautifier was run, the results were unpredictable. Problems included exceptions, duplicated tokens, and incorrect indentation. When the beautifier was run on code containing several statements, the code was incorrectly formatted. A query containing a CASE keyword was not handled correctly. The beautifier converted certain tokens to uppercase that should not have been converted. When attempting to beautify a CREATE INDEX query, the beautifier removed part of the query. If a query was written in the SQL Query tab, and then highlighted using the cursor, the beautifier failed with an unhandled exception on calls to beautify, uppercase, or lowercase functions. Using the beautifier on a CREATE TABLE statement resulted in an unhandled exception. (Bug #58598, Bug #58569, Bug #58347, Bug #58565, Bug #58359, Bug #58367, Bug #58361, Bug #58360, Bug #58357, Bug #58358, Bug #58356) In the Administrator, monitoring of a remote server did not work. (Bug #58586) In the Administrator, starting or stopping the monitored server produced this error message: Could not stop/start server: expected a character buffer object (Bug #58400) When exporting a record set using the SQL INSERT statements file format, a number of issues were found: The first line contained the executed SELECT statement as a comment but the LIMIT syntax was located in a new line. This resulted in the LIMIT part of the statement not being commented out. Strings following the VALUES keyword were not quoted. The INSERT statements contained the text “ table ” in place of the actual table name. Existing files were overwritten without prompting the user. (Bug #58377, Bug #56950) In the SQL Editor, selecting the default database where the server contained only a single database had no effect. To avoid a “ No database selected ” error, the database had to be selected in a script using the USE statement. (Bug #58274) Autotools were required to be installed locally to build MySQL Workbench from source. (Bug #58263) The MySQL Workbench tarball contained cached Autotools information. (Bug #58261) In the SQL Editor, right-clicking a table name and selecting Alter table did not launch the Alter table dialog as expected. This happened if the table name utilized mixed case letters. (Bug #58223) Results for queries on rows that contained a null byte (\0) were truncated at the null byte character when displayed in the SQL Editor results pane. (Bug #58099) In the SQL Editor, when entering a hex value into an INTEGER column, the hex value was automatically quoted as a string, causing it to be evaluated to 0. (Bug #58045) In the Server Access Management tab of the Administrator no user accounts were displayed. Further, attempting to create a new account resulted in an exception. (Bug #57941) In the Reverse Engineer SQL Script wizard, on the Input and Options page, the button to select the SQL script file had the text “ Brow ” instead of “ Browse ”. (Bug #57929) The commands to arrange objects were not enabled in the EER Diagram view. This rendered it impossible to move objects to the back or bring them to the front. (Bug #57907) When setting the data type of a column to DOUBLE with precision specified, the data type reverted to DOUBLE without the desired precision specifiers. This happened in both the Table Editor and the SQL Editor. (Bug #57865) In the Columns tab of the Table Editor, double-clicking to edit or add a new column caused the window to scroll to the top. (Bug #57793) An error message contained a spelling mistake: Line 437 of .\backend\wbprivate\workbench\wb_context_ui_home.cpp: std::string msg = strfmt("Error in sercurityManager module: %s",err.what()); (Bug #57684) In the SQL Editor tab of the Workbench Preferences dialog, if the OK button was not clicked centrally, it was possible to accidentally select or deselect one of the options Treat BINARY/VARBINARY as nonbinary character string or Enable Data Changes Commit Wizard . (Bug #57669) For a column of type TIMESTAMP , the menu items Default CURRENT_TIMESTAMP and Default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP in the context-sensitive menu of the Columns tab of the Table Editor were grayed out. This occurred where a preceding column of type TIMESTAMP was allocated an explicit default value. MySQL Workbench should not have prevented setting a value using the context-sensitive menu for the second defined column in this case. (Bug #57665) A script file that was converted to the cp850 character set was truncated on loading into the SQL Editor. (Bug #57636) The forward engineering process generated SQL code that quoted boolean values, causing incorrect cast values. When a table contained the logical BOOLEAN type for a field it was converted to TINYINT(1) as expected. However, the values that were supplied for any inserts were quoted, as in this example: INSERT INTO mytable (id,flag) VALUES (NULL,'TRUE'); (Bug #57545) The SQL Editor generated these errors if a query ran longer than 30 seconds: Error Code: 2013 Lost connection to MySQL server during query Error Code: 2006 MySQL server has gone away (Bug #57449) Clicking the Configuration tab in the Administrator produced this error: Error Opening Configuration File Exception: Internal error. File data passed is not in expected format. This is a bug, we would appreciate if you file a bug report at http://bugs.mysql.com. (Bug #57418) ENUM values entered into the Inserts Editor were not automatically quoted. (Bug #57399) On the Select Object page of the Reverse Engineer Database dialog, the panels displayed when Show Filter was clicked did not resize correctly when Hide Filter was clicked. (Bug #57376) Forward engineering a model failed with a duplicate column name error when the EER diagram contained a view consisting of tables joined using the JOIN ... USING syntax. (Bug #57329) In the Administrator, attempting to add an account with a login name longer than 16 characters resulted in an exception. (Bug #57300) The MySQL configuration file could not be accessed during MySQL Workbench installation. (Bug #56987) When the MySQL service was set to manual in MySQL Workbench, the service was displayed as running in the server status panel, even though the service had not yet been started. (Bug #56919) When creating a new server instance, this error occurred when testing the settings: Operation failed: File doesn't exist (Bug #56911) Find and Find and replace did not work in the SQL Query tab. (Bug #56898) Backups dumped to a project folder (file per table) were restored in no particular order. This made it difficult to resume a problematic restore at a specific point. (Bug #56897) Creating a many-to-many relationship between two tables resulted in only one index being generated. (Bug #56613) MySQL Workbench crashed when a snippet in the snippet list was right-clicked. (Bug #56588) When saving over a read-only file, MySQL Workbench changed the file permissions to read/write. (Bug #56403) In the Role Editor, the “ Drag object from the catalog tree to assign privileges ” text label was out of date. The label should have read “ Drag objects from Physical Schemata section to assign privileges ”. (Bug #56321) If the Table Editor was resized, it returned to the default size when switching between tables to be edited. (Bug #56314) After the computer woke from the sleep state, MySQL Workbench attempted to reconnect to a connection that had previously been closed in the SQL Editor. (Bug #56302) In the Reverse Engineer Database wizard, the ability to select the default schema on the Connection Options page was superfluous. (Bug #56179) In the Connections tab of the Administrator, scrolling did not work correctly with large numbers of connections. (Bug #56144) When multiple tabs were open in the Administrator, with each connected to a different server, and with export of a database was set up in each, running an export operation resulted in errors. This occurred because MySQL Workbench attempted to export a database selected in a tab other than the currently selected one. (Bug #56113) Deleting routine groups from the EER Diagram view did not delete routines. (Bug #56084) If a MWB file was double-clicked to open, but MySQL Workbench was already running, a new instance of MySQL Workbench was launched, rather than opening the file in a new tab in the currently running instance. (Bug #56067) In the SQL Editor, in the Foreign Key tab of the new-table dialog, it was not possible to select any of the foreign key check boxes. (Bug #56024) When objects were double-clicked in the Diagram view, the correct tab was not always switched to in the Object Editor. The Description Editor did however switch to the correct object. (Bug #55994) Close tab functionality failed intermittently. This occurred for attempts to close the tab directly or when using the File , Close tab menu item. (Bug #55901) In the SQL Editor, an out of memory exception occurred when exporting a large record set in the CSV file format. (Bug #55889) In the sidebar of the SQL Editor, when a default schema was selected, other schemas listed in the sidebar were not displayed. (Bug #55864) In the Administrator, most columns were not sortable. For example, in the Connections tab, it was not possible to sort connections based on clicking the columns id, User, Host, DB, Command, Time, State, Info. (Bug #55813) When an EER diagram that was in the background was closed, it was not possible to reopen it. (Bug #55767) If the relationship editor was already open, it was not possible to open it for another relationship without closing it first. (Bug #55708) The PYTHONPATH environment variable from other Python installations interfered with MySQL Workbench. At startup, the error “ cannot open SSH Tunnel Manager ” appeared. Further, it was not possible to use the MySQL Workbench administrative functions. (Bug #55674) In the Column tab of the Table Editor, it was possible to set NULL as the default value for a column that had been specified as NOT NULL . (Bug #55456) In the SQL Editor, it was not possible to create a foreign key relationship between two tables. (Bug #55399) In the Table Editor, if a data type was selected for a column, this was immediately reflected on the EER Diagram view. However, if the selection was reverted by pressing Control+Z , the EER Diagram was not updated to reflect this, and continued to display the original data type. (Bug #55348) In the EER Diagram view, a copied object could not be pasted, if the object had previously been pasted and then edited. (Bug #55336) In the User Defined Data Types Editor, clicking the button to edit the argument list caused the Argument List Editor dialog to be drawn beneath the current dialog. As the dialog with focus could not be accessed, this meant it was not possible to proceed with editing and MySQL Workbench had to be closed. (Bug #55242) The Modified time displayed in the Model Overview was incorrectly set to the current time. (Bug #55237) Selecting a Refresh or Refresh all button or menu item caused the list of tables and views in the sidebar to become empty. (Bug #55214) In the Configuration tab of the Administrator it was not possible to enable or disable the local_infile ( LOAD DATA LOCAL ) option. (Bug #55031) It was not possible to select and copy messages in the Output window of MySQL Workbench. When messages were displayed it was no longer possible to right-click them and select either the Copy Selected Messages to Clipboard or the Clear Output Windows menu items. (Bug #54983) In the Model Overview, if a diagram had a title that wrapped to two lines or more, the second line was truncated due to lack of space in the panel. Now MySQL Workbench includes a scrollbar should the diagram titles not fit within the standard panel. (Bug #54952) Generated INSERT statements did not include quote characters for TEXT or DATE columns. (Bug #54910) In the SQL Editor, when viewing table data where the number of columns was such that some columns were offscreen, if the End key was pressed to go to the last column in the row, the data grid did not scroll accordingly, so the column containing the cursor was not visible without manually scrolling. (Bug #54753) In the Diagram view switching between tables caused erroneous carriage returns to be added to the DDL code in the Triggers tab. (Bug #54411) The error message displayed when the mysqldump version needed updating was not informative enough. (Bug #54209) In the Administrator, system health displayed NO DATA. (Bug #52151) Formatting of view code entered in the View Editor was not retained after synchronization of the model with the server. (Bug #52004) It was not possible to add a comment for a Layer using the Object Editor. MySQL Workbench has been updated so that it is possible to add a comment for a layer using the Object Editor. (Bug #50668) When using the Administrator, the CPU utilization jumped to 50%. (Bug #50578) After printing, the status message displayed included incorrect capitalization. “ Print Diagram done ” should have been displayed as “ Print diagram done ”. (Bug #50035) The schema editor decreased in size by several pixels each time a new schema was edited. (Bug #49425) The SQL Editor did not display the execution times for queries. (Bug #49390) MySQL Workbench permitted an AUTO_INCREMENT column to be assigned a default value in the Table Editor, resulting in invalid DDL being generated. (Bug #49279) The menu option View , Windows , menu item did not appear to have any useful function. (Bug #49056) 


c1title: SQL Editor
c2content:
 6.7. SQL Editor 6.7. SQL Editor 6.7.1. Main Menu 6.7.2. Toolbar 6.7.3. SQL Query Panel 6.7.4. Main Tabsheets 6.7.5. Sidebar MySQL Workbench 5.2 introduced the SQL Editor facility. The SQL Editor can be launched using various action items on the Home window. It can also be launched by selecting Database , Query Database from the main menu, or by using the keyboard shortcut Control+U on Windows, or Command+U on Mac OS X. At this point, you will be asked to either select a stored connection or enter the details for a new connection. After a connection has been made to the server, a new tab called SQL Editor (schema) is displayed. Figure 6.5. SQL Editor The SQL Editor user interface has these main elements: Main Menu Toolbar SQL Query Panel Main Tabsheets (Overview, Output, History, Snippets, Results) Sidebar The following sections describe each of these elements. 


c1title: Modifying a View Using the Properties Palette
c2content:
 7.7.3.4. Modifying a View Using the Properties Palette 7.7.3.4. Modifying a View Using the Properties Palette When you select a view on the EER Diagram canvas, its properties are displayed in the Properties palette. Most of the properties accessible from the Properties palette apply to the appearance of a view on the EER Diagram canvas. For a list of properties accessible through the Properties palette, see Section 7.5.12, “The Properties Palette” . 


c1title: The Community Menu
c2content:
 7.5.1.9. The Community Menu 7.5.1.9. The Community Menu The Community menu has the following items. Use them to go online and learn more about MySQL Workbench. Workbench Blog FAQs About Workbench Learn How To Code For Workbench Discuss Workbench Topics Contribute To Workbench 


c1title: Software Requirements
c2content:
 3.2. Software Requirements 3.2. Software Requirements The following operating systems are officially supported: Apple Mac OS X v10.6.1+ (32-bit/64-bit) Fedora 15 (32-bit/64-bit) Microsoft Windows 7 (32-bit/64-bit) Oracle Linux 6 (32-bit/64-bit) Ubuntu 10.04 LTS (32-bit/64-bit) Ubuntu 11.04 (32-bit/64-bit) MySQL Workbench also has the following general requirements: Note On startup, the application checks the OpenGL version and chooses between software and hardware rendering. To determine which rendering method is being used, open the Help menu and choose the System Info item. Requirements for Linux: The requirements for Linux are embedded within their respective packages. Use the platform specific tool (for example, yum or apt) to install the package and their dependencies. Requirements for Microsoft Windows: Microsoft .NET 4.0 Framework Microsoft Visual C++ 2010 Redistributable Package (x86) Note For convenience, the Windows libraries are available as the download “ Dependencies for Compiling in Windows ”. 


c1title: Changes in MySQL Workbench 5.0.18rc (not released)
c2content:
 A.3.13. Changes in MySQL Workbench 5.0.18rc (not released) A.3.13. Changes in MySQL Workbench 5.0.18rc (not released) This section documents all changes and bug fixes applied since the release of 5.0.17rc. Functionality Added or Changed Foreign key labels could not be hidden, and displayed labels were not centered. There are now options to hide all connection captions, and to center captions. (Bug #30902) Bugs Fixed In the table editor, setting the input focus by clicking the mouse did not work. (Bug #35969) The Reference Column dropdown used during foreign key creation was slow to display. (Bug #35948) In the table editors foreign key Tab, when a column for the foreign key is checked (right pane), the Referenced Column dropdown opens. Pressing Escape at this point caused a crash. (Bug #35926) After changing the Row Format option, closing the table editor and opening a new document caused a crash. (Bug #35925) If a table in an EER Diagram was double-clicked in an attempt to open it for editing in the Table Editor, this error was generated: Cannot load selected plugin(.\db.mysql.editors.wbp.fe.dll::DbMysqlTableEditor) (Bug #35897) Synchronizing the data model with a live database from the SQL Diff Tree dialog resulted in a crash. (Bug #35884) Creating a Schema Diff Report from the local model to a live database caused a crash. (Bug #35878) The Pack Keys option could not be saved. (Bug #35872) Some menus or submenus had items enabled when the corresponding features were disabled. (Bug #35870) The Connection Caption option did not work properly. (Bug #35859) The status of a connection line in a table diagram was not updated when a foreign key relationship between tables was changed. (Bug #35800) The File -&gt; Export -&gt; Export as PNG menu item was enabled under some circumstances in which it should have been disabled. (Bug #35746) Scrolling was slow for table models with large numbers of tables. (Bug #35655) Pressing Control+Z to undo the last change in an SQL Script text box deleted the entire script. (Bug #35649) Workbench is unable to read files such as Workbench Model Files from a non-English directory. (Bug #35547) Workbench permitted table comments to be entered longer than the maximum length of 60 characters. (Bug #34507) A crash could occur during foreign key creation. (Bug #33545) Autoplacing for display of complex schemas has been improved. (Bug #32888) Typing q in the GRT Shell caused a crash. (Bug #32755) 


c1title: The MySQL Tab
c2content:
 5.4.5. The MySQL Tab 5.4.5. The MySQL Tab This enables you to set the default table storage engine. 


c1title: Adding Notes
c2content:
 7.7.6.1. Adding Notes 7.7.6.1. Adding Notes Double-clicking the Add Note icon in the Model Notes section of the MySQL Model page adds a note with the default name of note1 . If a note with this name already exists, the new note is named note2 . Adding a new note automatically opens the note editor docked at the bottom of the application. For information about using the note editor, see Section 7.7.6.2, “The Note Editor” . Right-clicking a note opens a pop-up menu with the following items: Rename Cut ' note_name ' Copy ' note_name ' Delete ' note_name ' The Edit Note... item opens the note editor. For information about using the note editor, see Section 7.7.6.2, “The Note Editor” . The cut and copy items are useful for copying notes between different schemata. Notes can be added only on the MySQL Model page. 


c1title: Changes in MySQL Workbench 5.2.22 (02 June 2010)
c2content:
 A.1.18. Changes in MySQL Workbench 5.2.22 (02 June 2010) A.1.18. Changes in MySQL Workbench 5.2.22 (02 June 2010) This section documents all changes and bug fixes applied since the release of 5.2.21. Functionality Added or Changed On Linux, MySQL Workbench automatically added a .sql extension, where an extension was not specified, to any script file saved from the SQL Editor. MySQL Workbench now does not automatically add a .sql extension on Linux. However, on Windows, the file extension is added if one is not specified. (Bug #53731) MySQL Workbench now indicates that changes need to be saved using only an asterisk in the Model Overview tab, rather than this being reflected on individual EER Diagrams. (Bug #53042) The SQL Editor now includes a new Set as Default Schema context menu item. This is applicable to schema nodes in the Object Browser and the Overview panel of the Query Editor. Previously the only way to change the default schema was to select the schema from the schema selector list located at the top of the Object Browser. (Bug #51479) MySQL Workbench now supports creating a new tab in tabbed interfaces by using Control+T on Windows and Command+T on Mac OS X. (Bug #48798) MySQL Workbench now supports entering of expressions such as DEFAULT or CURRENT_TIMESTAMP into the inserts editor. The expression needs to be preceded by \func . See Section 6.7.4.6, “Live Editing Tabsheets” . (Bug #36206) Bugs Fixed If a property value was changed in the Workbench Preferences dialog, and OK was clicked, or a new tab was clicked before the cursor was moved away from the value being changed, the change was silently reverted. (Bug #54060) If the Manage Server Instances dialog was launched, and either the New or Delete button was clicked, and then the dialog was closed, MySQL Workbench crashed if the New Server Instance action item was then clicked on the Home screen. (Bug #54028) The Gnome keyring package was a dependency of MySQL Workbench. It was undesirable to require its installation on KDE-based systems. (Bug #54010) MySQL Workbench did not size its application window correctly on screen sizes with a 16/9 aspect ratio. (Bug #53984, Bug #11761483) When MySQL Workbench was launched, an overlay was displayed. In the application bar, the dialog prompting for the keyring password was waiting for input, but it was not possible to enter the password because the overlay hid the dialog. (Bug #53974) On the Model Overview page, when a new user object was created with Add User in the Schema privileges section, it was not possible to change any of the user object's attributes. For example, if the name of the object was changed, it would then change back to its original setting. (Bug #53946) In the EER Diagram view, heavy flicker resulted if the cursor was hovered over relationship lines or tables. (Bug #53941) When a table containing triggers was loaded into the Alter Table dialog of SQL Editor, clicking the Triggers tab showed an empty trigger, rather than the correct trigger code. (Bug #53940) In the SQL Editor, performing a query on a remote server returned BLOB values for columns that were not of type BLOB . Because binary byte strings tend to contain null bytes in their values, for safety reasons they were not displayed in the results grid. They could only be viewed or edited by means of the BLOB editor to avoid data truncation. MySQL Workbench now includes a new global option that has been added to the SQL Editor tab of the Workbench Preferences dialog. The option is Treat BINARY/VARBINARY as non-binary character string . By default, it is not selected. (Bug #53920) Attempting to copy objects from an existing diagram to a new diagram resulted in this error: OverviewBE::get_node: invalid node 1.0.0.22 (Bug #53914) In the SQL Editor, the context-sensitive menu options Copy to Clipboard and Send to SQL Editor both failed to work. This applied to both copying in the Object Browser and in the Overview tab. (Bug #53903) In the SQL Editor, deleting a snippet from the snippet list using the toolbar button caused the first snippet to be deleted, regardless of which snippet was selected. (Bug #53860) When forward engineering a schema to a database with the DROP Objects Before Each CREATE Object option selected, the DROP statement used a delimiter before it had been declared. (Bug #53853) In the SQL Editor, if code was entered into the SQL Query tab, and then the application exited, MySQL Workbench did not prompt the user regarding unsaved changes, so they were lost. (Bug #53848) In the SQL Editor, when renaming views or routines using the live editor, the generated ALTER script contained only DROP statements and not CREATE statements. (Bug #53847) In the SQL Editor, when attempting to change an index from INDEX to UNIQUE using the Alter Table dialog, no changes were applied, and this error message was generated: No changes to object were detected (Bug #53787) In the Create Schema dialog of the SQL Editor, when a new schema name was entered, and changes applied, the schema name appeared to revert to the default name new_schema , rather than being changed to the newly specified name. This only happened on Mac OS X. (Bug #53764) In the SQL Editor, if two procedures were defined in a script, each proceded with a suitable DROP statement, then when the script was executed and the procedures already existed, a “ procedure already defined ” error occurred. It appeared that the second DROP statement was being ignored. This problem happened if the line preceding the second DROP statement was terminated with a space. (Bug #53760) With multiple tabs open in the SQL Editor, if the script in each tab was saved to a file in turn, the script was actually saved over the previously saved script, resulting in the loss of that script. (Bug #53733) If multiple SQL Query tabs were opened in the SQL Editor, when a snippet was saved to the snippet list, the snippet saved would always be from the last opened SQL Query tab (the furthest to the right), rather than the currently selected tab. (Bug #53713) In the Columns tab of the Table Editor, automatic data type completion did not occur if the type was entered in lowercase. MySQL Workbench now completes the data type regardless of lettercase. (Bug #53710) Compiling MySQL Workbench from source failed with these errors: ... -I../../library/dbc/src -I../../library/vsqlite++/include -D_FORTIFY_SOURCE=2 -O2 -fno-strict-aliasing -fwrapv -march=x86-64 -gdwarf-2 -g2 -Wextra -Wall -Wno-unused -Wno-deprecated -ggdb3 -DENABLE_DEBUG -MT canvas_floater.o -MD -MP -MF .deps/canvas_floater.Tpo -c -o canvas_floater.o `test -f 'model/canvas_floater.cpp' || echo './'`model/canvas_floater.cpp model/canvas_floater.cpp: In constructor 'wb::Floater::Floater(mdc::Layer*, const std::string&amp;)': model/canvas_floater.cpp:65:59: error: cannot call constructor 'mdc::Color::Color' directly model/canvas_floater.cpp:65:59: error: for a function-style cast, remove the redundant '::Color' make[3]: *** [canvas_floater.o] Error 1 make[3]: Leaving directory `/home/users/Arvenil/rpm/BUILD/mysql-workbench-oss-5.2.21/backend/wbprivate' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/users/Arvenil/rpm/BUILD/mysql-workbench-oss-5.2.21/backend' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/users/Arvenil/rpm/BUILD/mysql-workbench-oss-5.2.21' make: *** [all] Error 2 (Bug #53687) In the Data Dump tab of the Administrator, the Options panel was not rendered correctly. (Bug #53681) In the SQL Editor, if a query was executed and then interrupted, MySQL Workbench hung. (Bug #53652) If a query was entered in the SQL Query tab, and then Command+Enter was immediately pressed to execute the query, the query failed. This only happened on Mac OS X. (Bug #53650) In the Create New Server Instance Profile wizard, on the Operating System page the MySQL Installation Type list was not populated correctly. Although all items were initially correctly displayed, if the Back button was clicked, and then Next clicked to return to the page, all the items in the list were duplicated. Each time this process was repeated the original list items would again be duplicated. (Bug #53649) On the Home screen, the MySQL Team Blog and Workbench Team Blog icons linked to the same page. Further, the MySQL News Letter icon linked to the MySQL Developer forum. (Bug #53628) In the SSH Shell Connection panel of the Manage Server Instances dialog, if any port other than 22 was specified, it was subsequently ignored. (Bug #53623) The MySQL configuration file was corrupted by the Administrator when changes were applied, if the configuration file was not terminated with a new line. (Bug #53620) In the SQL Editor, the toolbar items on the Snippets tab to replace and insert snippets had no effect when clicked. (Bug #53610) Specifying a new font for the SQL Editor's SQL Query tab contents had no affect on appearance. (Bug #53605) In the Data Dump section of the Administrator, this error occurred when an export was generated: mysqldump: Error 2020: Got packet bigger than 'max_allowed_packet' bytes when dumping table 'xxx' at row: 1 This happened only for larger tables. (Bug #53599) MySQL Workbench crashed when attempting to connect to a Linux server using an SSH connection. (Bug #53476) When a model containing a stored procedure was forward engineered to a script, the script contained invalid SQL code. This happened when the DROP Objects Before Each CREATE Statement and Export MySQL Routine Objects options were selected. Problems with the SQL code included a delimiter being used before its definition and also DROP statements not being terminated. (Bug #53467) MySQL Workbench crashed on selection of the Model , Create Diagram from Catalog Objects menu item. (Bug #53454) It was not possible to edit schema properties in the schema editor, such as name and default collation. (Bug #53438) When a model containing a table using a 1:n relationship was synchronized with a live database, the relationship then failed to render in the EER Diagram. (Bug #53252) Loading a large script was loaded into the SQL Editor resulted in an out of memory exception. Memory exhaustion was caused by inefficient end of line conversion. The SQL Editor now supports custom end of line formats and preserves the original line endings used in the file. End of line conversion is no longer used and large files load faster and more efficiently. (Bug #53190) In the Manage DB Connections dialog, selecting Use ANSI quote to quote identifiers had no effect with respect to subsequent queries using that connection. (Bug #53160) Delimiters were erroneously added to trigger code if the currently selected schema was changed. (Bug #53151) In the Triggers tab of the Table Editor , if a trigger was written that contained a DROP TRIGGER statement, the statement was automatically removed. (Bug #53023) MySQL Workbench generated an exception when an attempt was made to change the configuration file in the System Profile tab of the Manage Server Instances dialog. (Bug #52947) In the Alter Table dialog of the SQL Editor, entering a column comment in the Comments tab and applying the changes did not save the comment. (Bug #52893) Setting WB_NO_GNOME_KEYRING=1 on Kubuntu did not appear to disable the Gnome keyring. It was therefore impossible to connect without an active keyring daemon. (Bug #52866) When scrolling in an EER Diagram, MySQL Workbench repeatedly displayed an error dialog containing the message “ OpenGL error: invalid value ”. (Bug #52840) In the Data Dump section of the Administrator, when a schema was dumped to multiple files, the stored routines were not exported. (Bug #52798) It was not possible to set ON UPDATE CURRENT_TIMESTAMP as the default value for a column. (Bug #52350) If a table was dragged from the catalog tree on to the EER Diagram, the catalog tree collapsed. (Bug #51862) In the Connections tab of the Administrator, queries containing a comment did not always display correctly in the Info column. (Bug #51848) Output did not scale correctly for print sizes other than A4. (Bug #51515) When synchronizing to a live database, triggers showed as requiring updating, even when the model and live database were identical. (Bug #51409) If an SQL file saved in Windows file format was loaded into the SQL Editor, it was displayed with additional line breaks, and the SQL code was not interpreted correctly. Further, if code written in the SQL editor was saved to a file and then opened in an editor on Windows, it contained additional line breaks. (Bug #51308) In the Connections tab of the Administrator facility, host names that contained a '-' character were sometimes not displayed correctly. (Bug #51119) In the SQL Editor, if the Add Table facility was used to create a new table with the same name as an existing table, then after changes were applied, the content of both tables was the same as the existing table, and changes unique to the second table were lost. (Bug #51107) Attempts to forward engineer a project that contained a view failed with this error: ERROR: Error 1046: No database selected (Bug #51091) Inserts added to a model and saved on Windows were not visible when that model was loaded on Mac OS X. (Bug #51029) In the SQL Editor, carrying out a SELECT on a table containing more than 1000 columns resulted in the error Too many SQL variables . (Bug #50952) In the Model Overview page, when small icons view was selected, if table names were truncated, there were no tooltips to enable visibility of the full names. The tooltips, however, were present for the large icons view, and the details view. (Bug #50739) MySQL Workbench reported a server as not running, even if it was. The MySQL Server concerned was running on 64-bit Windows 7. (Bug #50585) In the EER Diagram view, it was not possible to paste a copied layer. The paste menu item was disabled in the context-sensitive menu and main menu, and pressing Control+V had no effect. (Bug #50253) In the EER Diagram view, when the diagram was displayed over multiple pages, the gray line dividing pages in the Navigator was not visible in the diagram itself. (Bug #50243) In the EER Diagram view, when zoomed out, a layer could be placed beyond the diagram's perimeter at the bottom right. Further, if a layer was placed beyond the perimeter at the top left, it snapped back within confines of the diagram correctly, but the navigator view was not updated accordingly. (Bug #50242) Zooming out from a diagram in EER Diagram view resulted in severe flicker. (Bug #50240) If a Workbench model file was double-clicked, MySQL Workbench crashed on launch. However, if MySQL Workbench was started using its application icon, and then the same model file was loaded from within MySQL Workbench, no problems were encountered. (Bug #49941) When using Create EER Model from SQL Script from the Home screen, the specified engine type was not present in the resulting EER model. (Bug #49568) 


c1title: The Scripting Menu
c2content:
 7.5.1.8. The Scripting Menu 7.5.1.8. The Scripting Menu The Scripting menu has these items: Scripting Shell : Launches the MySQL Workbench Scripting Shell Run Workbench Script : Executes the specified script Install Plugin/Module File : Loads and installs a plugin or module file 


c1title: The Note Editor
c2content:
 7.7.6.2. The Note Editor 7.7.6.2. The Note Editor To invoke the note editor, double-click a note object in the Model Note section on the MySQL Model page. This opens the note editor docked at the bottom of the application. Double-clicking the note tab undocks the editor. Double-click the title bar to redock it. Any number of notes may be open at the same time. Each additional note appears as a tab at the top of the note editor. Use the editor to change the name of a note or its contents. 


c1title: Creating a Model
c2content:
 4.2. Creating a Model 4.2. Creating a Model In this section, you will learn how to create a new database model, create a table, create an EER Diagram of your model, and then forward engineer your model to the live database server. Start MySQL Workbench. On the Home window, select Create new EER Model . A model can contain multiple schemata. Note that when you create a new model, it contains the mydb schema by default. You can change the name of this schema to serve your own purposes, or delete it. Figure 4.13. Getting Started Tutorial - Home Window On the Physical Schemata toolbar, click the button + to add a new schema. This will create a new schema and display a tabsheet for the schema. In the tabsheet, change the name of the schema to “ dvd_collection ”, by typing into the field called Name . Ensure that this change is reflected on the Physical Schemata tab. Now you are ready to add a table to your schema. If at this stage you receive a message dialog asking to rename all schema occurrences, you can click Yes to apply your name change. Figure 4.14. Getting Started Tutorial - New Schema In the Physical Schemata section, double-click Add Table . Double-click table1 to launch the table editor (you may not have to do this as the table editor will automatically load at this point if you are using later versions of MySQL Workbench). In the table editor, change the name of the table to “ movies ” and press Enter .The table editor will then switch from the Table tab to the Columns tab, to permit you to enter details of your table columns. Change the name of the first column to “ movie_id ”. Select a data type of INT . You will then make this column have the following properties: primary key, not null, autoincrement. Click the PK , NN , and AI check boxes. Add two further columns: Column Name Data Type Column Properties movie_title VARCHAR(45) NN release_date DATE (YYYY-MM-DD) None Figure 4.15. Getting Started Tutorial - Columns Now you can obtain a visual representation of this schema so far. From the main menu, select Model , Create Diagram from Catalog Objects . The EER Diagram will be created and displayed. Figure 4.16. Getting Started Tutorial - EER Diagram In the table editor, change the name of the column “ movie_title ” to “ title ”. Note that the EER Diagram is automatically updated to reflect this change. At this point, you can save your model. Click the main toolbar button Save Model to Current File . You have not yet saved this file so you will be prompted to enter a model file name. For this tutorial, enter “ Home_Media ”. The Home_Media model may contain further schemata in addition to dvd_collection , such as cd_collection . Click Save to save the model. You can synchronize your model with the live database server. First, you must tell MySQL Workbench how to connect to the live server. From the main menu, select Database , Manage Connections... . In the Manage DB Connections dialog, click New . Enter “ Big Iron Server ” for the connection name. This enables you to identify the server to which this connection corresponds, although it is possible to create multiple connections to the same server. Enter the user name for the account you will use to connect to the server. Click on the Store in Vault... button and enter the password for the user name you entered in the previous step. You can optionally ignore this step, and you will be prompted for this password whenever MySQL Workbench connects to the server. Click Test Connection to test your connection parameters. If everything is okay at this point, you can click Close . Figure 4.17. Getting Started Tutorial - Manage Connections You are now ready to forward engineer your model to the live server. From the main menu, select Database , Forward Engineer... . The Forward Engineer to Database wizard will be displayed. The first page of the wizard is the Catalog Validation page. Click the Run Validations button to validate the Catalog. If everything is in order, the wizard will report that validaton finished successfully. Click Next to continue. The Options page of the wizard shows various advanced options. For this tutorial, you can ignore these and simply click Next . On the next page, you can select the object you want to export to the live server. In this case, you only have a table, so no other objects need be selected. Click Next . The next page, Review SQL Script, displays the script that will be run on the live server to create your schema. Review the script to make sure that you understand the operations that will be carried out. Click Next . Figure 4.18. Getting Started Tutorial - Review Script Select the connection you created earlier, “ Big Iron Server ”. Click Execute . Check the messages for any errors, then click Close to exit the wizard. Ensure that the script ran without error on the server, then click Close . As a simple test that the script worked launch the MySQL Command Line Client ( mysql ). Enter SHOW DATABASES; and identify your schema. Enter USE dvd_collection; to select your schema. Now enter SHOW TABLES; . Enter SELECT * FROM movies; , this will return the empty set as you have not yet entered any data into your database. Note that it is possible to use MySQL Workbench to carry out such checks, and you will see how to do this later, but the MySQL Command Line Client has been used here as you have probably used it previously. Ensure that your model is saved. Click Save Model to Current File on the main toolbar. 


c1title: Changes in MySQL Workbench 5.2.29 (12 October 2010)
c2content:
 A.1.11. Changes in MySQL Workbench 5.2.29 (12 October 2010) A.1.11. Changes in MySQL Workbench 5.2.29 (12 October 2010) This section documents all changes and bug fixes applied since the release of 5.2.28. Functionality Added or Changed An open model that has not been saved is now automatically saved after a user-settable period. On loading a model file, MySQL Workbench will notify the user if the file was not previously saved correctly, due to a crash or power failure. MySQL Workbench can then attempt to recover the last auto-saved version. Note that for automatic recovery to be available for a new file, it will have to have been saved by the user at least once. (Bug #56718) Bugs Fixed Security Fix : Bug #57080 was fixed. Clicking the Inserts tab of the Table Editor resulted in the MySQL Workbench Unexpected Error dialog being displayed. (Bug #57346) If an EER diagram was created and then closed, attempting to reopen it caused MySQL Workbench to display an unexpected error dialog. (Bug #57259) In the Model View, MySQL Workbench crashed when the Output tab was reopened after previously being closed. (Bug #57150) Attempting to open the Table Editor in the SQL Editor multiple times for a table that contained no primary key caused MySQL Workbench to crash. (Bug #57139) Changes made to a server instance were not saved. In particular, changing installation type to “ Custom ” was not saved, and changes to the sudo command were also not saved. (Bug #57026) When attempting to open an EER Diagram by double-clicking it in the Model Overview, MySQL Workbench generated this unexpected error: Cannot access a disposed object. Object Name: ModelDiagramForm. (Bug #56963) When synchronizing a model to a live database, if a database was deselected in the wizard, a DROP statement for that database was generated in the SQL code to prevent it from being part of the synchronization process. This caused that database to be dropped from the live database, with corresponding loss of all data. (Bug #56938) In the Alter Table dialog of the SQL Editor, attempting to create a new index in the Index tab was not actioned when the Apply button was clicked. The dialog reported that “ no changes to object were detected ”. (Bug #56906) It was only possible to connect to a MySQL server for administration using an SSH connection. (Bug #56874) Scripts could successfully be executed on the MySQL Server failed to execute in the MySQL Workbench SQL Editor. (Bug #56833) If a table containing a User Defined Type based on VARCHAR was forward engineered, the resulting SQL did not correctly quote the VARCHAR value, resulting in a server error. For example, this code was generated: CREATE TABLE IF NOT EXISTS `x`.`tabley` (`customstring` VARCHAR(10)); INSERT INTO `x`.`tabley` (`id_customstring`) VALUES (example); The correct INSERT statement should be: INSERT INTO `x`.`tabley` (`id_customstring`) VALUES ('example'); (Bug #56710) In the Administrator, clicking the Data Dump tab generated the error Error updating DB: float division and schemata were not displayed. (Bug #56658) In the SQL Editor, if some table data was edited, and then the connection to the server was lost, clicking the Apply changes to data toolbar button caused MySQL Workbench to crash. Now MySQL Workbench shows an error message in the Output tab when a connection is lost. Once the connection is back up, clicking Apply changes to data re-establishes the connection and sends the changes to the server. (Bug #56170) Screen areas in the Administrator did not redraw correctly. It was necessary to move the main window to force a redraw. (Bug #55490) Folding of iteration statement blocks, such as WHILE , REPEAT , and LOOP , did not work correctly in the SQL Editor. The loop end constructs such as END WHILE , END REPEAT , and END LOOP were not recognized as expected. (Bug #55358) If a foreign key was set to RESTRICT for On Delete and On Update on the Foreign Keys tab of the Table Editor, MySQL Workbench generated SQL code to drop and add this key on every subsequent synchronization attempt. (Bug #55155) 


c1title: The Diagram Tab
c2content:
 5.4.6. The Diagram Tab 5.4.6. The Diagram Tab Use this tab to determine display settings for an EER diagram. Select whether to expand new objects by checking the Expand New Objects check box and select whether to draw line crossings by checking the Draw Line Crossings check box. This tab also enables you to set the maximum number of characters for the following items: Column Names Column Types Routine Names Changes to these values change the display properties only, not the objects themselves. 


c1title: VSQLite++ License
c2content:
 B.24. VSQLite++ License B.24. VSQLite++ License The following software may be included in this product: VSQLite++ VSQLite++ - virtuosic bytes SQLite3 C++ wrapper Copyright (c) 2006 Vinzenz Feenstra vinzenz.feenstra@virtuosic-bytes.com All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of virtuosic bytes nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 


c1title: Creating Text Objects
c2content:
 7.7.7. Creating Text Objects 7.7.7. Creating Text Objects 7.7.7.1. Adding Text Objects to an EER Diagram 7.7.7.2. The Text Object Editor Text objects are applicable only to an EER diagram. They can be used for documentation purposes; for example, to explain a grouping of schema objects. They are also useful for creating titles for an EER diagram should you decide to export a diagram as a PDF or PNG file. 


c1title: The Schema Privileges Panel
c2content:
 7.5.5. The Schema Privileges Panel 7.5.5. The Schema Privileges Panel 7.5.5.1. Adding Roles 7.5.5.2. Adding Users The Schema Privileges panel has the following sections, used to create users for your schemata and to define roles —: Users Roles The following image displays the Schema Privileges section of the MySQL Model tab. Figure 7.3. Roles and Privileges 


c1title: Changes in MySQL Workbench 5.2.28 (19 September 2010)
c2content:
 A.1.12. Changes in MySQL Workbench 5.2.28 (19 September 2010) A.1.12. Changes in MySQL Workbench 5.2.28 (19 September 2010) This section documents all changes and bug fixes applied since the release of 5.2.27. Functionality Added or Changed Added the ability to copy column names from result sets to the clipboard. (Bug #53000, Bug #11760578) The SQL Editor now displays the number of rows matched after a query. (Bug #48772) The following command line options have been added to MySQL Workbench: --admin instance : Launch MySQL Workbench and load the specified server instance --query connection : Launch MySQL Workbench and load the specified connection --model modelfile : Launch MySQL Workbench and load the specified model --script script : Launch MySQL Workbench and run the specified script --run code : Launch MySQL Workbench and run the specified code snippet --quit-when-done : Quit MySQL Workbench after --script or --run finishes (Bug #46340) Bugs Fixed Importing an exported file from a network share resulted in this error due to incorrect escaping of the path: 08:44:00 Restoring \\server\d$\file.sql Running: mysql.exe --defaults-extra-file="c:\...\tmp3oc8ig" --host=localhost --user=root --port=3306 --default-character-set=utf8 --comments &lt; "\\\\server\\d\$\\file.sql" The specified path is invalid. (Bug #56735) In the SQL Editor, a crash occurred if User Snippets was selected after another snippet collection had been selected, and then the Replace active SQL Editor contents with selected snippet button was clicked. (Bug #56626) Running a TRUNCATE statement in the SQL editor with safe updates enabled resulted in this error: Error Code: 1175 You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column (Bug #56597) In the Accounts tab of the Administrator, an Unexpected Error occurred if a foreign character was used in the Login Name field of the Server Access Management tab. The same bug also affected the Schema Privileges tab. (Bug #56534) The Table tab of the Table Editor contained a typo in the description for the Name field. Replaced was spelled as “ raplaced ”. (Bug #56518) Attempts to define a foreign key for a table with a composite primary key caused MySQL Workbench to crash. This happened while trying to select the fields of the composite primary key to be associated with the referenced columns. (Bug #56496) If a foreign key was about to be renamed, and the corresponding text field had focus, MySQL Workbench crashed if the model was then closed. (Bug #56315) In the SQL Editor, a statement containing CREATE DATABASE resulted in an unexpected error. (Bug #56295) The mydb database was created by default when reverse engineering from an existing database or script. (Bug #56183) If an SQL script containing international characters was saved in the SQL Editor and then restored, the last character in the restored file was missing. (Bug #56083) In MySQL Workbench list controls, when an item was selected and another item right-clicked, the context-sensitive menu displayed options related to the first list item selected, rather than the current list item being right-clicked, and any action selected was carried out on the first item. (Bug #56077) The Workbench Scripting Shell dialog could be increased in size, but not subsequently reduced in size. (Bug #56049) There were two problems in the new_table dialog of the SQL Editor: When Apply was clicked, in the Apply SQL Script to Database dialog, if Apply SQL was clicked, the SQL would be applied without error. However, if the Back button was clicked and the Apply SQL button clicked again, an error would be generated. If this process was repeated, each time a slightly different error would be added to the list of errors displayed. The Cancel and Finish buttons appeared to have the same functionality, and simply returned the user to the new_table dialog. (Bug #56000) If a model contained two schemata, and an attempt was made to forward engineer only one of the schemata by use of the object filters, data loss could result. This happened because a DROP statement was generated for both schemata in the model, rather than just the one being forward engineered. (Bug #55918) When OpenGL rendering was selected, the EER Diagram area was not redrawn due to faulty OpenGL drivers. The workaround was to launch MySQL Workbench using the -swrendering command line option. Now MySQL Workbench includes an option to select software rendering in the Workbench Preferences dialog. (Bug #55863) In the View Editor, if the name of a view was changed in the code editor to the name of a pre-existing view of that name, the contents of the pre-existing view were replaced by the contents of the new view, even though the new view was created with a different name. (Bug #55661) MySQL Workbench application failed to start on Mac OS X. (Bug #55412) MySQL Workbench exhibited a variety of crashes if, in the Model View, EER diagrams were repeatedly created and deleted. MySQL Workbench also crashed if all objects in the diagram were copied and pasted to the same diagram several times, and then the diagram was deleted. Unexpected errors generated included: Object is currently in use elsewhere Index is outside the bounds of the array Index must be within the bounds of the List (Bug #55304) A plugin that used Mforms generated this error at MySQL Workbench startup: ..... line 16, in &lt;module&gt; import mforms ImportError: No module named mforms (Bug #55243) If the MySQL server configuration file was modified using the Administrator to deactivate InnoDB , the MySQL server failed to restart, and generated this error in the log: [ERROR] C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqld: Error while setting value 'FALSE' to 'innodb' (Bug #55029) It was no longer possible to rename a schema by double-clicking the schema tab in the Physical Schemata section of the Model View. (Bug #55010) If a view was created with correct syntax for an existing schema, and then Model menu, Validate (SQL) was selected, and either Validate All or Check Syntax was selected, this error message was generated in the Output window: Syntax error in view ' view_name '. View code is 'CREATE VIEW ...' (Bug #54969) On Microsoft Windows, MySQL Workbench crashed if the Trebuchet MS font was missing or corrupted. Now MySQL Workbench falls back to a secondary font if the Trebuchet MS font is missing or corrupted. (Bug #54953) If all objects were selected in the model view, and then the Edit Selected menu item was selected, MySQL Workbench generated an unexpected error. (Bug #54695) Added MySQL Server 5.5 support. (Bug #51365, Bug #11759082) On Microsoft Windows, when saving a MySQL configuration file from within the Administrator, Windows displayed the UAC dialog twice. MySQL Workbench has been changed so that Windows now only displays the UAC dialog once. (Bug #49674) 


c1title: HtmlRenderer (System.Drawing.Html)
c2content:
 B.12. HtmlRenderer (System.Drawing.Html) B.12. HtmlRenderer (System.Drawing.Html) The following software may be included in this product: HtmlRenderer (System.Drawing.Html) Copyright (c) 2009, José Manuel Menéndez Poo All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of menendezpoo.com nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 


c1title: Forward Engineering
c2content:
 7.7.10. Forward Engineering 7.7.10. Forward Engineering 7.7.10.1. Forward Engineering Using an SQL Script 7.7.10.2. Forward Engineering to a Live Server 7.7.10.3. Database Synchronization 7.7.10.4. Creating a Catalog Diff Report It is possible to forward engineer a database using an SQL script or by connecting to a live database. 


c1title: Adding Text Objects to an EER Diagram
c2content:
 7.7.7.1. Adding Text Objects to an EER Diagram 7.7.7.1. Adding Text Objects to an EER Diagram To add text objects to an EER Diagram, use the Text Object tool on the vertical toolbar. Make sure that the EER Diagram tab is selected, then right-click the text object icon on the vertical toolbar. The text object icon is the rectangular icon found below the label icon. Clicking the mouse on this icon changes the mouse pointer to a text object pointer. You can also change the mouse pointer to a text object pointer by pressing the N key. Choosing the Text Object tool changes the contents of the toolbar that appears immediately below the menu bar. When the Text Object pointer is active, this toolbar contains a color chart list. Use this list to select the color accent for the new text object. The color of your text object can be changed later using the Properties palette. Create a text object by clicking anywhere on the EER Diagram canvas. This creates a new text object with the default name text1 . To revert to the default mouse pointer, click the arrow icon at the top of the vertical toolbar. Right-clicking a text object opens a pop-up menu. These menu options are identical to the options for other objects. However, since a text object is not a database object, there is no confirmation dialog box when you delete a text object. 


c1title: Customizing DBDoc Model Reporting Templates
c2content:
 7.12. Customizing DBDoc Model Reporting Templates 7.12. Customizing DBDoc Model Reporting Templates 7.12.1. Supported Template Markers 7.12.2. Creating a Custom Template This section provides an overview of creating and modifying DBDoc Model Reporting templates, as used by MySQL Workbench. The MySQL Workbench DBDoc Model Reporting system is based on the Google Template System . This discussion does not attempt to explain the Google Template System in detail. For a useful overview of how the Google Template System works, see the Google document, How To Use the Google Template System . The templates employed by the DBDoc Model Reporting system are text files that contain Markers . These text files are processed by the template system built into MySQL Workbench, and the markers replaced by actual data. The output files are then generated. It is these output files, typically HTML or text, that are then viewed by the user. Markers can be of six types: Template Include Comment Set delimiter Pragma Variable Section start and Section end The last two are the most commonly used in MySQL Workbench templates and these important markers are briefly described in the following sections. Variables The use of variables in the templates is straightforward. Any variables denoted by markers in the template file are replaced by their corresponding data prior to the output file being generated. The mapping between variables and their corresponding data is stored by MySQL Workbench in what is known as a data dictionary. In the data dictionary, the variable name is the key and the variable's corresponding data is the value . The data dictionaries are built by MySQL Workbench and filled with the data contained in the model being processed. By way of example, the following code snippet shows part of a template file: Total number of Schemata: {{SCHEMA_COUNT}} In the generated output file, the variable {{SCHEMA_COUNT}} is replaced by the number of schemata in the model: Total number of Schemata: 2 A variable can appear as many times as required in the template file. Sections Sections are used to perform iteration in the templates. When MySQL Workbench exchanges the variables in a section for data, it does so iteratively, using all data in the data dictionary in which the variable is defined. MySQL Workbench builds the data dictionaries according to the model currently being processed. Consider the following code snippet: {{#SCHEMATA}} Schema: {{SCHEMA_NAME}} {{/SCHEMATA}} In the preceding snippet, the section start and end are indicated by the {{#SCHEMATA}} and {{/SCHEMATA}} markers. When MySQL Workbench processes the template, it notes the section and iterates it until the variable data for {{SCHEMA_NAME}} in the corresponding data dictionary is exhausted. For example, if the model being processed contains two schemata, the output for the section might resemble the following: Schema: Airlines Schema: Airports Data Dictionaries It is important to understand the relationship between sections and data dictionaries in more detail. In a data dictionary the key for a variable is the variable name, a marker. The variable value is the variable's data. The entry for a section in a data dictionary is different. For a section entry in a data dictionary, the key is the section name, the marker. However, the value associated with the key is a list of data dictionaries. In MySQL Workbench each section is usually associated with a data dictionary. You can think of a section as activating its associated dictionary (or dictionaries). When a template is processed, data dictionaries are loaded in a hierarchical pattern, forming a tree of data dictionaries. This is illustrated by the following table. Table 7.1. Data Dictionaries Tree Data Dictionary Loads Data Dictionary MAIN SCHEMATA SCHEMATA TABLES, COLUMNS (Detailed is true), FOREIGN_KEYS (Detailed is true), INDICES (Detailed is true) TABLES REL_LISTING, INDICES_LISTING, COLUMNS_LISTING, TABLE_COMMENT_LISTING, DDL_LISTING COLUMNS_LISTING COLUMNS (Detailed is false) REL_LISTING REL (Detailed is false) INDICES_LISTING INDICES (Detailed is false) The root of the tree is the main dictionary. Additional dictionaries are loaded from the root to form the dictionary tree. Note If a template has no sections, any variables used in the template are looked up in the main dictionary. If a variable is not found in the main dictionary (which can be thought of as associated with the default, or main, section), no data is generated in the output file for that marker. Evaluation of variables The tree structure of the data dictionaries is important with respect to variable evaluation. As variables are defined in data dictionaries, their associated values have meaning only when that particular data dictionary is active, and that means when the section associated with that data dictionary is active. When a variable lookup occurs, the system checks the data dictionary associated with the current section. If the variable value can be found there, the replacement is made. However, if the variable's value is not found in the current data dictionary, the parent data dictionary is checked for the variable's value, and so on up the tree until the main data dictionary, or root, is reached. Suppose that we want to display the names of all columns in a model. Consider the following template as an attempt to achieve this: Report ------ Column Name: {{COLUMN_NAME}} This template produces no output, even for a model that contains many columns. In this example, the only data dictionary active is the main dictionary. However, COLUMN_NAME is stored in the COLUMNS data dictionary, which is associated with the COLUMNS section. With this knowledge, the template can be improved as follows: Report ------ {{#COLUMNS}} Column Name: {{COLUMN_NAME}} {{/COLUMNS}} This still does not produce output. To see why, see Table 7.1, “Data Dictionaries Tree” . The COLUMNS data dictionary has the parent dictionary COLUMNS_LISTING . COLUMNS_LISTING has the parent TABLES , which has the parent SCHEMATA , whose parent is the main dictionary. Remember that for a dictionary to be involved in variable lookup, its associated section must currently be active. To achieve the desired output, the template must be something like the following: Report ------ {{#SCHEMATA}} {{#TABLES}} {{#COLUMNS_LISTING}} {{#COLUMNS}} Column Name: {{COLUMN_NAME}} {{/COLUMNS}} {{/COLUMNS_LISTING}} {{/TABLES}} {{/SCHEMATA}} The following template is the same, but with explanatory comments added: Report ------ {{! Main dictionary active}} {{#SCHEMATA}} {{! SCHEMATA dictionary active}} {{#TABLES}} {{! TABLES dictionary active}} {{#COLUMNS_LISTING}} {{! COLUMNS_LISTING dictionary active}} {{#COLUMNS}} {{! COLUMNS dictionary active}} Column Name: {{COLUMN_NAME}} {{! COLUMN_NAME variable is looked-up, and found, in COLUMNS data dictionary}} {{/COLUMNS}} {{/COLUMNS_LISTING}} {{/TABLES}} {{/SCHEMATA}} Imagine now that for each column name displayed you also wanted to display its corresponding schema name, the template would look like this: Report ------ {{#SCHEMATA}} {{#TABLES}} {{#COLUMNS_LISTING}} {{#COLUMNS}} Schema Name: {{SCHEMA_NAME}} Column Name: {{COLUMN_NAME}} {{/COLUMNS}} {{/COLUMNS_LISTING}} {{/TABLES}} {{/SCHEMATA}} When variable lookup is performed for SCHEMA_NAME , the COLUMNS dictionary is checked. As the variable is not found there the parent dictionary will be checked, COLUMNS_LISTING , and so on, until the variable is eventually found where it is held, in the SCHEMATA dictionary. If there are multiple schemata in the model, the outer section is iterated over a matching number of times, and SCHEMA_NAME accordingly has the correct value on each iteration. It's important to always consider which dictionary must be active (and which parents) for a variable to be evaluated correctly. The following section has a table that helps you identify section requirements. 


c1title: Workbench Preferences
c2content:
 5.4. Workbench Preferences 5.4. Workbench Preferences 5.4.1. The General Tab 5.4.2. The Administrator Tab 5.4.3. The SQL Editor Tab 5.4.4. The Model Tab 5.4.5. The MySQL Tab 5.4.6. The Diagram Tab 5.4.7. The Appearance Tab The Preferences menu sets MySQL Workbench defaults. Choosing this menu item opens the following dialog box. Figure 5.2. The Preferences Dialog Box The preferences dialog box contains the following tabs: General : Configuration of general-purpose options Administrator : Configuration of tools used by the Administrator functionality SQL Editor : Configuration of the SQL Editor Model : Default object names MySQL : Configuration of the default storage engine Diagram : EER diagram settings Appearance : Change colors and fonts used by various Workbench components A more detailed discussion of these options follows. 


c1title: Changes in MySQL Workbench 5.1.10 (10 April 2009)
c2content:
 A.2.10. Changes in MySQL Workbench 5.1.10 (10 April 2009) A.2.10. Changes in MySQL Workbench 5.1.10 (10 April 2009) This section documents all changes and bug fixes applied since the release of 5.1.9. Bugs Fixed It was not possible to edit the cardinality of existing relations using the MAC OS X version of MySQL Workbench. Attempting to change the cardinality using the radio buttons had no effect. For example, it was not possible to change a relation from one-to-many to one-to-one. (Bug #44043) When a nonstandard port was specified in Database , Forward Engineer... , such as 3307, MySQL Workbench still attempted to connect to port 3306. (Bug #44014) When a foreign key was created, a column was selected in the original table, but no column was selected in the foreign table. If the project was saved and an attempt was made to reload it, this error message was generated: Unserializing GRT data - Inserting null value to not null list This error prevented MySQL Workbench from opening the project file, resulting in all model data being inaccessible. (Bug #43997) The name of the table displayed on the tab in the Table Editor did not update when the table name was changed in the editor. (Bug #43960) Data entered using the Inserts tab in the Table Editor was not displayed in the Inserts tab, but was saved to the MWB file when the project was saved. The data could be viewed in MySQL Workbench running on platforms other than Mac OS X, but the Mac OS X version of MySQL Workbench did not display the data entered using the Inserts tab. (Bug #43907) When a plugin was installed using the Tools , Install Plugin/Module File... menu option, MySQL Workbench copied the selected plugin and reported: 'Copied module /Users/tilman/Desktop/SymfonyYmlExport.grt.lua to '/Users/tilman/Library/Application Support/MySQL/Workbench/modules/SymfonyYmlExport.grt.lua' Please restart Workbench for the change to take effect.' When restarted, MySQL Workbench crashed. MySQL Workbench could only be fully restarted by first removing the installed file from the modules directory. (Bug #43906) Soon after MySQL Workbench was launched, error popup dialogs were generated with this message: "AXDocument" attribute unsupported by &lt;some component&gt; This occurred on the Mac OS X version of MySQL Workbench, when a third-party usage monitoring utility was running. This error was due to the fact that custom exception reporting was disabled by default. (Bug #43872) An attempt to edit a table resulted in this error: The plugin db.mysql.editors.mwbplugin does not contain the published object DbMysqlTableEditor This only happened if the project was opened immediately after MySQL Workbench was started. (Bug #43863) If a MySQL Workbench project file was opened, all tabs closed, and then File , New selected, MySQL Workbench crashed with this error message: Unknown exception caught in c:\users\tax\documents\visual studio 2008\projects\wb 5.1\workbench\backend\windows\wbprivate.wr\src\Wb.h at line 994. (Bug #43850) If an attempt was made to use the undo feature after having first saved a project, MySQL Workbench crashed. (Bug #43849) When creating a new 1:n link MySQL Workbench froze. (Bug #43812) Using the Navigator to zoom in and out of an EER diagram view caused MySQL Workbench to crash. (Bug #43782) The Many-to-Many Table generated by MySQL Workbench was of engine type Server Default. It should have been of type InnoDB . (Bug #43776) On opening a diagram the file tables layout was broken. All tables were placed in the top left corner. It appeared that MySQL Workbench stored the diagram layout in the MWB file correctly but it was not retrieved correctly on file load. (Bug #43455) In the EER Diagram view, if the Tables folder was expanded in the Catalog Palette, and then a table dragged onto the EER Diagram, the expanded Tables folder immediately collapsed. (Bug #41922) 


c1title: Changes in MySQL Workbench 5.0.17rc (07 April 2008)
c2content:
 A.3.14. Changes in MySQL Workbench 5.0.17rc (07 April 2008) A.3.14. Changes in MySQL Workbench 5.0.17rc (07 April 2008) This section documents all changes and bug fixes applied since the release of 5.0.16rc. Bugs Fixed Creating a new view and then deleting it caused a System.AccessViolationException . (Bug #35840) Editing a stored procedure within Workbench could cause an exception. (Bug #35828) The modified timestamp for an existing model was not correctly updated for all changes. (Bug #35719) Identifiers for field names in DML SQL statements would not be quoted correctly, permitting reserved words to be included in the SQL statements. (Bug #35710) Workbench would crash repeatedly when drawing the diagram for a table where the referenced column in a foreign key relationship was blank. (Bug #35677) Identifiers using uppercase characters for stored procedures would automatically be modified to lowercase. (Bug #35650) When working with the SQL Script editor, it was not possible to select all the text in the display when using Control+A . (Bug #35646) The Model Navigation window could not be collapsed like other palettes. (Bug #35642) Modifying the primary key index definition for within the table view would not update the entity relationship diagram. (Bug #35639) When validating an existing model using the Forward Engineer Wizard, MySQL-specific validation would fail. (Bug #35604) Deleting an existing layer on a diagram and then editing other objects on the same canvas could generate a number of exceptions, and could corrupt the Workbench file. (Bug #35603) Switching to the Connect to Columns notation with an existing model would cause an exception. (Bug #35601) Data in BLOG and TEXT columns defined using the Inserts tab would not be quoted correctly in the resulting SQL. (Bug #35525) Opening an existing Workbench model with an invalid foreign key definition would cause an exception. (Bug #35501) Moving multiple tables on the same diagram, and then using Undo to revert the model to the original layout, only the first table selected be returned to its original position. (Bug #35465) When adding a foreign key relationship within a catalog with an existing entity relationship diagram, the foreign key relationship is not added to the existing diagram. (Bug #35429) The precise position of individual connections would not be retained when the schema was saved. (Bug #35397) Opening a GRT shell while the table editor is open would raise an exception. (Bug #35349) When modifying an existing foreign key relationship, the generated ALTER script did not reflect the modification. (Bug #35265, Bug #35830) When creating foreign key relationships that point to more than one table, the same foreign key identifier for the same table could be created. This would create invalid SQL code for creating the table. (Bug #35262) When importing an existing DB Designer schema, Workbench could crash. (Bug #35123) Setting up indexes in both the index and foreign key list views, the mouse pointer would dissappear while the entry box was in use. (Bug #35062) Double-clicking the Catalog title bar undocked the GRT Tree window. (Bug #34856) The font for views and routines was not monospace by default. (Bug #34537) When using the Forward Engineer Wizard, if an error occurred, the dialog showing the error detail would be incomplete, and determining the reason for the error would be masked because the end of log message would be hidden. (Bug #34509) When using the Hide Menu Items Not Applicable to this Edition option, a simplified version of the Find dialog box was not available. (Bug #34493) Editing the text of the Trigger portion of an existing schemata would introduce additional text into the Trigger definition. (Bug #34397) Creating more than five stored procedures or views in a model would cause the dialog box for the operation to move to a different layer, making it inaccessible when using the mouse. (Bug #34153) Selecting Export , Forward Engineer ALTER script from the File would open a SQL Script Syncrhronization dialog, rather than export dialog. (Bug #34099) When moving more than layer in Model Navigator, only the first layer's position would be reflected correctly in the output. (Bug #33627) 


c1title: Changes in MySQL Workbench 5.2.9 (Internal release only)
c2content:
 A.1.31. Changes in MySQL Workbench 5.2.9 (Internal release only) A.1.31. Changes in MySQL Workbench 5.2.9 (Internal release only) Internal release. This section documents all changes and bug fixes applied since the release of 5.2.8. Functionality Added or Changed If, while editing data in the Inserts Editor, the ESC key was accidentally pressed, the Inserts Editor would close without warning and all data entered to that point would be lost. The improved Inserts Editor does not display this characteristic. Pressing the ESC key will have no effect. (Bug #48452) Bugs Fixed MySQL Workbench crashed when the Import/Export Server Data Action Item on the Home screen was clicked. (Bug #49064) Clicking the Action Item, Manage Security , on the Home screen generated this exception: Traceback (most recent call last): File "C:\Program Files\MySQL\MySQL Workbench 5.2 OSS/modules\wb_admin_grt.py", line 199, in openSecurityManager tab.wait_server_check(4) File "C:\Program Files\MySQL\MySQL Workbench 5.2 OSS/modules\wb_admin_grt.py", line 95, in wait_server_check while tab.configuration.last_is_running_check is None and time.time() - t &lt; timeout: NameError: global name 'tab' is not defined Further, if this Action Item was clicked again then MySQL Workbench crashed. (Bug #49061) The Forward Engineer SQL Script failed to generate SQL code when the check box Generate INSERT Statements for Tables was selected, and the tables contained rows. (Bug #49046) In the Overview tab of the SQL Editor, representing a “ live ” view of the database currently connected to, if an attempt was made to edit a view, the resulting script generated unnecessary, and in fact dangerous, DROP TABLE statements. This had the potential side-effect that a table that coincidentally had the same name as the view, would be dropped with ensuing data loss. (Bug #49041) In the Configuration tab of the Server Administrator screen, if log file configuration changes were applied, MySQL Workbench hung if the password request dialog was cancelled. (Bug #49037) The Workbench Configuration editor interface contained a backtick character rather than a single apostrophe. (Bug #49014) In the Advanced tab of the Admin screen, the check box SQL Mode had an erroneous file chooser button associated with it. The button should not have been there. (Bug #49012) MySQL Workbench did not parse the following entry in the my.ini file correctly: default-storage-engine=INNODB This resulted in the default storage engine not being detected correctly by MySQL Workbench, although this entry was correctly recognized by the MySQL server. However, MySQL Workbench did parse the following entry correctly, due to the correct capitalization being used: default-storage-engine=InnoDB (Bug #49007) After creating a new Server Instance from the Home screen, then clicking the Logs tab in the Admin screen, this exception was generated: Unhandled Exception: Error executing 'SELECT @@log_output': Unknown system variable 'log_output'; (Bug #49004) Clicking the Action Item Manage Security on the Home screen resulted in MySQL Workbench crashing. (Bug #48990) Any TEXT columns in the Table Editor, or TEXT columns in the SQL Editor results tabsheet, were displayed as BOOLEAN values, either 1 or 0. (Bug #48982) MySQL Workbench crashed on opening a model file. This appeared to be due to MySQL Workbench causing corruption in the model file. (Bug #48891) In the EER Diagram view, the Toggle Grid and Align Objects to Grid toolbar buttons were not rendered correctly when in the selected state. (Bug #48822) The Inserts Editor did not display columns of type ENUM . (Bug #48288) On the Filter Objects page of the Forward Engineer SQL Script wizard, clicking Show Filter , selecting multiple objects from the left panel, and then clicking &gt; , would result in only the first of the selected objects being moved to the right hand panel. (Bug #48116) Working through the Synchronize Model with Database wizard did not result in the live database being updated. (Bug #47953) Using UTF-8 accented characters in the Stored Routine DDL editor caused the DDL parser to raise a syntax error and refuse to save the routine. (Bug #47730) The Forward Engineer SQL Script wizard did not generate the export script. On the Review SQL Script page of the wizard, the review panel was blank. Further, clicking Copy to Clipboard generated this exception: Unknown Exception caught in c:\documents and settings\mysqldev\my documents\visual studio 2008\projects\workbench52\backend\windows\wbprivate.wr\src\Wb.h at line 1085. (Bug #47482) When using the Forward Engineer SQL Script wizard, the script generated for a model containing multiple schemata, only included the CREATE SCHEMA statement for the first schema. (Bug #47202) Running the Forward Engineer an ALTER Script wizard resulted in an ALTER script that dictated changes were required to tables, even in the case where no such changes were necessary. (Bug #47063) Attempting to use Database , Generate Catalog Diff Report resulted in a Segmentation Fault. (Bug #46810) The Forward Engineer SQL Script wizard did not generate correct delimiter syntax for routines. For example, it generated this code: DELIMITER // // CREATE PROCEDURE `sakila`.`film_not_in_stock`(IN p_film_id INT, IN p_store_id INT, OUT p_film_count INT) READS SQL DATA BEGIN SELECT inventory_id FROM inventory WHERE film_id = p_film_id AND store_id = p_store_id AND NOT inventory_in_stock(inventory_id); SELECT FOUND_ROWS() INTO p_film_count; END // // This resulted in errors when an attempt was made to run the generated script on MySQL Server. (Bug #46505) 


c1title: Database Synchronization
c2content:
 7.7.10.3. Database Synchronization 7.7.10.3. Database Synchronization It is possible to synchronize a model in MySQL Workbench with a live database. By default, the synchronization process will change the live database to be the same as the model, but this is configurable during the synchronization process. MySQL Workbench enables control over the direction of synchronization, and which objects to synchronize, in a completely flexible way. You can choose to synchronize only certain tables, enable synchronization to the live database only, enable synchronization from the live database to the model only, or a combination of directions. In effect you have complete control as to whether the synchronization is unidirectional or bidirectional, and which objects exactly are subject to synchronization. This is all controlled in the Select Changes to Apply page of the synchronization wizard. Figure 7.34. Model and Database Differences In the preceding example, the live database consists of table1 , table2 and table3 . In MySQL Workbench an additional table, table4 , has been created, along with a relationship between it and table3 . Further, table5 exists in the live database, but not in the model. The actions that are configured to occur would result in table3 being altered (to include the relationship with table4 ), table4 being created and table5 being dropped, in the live database. It is possible to reconfigure this, though. The next example shows how the direction of synchronization can be changed. Figure 7.35. Controlling Synchronization Direction In this case, the synchronization direction has been changed so that rather than the default action of table5 being dropped from the live database, it will be incorporated into the MySQL Workbench model. For convenience, the wizard provides three additional buttons to enable synchronization directions to be applied to a group of selected changes. The Update Model button causes the selected changes to be applied only to the model itself. In the following example, table7 would be added to the model. Figure 7.36. Update Model Button The Ignore button causes the selected changes to be ignored. No synchronization will take place for those changes. In the following example, no changes would take place. Figure 7.37. Ignore Button The Update Source button causes the selected changes to be applied only to the live database. In the following example, table6 would be added to the live database and table7 would be dropped from the live database. Figure 7.38. Update Source Button It is also possible to control individual changes by clicking the arrows. Clicking an arrow causes it to change between the three available synchronization directions: from model to source, from source to model, or bidirectionally. In the following example, table6 will be created in the live database, and table7 will be created in the model. Figure 7.39. Click Arrows to Change Direction of Synchronization 


c1title: Changes in MySQL Workbench 5.2.6 (21 October 2009)
c2content:
 A.1.34. Changes in MySQL Workbench 5.2.6 (21 October 2009) A.1.34. Changes in MySQL Workbench 5.2.6 (21 October 2009) This section documents all changes and bug fixes applied since the release of 5.2.5. Bugs Fixed If a foreign key relationship was altered to point to a column in a different table, the foreign key was updated correctly but the EER diagram was not redrawn to reflect the new relationship. (Bug #47807) After using the Forward Engineer to Database wizard, MySQL Workbench would crash if an attempt was subsequently made to exit the application. (Bug #47276) When editing a trigger, the trigger editor would automatically insert a delimiter during a pause in typing, and also relocate the cursor. (Bug #45929) 


c1title: The Appearance Tab
c2content:
 5.4.7. The Appearance Tab 5.4.7. The Appearance Tab Use this tab to set the available colors for the objects that appear on an EER diagram canvas. You can also add colors if you wish. Changes made here affect the list of colors that appears on the toolbar when adding objects to an EER diagram canvas. For information about using this list, see Section 7.5.2.1, “Tool-Specific Toolbar Items” . You can also use this tab to set the font face, size, and style for the following items: Editor Layer Title Text Figure Text Text Figure Title Connection Caption Routine Group Figure Item Routine Group Figure Title Table Figure Items Table Figure Section Table Figure Title View Figure Title Note On Windows, the default font for the editor supports only latin-1 characters. If you need to use characters not supported by the latin-1 character set, you must change the font here. 


c1title: Launching MySQL Workbench on Mac OS X
c2content:
 3.3.8. Launching MySQL Workbench on Mac OS X 3.3.8. Launching MySQL Workbench on Mac OS X To launch MySQL Workbench on Mac OS X, open the Applications folder in the Finder, then double-click MySQL Workbench. It is also possible to start MySQL Workbench from the command line: shell&gt; open MySQLWorkbench.app model_file A model file must be specified. 


c1title: The Image Editor
c2content:
 7.7.8.2. The Image Editor 7.7.8.2. The Image Editor 7.7.8.2.1. The Image Tab To invoke the image editor, double-click an image object on an EER Diagram canvas. This opens the image editor docked at the bottom of the application. Double-clicking the image editor tab undocks the editor. Double-click the title bar to redock it. Any number of images may be open at the same time. Each additional image appears as a tab at the top of the image editor. 7.7.8.2.1. The Image Tab Use the Image tab of the image editor to perform the following tasks: Rename the image using the Name text box. Browse for an image using the Browse button. 


c1title: Changes in MySQL Workbench 5.2.34 (26 May 2011)
c2content:
 A.1.4. Changes in MySQL Workbench 5.2.34 (26 May 2011) A.1.4. Changes in MySQL Workbench 5.2.34 (26 May 2011) This section documents all changes and bug fixes applied since the release of 5.2.33. This release changed the version of Python version in MySQL Workbench to 2.7. However, this produces a problem when upgrading from 5.2.33. The reason is that the installer leaves all the compiled python files ( *.pyc ) in the installation folder. The next time MySQL Workbench loads, you cannot get beyond the splash screen. As a workaround, uninstall MySQL Workbench before you install 5.2.34. (This will not do anything to your stored connections, starters, settings, and so forth.) Make sure that all compiled python files ( *.pyc ) have been removed from the installation folder after uninstallation is finished, before you install 5.2.34. This problem was first encountered on Windows using the MSI package, but might also affect the Zip package or even other platforms. In any case, remove the old files before installing 5.2.34. Functionality Added or Changed Canceling a query used to work by dropping the connection. Now only the query itself is canceled. (Bug #12394153) MySQL Workbench now writes the wb.log file in the .mysql/workbench directory rather than in ~ (your home directory). (Bug #60930, Bug #12548457) The Check for updates... menu item that was removed several releases ago has been restored. (Bug #60488, Bug #11879029) On Windows, it is possible to open multiple models, but it was not clear that enabling this preference requires a MySQL Workbench restart. The check box tooltip now indicates this. (Bug #59400, Bug #11766312) In diagram mode, display of triggers for tables was re-enabled. (Bug #57956, Bug #11765044) A Check for Updates feature was added. (Bug #56612, Bug #11763846) If a column value is too long to display, an ellipsis (...) is displayed at the end to indicate that there is more data. (Bug #55976, Bug #11763283) If MySQL Workbench finds that .NET is not installed, it now provides a link for the user to get the .NET instaler. (Bug #55145, Bug #11762538) MySQL Workbench now shows query execution time and query warnings. (Bug #51199, Bug #11758933, Bug #58333, Bug #11765373) The SQL Editor can now wrap long text lines. This is controllable per editor instance using its context menu. By default, line wrapping is off. (Bug #50569, Bug #11758372) Toggle Page Guides is no longer available. (Bug #49927, Bug #11757824) Bugs Fixed On Ubuntu Linux 11.04+, part of the main MySQL Workbench menu would be hidden when utilizing the Ubuntu Unity display handler. Therefore, the Unity style menus have been disabled. (Bug #61256, Bug #12581792) File import operations failed with these errors: Error executing task: 'module' object has no attribute 'STARTF_USESHOWWINDOW' Error executing task local variable 'p1' referenced before assignment (Bug #60982, Bug #12430815) Executing an SQL script using the scripting shell is not supported, but attempts to do so resulted in a MySQL Workbench crash rather than an error. (Bug #60977, Bug #12402780) MySQL Workbench could crash while applying an SQL script to a database. (Bug #60966, Bug #12608789) Refreshing the Object Browser collapsed the browser tree. (Bug #60887, Bug #12366813) Multiple USE statements to change databases in the SQL Editor caused MySQL Workbench to crash. (Bug #60856, Bug #12358480) MySQL Workbench could not view the server logs if the server was configured with log output set to 'TABLE,FILE' . (Bug #60853, Bug #12365454) Some color schemes made options difficult to read. (Bug #60826, Bug #12368221) In the Python workbench shell, files with a nonsupported execution generated a warning and could not be run. (Bug #60815, Bug #12561562) Find did not work in Query tabs. (Bug #60787, Bug #12347063) Changing connection parameters in Synchronize Model resulted in an error message. (Bug #60771, Bug #12329285) For import and export command operations using a Unix socket file, MySQL Workbench added an incorrect --pipe option to the command. (Bug #60756, Bug #12325422) Forward Engineer SQL Script wizard wrote incomplete output. (Bug #60751, Bug #12329302) These query beautifier problems were corrected: Queries containing table aliases were mishandled. Spaces between table names and table aliases were incorrectly removed. (Bug #60742, Bug #11883490, Bug #12327013) If a conection name contained a ':' character, it did not work. (Bug #60700, Bug #12325493) When a schema was dropped in the Object Browser view using the context menu, the view was not refreshed properly. (Bug #60688, Bug #11933806) New server instances were not always displayed in the Server Adminstration list. (Bug #60684, Bug #11933087) MySQL Workbench crashed if it was unable to locate a required DLL due to security blocking. Now it displays instructions to the user how to perform unblocking. (Bug #60658, Bug #12545324) On Linux, MySQL Workbench was overly aggressive about reading schema information from INFORMATION_SCHEMA , leading to slowdowns when connecting to the MySQL server. Now information is read only for the default schema. (Bug #60644, Bug #11926793) Several crashes occurred under KDE with certain GTK+ themes. (Bug #60640, Bug #11926917) Fixed a possible crash when selecting File , Export , Forward Engineer SQL CREATE Script , and followed by the browse button. (Bug #60626, Bug #12617320) MySQL Workbench did not assign a correct tab name when opening an SQL script from the recent file list menu. (Bug #60610, Bug #11926855) Control+S did not save models or SQL Editor scripts. When opening an SQL script, it did not display the file name. (Bug #60594, Bug #12402774) MySQL Workbench could crash trying to display result sets that contained binary data. (Bug #60588, Bug #12385959) The SQL statement generated by clicking an item in the action pane failed to include the qualifying database name. (Bug #60562, Bug #11926864) The Administrator panel would not load for large process ID values of the MySQL server. (Bug #60505, Bug #12397312) MySQL Workbench crashed trying to execute some CREATE TABLE statements. (Bug #60475, Bug #12356405) Clicking a user name to obtain details caused MySQL Workbench to crash if the name contained an apostrope. (Bug #60473, Bug #11889207) Query results could not be saved to a directory for which the name contained Japanese characters. (Bug #60438) Exporting query results after entering a file path name did not work. (Bug #60438, Bug #11868335) MySQL Workbench tries to determine whether it can use Aero, but did not correctly check the platform. On Windows Server 2003, a call was made to a non-existing DLL, causing a .NET crash. (Bug #60412, Bug #11872360) Multiple-selection copy did not work. (Bug #60410, Bug #11865601) MySQL Workbench failed to compile on Gentoo Linux. (Bug #60358, Bug #12368202) Stored procedures could not be opened from the objects tree if the SQL Delimiter had been changed to the ';' character. Now the label for this option in the Preferences dialog has been changed to Non Standard SQL Delimiter to better reflect its actual meaning. The tooltip has also been changed to be more descriptive. In addition, if an Alter &lt;object&gt;... operation fails due to a parse error, the retrieved DDL code is shown as is in the SQL editor. (Bug #60354, Bug #11889184) Attempting to connect to a nonexistent server put MySQL Workbench in a nonresponsive state. (Bug #60329, Bug #11834154) Record set export to a file failed unless the file name was given as an absolute path name. (Bug #60256, Bug #11874435) Output from the routine editor added excessive blank lines between routine definitions. (Bug #60205, Bug #11874345) When database connections had process IDs with large values, the connection tab displayed an error box rather than process information. (Bug #60192, Bug #12397794) MySQL Workbench lost the connection to the server for long-running queries (more than 600 seconds). (Bug #60103, Bug #11766876) MySQL Workbench sometimes looked for my.ini in the wrong directory. (Bug #60076, Bug #11766855) Some MWB files created in MySQL Workbench 5.1 could not be loaded in 5.2. (Bug #59862, Bug #11766695) Items from the SQL Editor history were not always available to be copied into the SQL script. (Bug #59807, Bug #1766651) Exporting a record set to a file resulted in invalid INSERT statements if the table contained a column named key because the column name was not quoted properly. (Bug #59787, Bug #11766638) It was not possible to import a dump if MySQL Workbench was installed in a directory having a name that contained spaces. (Bug #59737, Bug #11766595) Control+Z in the Model Editor did not always refresh the screen correctly. (Bug #59661, Bug #11766531) Selecting the Create Multiple Tables menu item resulted in an error. (Bug #59586, Bug #11766473) Create EER Model from SQL Script reported a syntax error when importing legal SQL scripts. (Bug #59577, Bug #11766464) A problem running MySQL Utilities under the KDE console was fixed. (Bug #59427, Bug #12430837) After using the column headers of the User Accounts list to sort the accounts by User or From Host, then selecting various accounts in turn, the selected accounts often did not match the account being diplayed in the corresponding Login, Administrative Roles, or Account Limits tabs. (Bug #59391, Bug #11766304) Clicking the Manage Security link in the MySQL Workbench Home screen opened the Admin screen in the Startup tab rather than the Accounts tab and produced an error. (Bug #59389, Bug #11766302) The description given in the Workbench Preferences dialog for the --safe-updates option was incorrect. (Bug #59370, Bug #11766289) Connection sorting was lost after a status refresh. (Bug #59355, Bug #11766279) MySQL Workbench displayed superfluous error messages after the user interrupted a query. (Bug #59323, Bug #11766255) A SHOW WARNINGS query would return zero results, even when warnings existed. (Bug #59221, Bug #11766174) The Users column in the Schema Privileges tab was not sortable. (Bug #59138, Bug #11766100) On Windows, opening a second instance of MySQL Workbench resulted in an error. (Bug #59128, Bug #11766090) When the user closed the main window with a connection active, MySQL Workbench did not terminate the connection. This lead to Aborted_clients errors on the server side. (Bug #58944, Bug #11765929) Opening a connection twice resulted in unexpected errors when executing queries on the connection. (Bug #58835) When the SQL statement history file became large enough, MySQL Workbench encountered allocation errors attempting to add to it. (Bug #58778, Bug #12409656) When double-clicking tables in a model diagram, tabs were mismanaged such that the proper set of tabs did not remain available. (Bug #57349, Bug #11764509) On Mac OS X, Option+Delete functioned as Undo rather than deleting the word to the left of the cursor. (Bug #57184, Bug #11764360) A memory leak occurred during diagram manipulation. (Bug #55719, Bug #11763054) Using the Description Editor to update a table description did not update the Comments column of the Model Overview window. (Bug #55235, Bug #11762621) EER Diagram Catalog Tree schema folders did not stay collapsed when moving tables from a schema to the Diagram. (Bug #55088, Bug #11762487) Actions that should open a web page did not work. (Bug #54827, Bug #11762254) With a large table displayed in the SQL Editor object browser, keyboard shortcuts for the table information display were not working, and the information was not formatted properly. (Bug #54191, Bug #11761676) On Mac OS X, two-finger scrolling did not work in query windows. (Bug #53678, Bug #11761211) The TRIGGER privilege could not be assigned at the schema level. (Bug #52977, Bug #11760556) It was not possible to view or edit long text lines with the inline editor. (Bug #52087, Bug #11759751) After loading a model, zoom levels saved with bookmarks were not always used correctly. (Bug #50816, Bug #11758594) The live schema tree did not update properly to reflect modifications to schema objects. (Bug #50424, Bug #11758248) On Mac OS X, the Shift+Alt + Arrow combination selected individual characters instead of words. (Bug #50085, Bug #11757963) On Windows, a packaging error for the Zip file distribution led to spurious GRT Shell warnings at MySQL Workbench startup. (Bug #49813, Bug #11757719) For data browsing, the Fetch All option sometimes disappeared. (Bug #49403, Bug #11757365) For SQL Editor tabs where the connection had no name, connection information was not shown. Now MySQL Workbench displays the host name (up to 21 characters). (Bug #49058, Bug #11757060) Opening a connection from the list of recently used connections caused the user interface to become unresponsive while wanting for the connection to open. Now a “ Connecting, please wait ” message appears and there is a Cancel button to enable the connection request to be canceled. (Bug #48912, Bug #11756924) Dragging tables from the catalog to an EER diagram failed. (Bug #47028, Bug #11755277) 


c1title: The General Tab
c2content:
 5.4.1. The General Tab 5.4.1. The General Tab The General tab enables you to set the following options: Automatically Reopen Previous Model When Started : Check this if you want the model on which you previously worked to be automatically reopened when you start MySQL Workbench. Place Sidebar on the Right Side : By default, the Sidebar is placed on the left-hand side of the MySQL Workbench application. Select this option to place it on the right-hand side. Force use of software rendering for EER diagrams : MySQL Workbench will use OpenGL for rendering when available. However, due to faulty drivers, problems do occasionally occur. These issues can be resolved by selecting the software rendering option here. Undo History Size : You can limit the size of the undo history here. Set this value to 0 to have an unlimited undo history. Auto-save model interval : An open model that has not been saved will automatically be saved after this period. On loading a model file, MySQL Workbench will notify the user if the file was not previously saved correctly, due to a crash or power failure. MySQL Workbench can then attempt to recover the last auto-saved version. For automatic recovery to be available for a new file, it will have to have been saved at least once by the user. Interactive GRT Shell Language : You can select the language to be used in the GRT (Generic RunTime) shell by chosing a language from the list Interactive GRT Shell Language . Currently, the choices are Lua and Python. Python is the recommended option. 


c1title: Snippets Tabsheet
c2content:
 6.7.4.4. Snippets Tabsheet 6.7.4.4. Snippets Tabsheet When you enter SQL code into the SQL Query area, you can use the Save SQL to Snippets List toolbar button to save your SQL code. You will be asked to specify a name. These named snippets can be viewed from the SQL Snippets Tab. To load any SQL snippet into the SQL Query area, double-click the desired snippet in the Snippets Palette. Figure 6.9. SQL Editor - Snippets Palette 


c1title: The Shell Window
c2content:
 9.5.2. The Shell Window 9.5.2. The Shell Window The Workbench Scripting Shell is primarily used for running Lua or Python scripts or typing commands in these languages directly. However, you can also use it to access the Workbench Scripting Shell Scripting Library functions and global functions and objects. To see the available commands, type “ ? ”. You can also cut and paste text to and from the shell window. While individual commands can be entered into the shell, it is also possible to run a longer script, stored in an external file, using the main menu item Scripting , Run Workbench Script File . When scripts are run outside of the shell, to see the output use the main menu item View , Output . It is also possible to run script files directly from the shell. For details on running script files, type ? run at the Workbench Scripting Shell prompt. The following message is displayed: Shell Command - shell.run ------------------------- Load and execute a lua script file. run filename Parameters: filename File that should be loaded and executed. Examples: run scripts/test.lua Runs the script scripts/test.lua. Within the Workbench Scripting Shell, on the left side panel, are three tabs: Globals , Classes , and Modules . Discussion of these additional tabs follows. 


c1title: Changes in MySQL Workbench 5.2.33b (21 March 2011)
c2content:
 A.1.5. Changes in MySQL Workbench 5.2.33b (21 March 2011) A.1.5. Changes in MySQL Workbench 5.2.33b (21 March 2011) This section documents all changes and bug fixes applied since the release of 5.2.33. Bugs Fixed Creating a relationship broke the model file due to the index and foreign key having the same name. (Bug #60564, Bug #11926856) Attempting to open a saved model produced this error: Error unserializing GRT Data. Expected Type db.mysql.Column, but got db.mysql.Table. (Bug #60369, Bug #11840427) 


c1title: Manage Server Instances Dialog
c2content:
 8.6.2. Manage Server Instances Dialog 8.6.2. Manage Server Instances Dialog The Manage Server Instances dialog enables you to create, delete, and manage server instances. The Connection tab of the wizard enables you to select a predefined connection to use for connecting to a server to be managed. It is also possible to connect to a remote server using an SSH connection. Figure 8.1. Manage Server Instances Dialog The System Profile tab of the wizard enables you to specify server-specific information. This is achieved primarily through selecting a Profile Template. A Profile Template contains standard information used in managing the server instance. The following Profile Templates are available: Fedora Linux (MySQL Package) Fedora Linux (Vendor Package) FreeBSD (MySQL Package) Generic Linux (MySQL tar package) Mac OS X (MySQL Package) OpenSolaris (MySQL Package) RHEL (MySQL Package) SLES (MySQL Package) Ubuntu Linux (MySQL Package) Ubuntu Linux (Vendor Package) Windows (MySQL 5.0 Installer Package) Windows (MySQL 5.1 Installer Package) Windows (MySQL zip package) Custom After you select a profile, a number of default parameters will be set, including commands used to start and stop MySQL, commands to check server status, and the location of the my.ini or my.cnf configuration file. Figure 8.2. Manage Server Instances Dialog After an instance has been created, it can be launched by double-clicking its icon in the Server Administration panel of the Home page. This creates an Admin page, which has two main panels, Server Status and Configuration . The Configuration panel features multiple tabs: Startup , Configuration , Accounts , Connections , Variables , Data Dump , and Logs . 


c1title: Creating Tables
c2content:
 7.7.1. Creating Tables 7.7.1. Creating Tables 7.7.1.1. Adding Tables to the Physical Schemata 7.7.1.2. Adding Tables to an EER Diagram 7.7.1.3. The MySQL Table Editor 


c1title: DockPanel Suite License
c2content:
 B.7. DockPanel Suite License B.7. DockPanel Suite License The following software may be included in this product: DockPanel Suite The MIT License Copyright (c) 2007 Weifen Luo (email: weifenluo@yahoo.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 


c1title: Preface and Legal Notice
c2content:
 Preface and Legal Notice Preface and Legal Notice This is the User Manual for the MySQL Workbench. For license information, see the Legal Notice . This product may contain third-party code. For license information on third-party code, see Appendix B, Third Party Licenses . Legal Notice Copyright © 2006, 2011, Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this software or related documentation is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable: U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065. This software is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications which may create a risk of personal injury. If you use this software in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure the safe use of this software. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software in dangerous applications. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. MySQL is a trademark of Oracle Corporation and/or its affiliates, and shall not be used without Oracle's express written authorization. Other names may be trademarks of their respective owners. This software and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services. This document in any form, software or printed matter, contains proprietary information that is the exclusive property of Oracle. Your access to and use of this material is subject to the terms and conditions of your Oracle Software License and Service Agreement, which has been executed and with which you agree to comply. This document and information contained herein may not be disclosed, copied, reproduced, or distributed to anyone outside Oracle without prior written consent of Oracle or as specifically provided below. This document is not part of your license agreement nor can it be incorporated into any contractual agreement with Oracle or its subsidiaries or affiliates. This documentation is NOT distributed under a GPL license. Use of this documentation is subject to the following terms: You may create a printed copy of this documentation solely for your own personal use. Conversion to other formats is allowed as long as the actual content is not altered or edited in any way. You shall not publish or distribute this documentation in any form or on any media, except if you distribute the documentation in a manner similar to how Oracle disseminates it (that is, electronically for download on a Web site with the software) or on a CD-ROM or similar medium, provided however that the documentation is disseminated together with the software on the same medium. Any other use, such as any dissemination of printed copies or use of this documentation, in whole or in part, in another publication, requires the prior written consent from an authorized representative of Oracle. Oracle and/or its affiliates reserve any and all rights to this documentation not expressly granted above. For more information on the terms of this license, or for details on how the MySQL documentation is built and produced, please visit MySQL Contact &amp; Questions . For help with using MySQL, please visit either the MySQL Forums or MySQL Mailing Lists where you can discuss your issues with other MySQL users. For additional documentation on MySQL products, including translations of the documentation into other languages, and downloadable versions in variety of formats, including HTML and PDF formats, see the MySQL Documentation Library . 


c1title: Hardware Requirements
c2content:
 3.1. Hardware Requirements 3.1. Hardware Requirements MySQL Workbench requires a system that runs smoothly. The minimum hardware requirements are: CPU: 32-bit or 64-bit Cores: Single (Single Core 3GHz or higher, Dual Core 2GHz or higher recommended) RAM: 4 GB (6 GB or higher recommended) Graphic Accelerators: nVidia or ATI with support of OpenGL 2 or higher Display Resolution: 1280×1024 minimum (1920×1200 or higher recommended) 


c1title: New Server Instance
c2content:
 8.2. New Server Instance 8.2. New Server Instance This action item enables you to create a new server instance. A server instance is primarily a combination of connection and configuration details for a specific server that you wish to manage. When you click this item, a wizard is launched that enables you to specify the connection and various other configuration parameters. After completion of the wizard, a new Admin tab is launched, which displays Server Status and Configuration. For further details, see Section 8.6.1, “New Server Instance Wizard” . 


c1title: Edit Table Data
c2content:
 6.3. Edit Table Data 6.3. Edit Table Data Clicking this action item launches the Edit Table Data wizard, which enables you to edit table data. This is a two-stage wizard. The first stage enables you to select a Stored Connection. The second stage enables you to select the Schema and Table you want to edit. After the wizard is completed, an SQL Editor tab is launched, which displays a data grid that enables you to interactively edit table data as required. To read more about the SQL Editor, see Section 6.7, “SQL Editor” . 


c1title: The Workbench Scripting Shell
c2content:
 9.5. The Workbench Scripting Shell 9.5. The Workbench Scripting Shell 9.5.1. Exploring the Workbench Scripting Shell 9.5.2. The Shell Window 9.5.3. The Globals, Classes, and Modules Tabs The Workbench Scripting Shell provides a means for entering and executing scripts. Through the use of the scripting shell, MySQL Workbench can support new behavior and data sources using code written in Lua and Python. The shell can also be used to explore the current Workbench GRT (Generic RunTime) facilities. The scripting shell is not only useful for expanding MySQL Workbench. You can use a script file from the scripting shell command line to perform repetitive tasks programmatically. The default development language is Lua, a lightweight scripting language expressly designed for extending applications. For more information about this language, see lua.org . The Python language is also supported, further details of this language can be found from the official Python site . The programming language to be used in Workbench Scripting Shell can be selected from the General tab of the Workbench Preferences dialog. The Workbench Preferences dialog can be displayed using the main menu item Edit , Preferences . 


c1title: Toolbar
c2content:
 6.7.2. Toolbar 6.7.2. Toolbar The toolbar features ten buttons, as shown following. Figure 6.6. SQL Editor - Toolbar From left to right, these buttons are: Create a New SQL Script File : Creates a new SQL Script tab where SQL code can be entered. Open a SQL Script File : Loads a saved SQL script to be ready for execution. The script is displayed in the SQL Query area. Save SQL Script to File : Saves the currently loaded SQL script to a file specified by the user. Save SQL to Snippets List : Enables SQL code snippets to be given a name. They will appear in the SQL Snippets palette in the SQL Editor sidebar. Execute SQL Script in Connected Server : Executes the currently loaded SQL script. Results are displayed in one or more Results tabs. Execute Current SQL Statement in Connected Server : Executes the current SQL statement. Results are displayed in one or more Results tabs. Explain (All or Selection) : Explains SQL statements, or the currently selected one. Stop the query being executed : Halts execution of the currently executing SQL script. This restarts the connection to the database server. Toggle whether execution of SQL script should continue after failed statements : If the red “ breakpoint ” circle is displayed, the script terminates on a statement that fails. If the button is depressed so that the green arrow is displayed, execution continues past the failed code, possibly generating additional result sets. In either case, any error generated from attempting to execute the faulty statement is recorded in the Output tabsheet. Commit : Commits a transaction. Rollback : Rolls back a transaction. Toggle Auto-Commit Mode : If selected, transactions are automatically committed. Reconnect to DBMS : Re-establishes the database connection. Refresh state of database structures : Refreshes the view of Schemata, Tables, Views and Routines that appears in the Live Overview Schema tabsheet. For example, if an SQL script creates a new table, it will not appear in the Overview tab until the refresh toolbar button is clicked. Toggle whether query result tabs should be kept between queries by default : Normally when a script is executed, results generated from previous executions of the script are lost, and the new results are displayed in the results tab. If this toggle button is pressed, so that the pin appears inserted, previous results are retained. Each execution of the script creates a new Results tab containing the result set. 


c1title: Chapter 8. Server Administration
c2content:
 Chapter 8. Server Administration Chapter 8. Server Administration Table of Contents 8.1. Server Administration 8.2. New Server Instance 8.3. Manage Data Import/Export 8.4. Manage Security 8.5. Manage Server Instances 8.6. Creating and Managing Server Instances 8.6.1. New Server Instance Wizard 8.6.2. Manage Server Instances Dialog 8.7. Server Administration and Configuration 8.7.1. The Startup Tab 8.7.2. The Configuration Tab 8.7.3. The Accounts Tab 8.7.4. The Connections Tab 8.7.5. The Variables Tab 8.7.6. The Data Dump Tab 8.7.7. The Logs Tab Since version 5.2.6, MySQL Workbench has included functionality for managing server instances. A server instance is created to provide a way of connecting to a server to be managed. The first step is to create a server instance if none exists, or to work with an existing server instance. MySQL Workbench also provides functionality to administer and configure a server using these server instances. Thus, the Server Administrator functionality can be broadly grouped into two main areas: Creating and managing server instances Administration and configuration functions using a server instance The Workspace section of the Home window has an area for Server Administration tasks. This section of the Workspace has the following action items: Server Administration Server Administration (icon) New Server Instance Manage Data Import/Export Manage Security Manage Server Instances The following sections describe each of these action items. 


c1title: Glitz License
c2content:
 B.10. Glitz License B.10. Glitz License The following software may be included in this product: Glitz Copyright © 2004 David Reveman, Peter Nilsson Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the names of David Reveman and Peter Nilsson not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. David Reveman and Peter Nilsson makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. DAVID REVEMAN AND PETER NILSSON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL DAVID REVEMAN AND PETER NILSSON BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 


c1title: Launching MySQL Workbench on Linux
c2content:
 3.3.5. Launching MySQL Workbench on Linux 3.3.5. Launching MySQL Workbench on Linux After MySQL Workbench has been installed, it can be launched by selecting Applications , Programming , MySQL Workbench from the main menu. MySQL Workbench can also be launched from the command line on Linux. Type the command: shell&gt; /usr/bin/mysql-workbench --help This will display the available command-line options: mysql-workbench [&lt;options&gt;] [&lt;model file&gt;] Options: --force-sw-render Force Xlib rendering --force-opengl-render Force OpenGL rendering --help, -h Show command line options and exit 


c1title: Import from Disk
c2content:
 8.7.6.2. Import from Disk 8.7.6.2. Import from Disk The Import from Disk tab enables you to import a previously exported project. You can select to import a project where tables were stored in individual files. In this case, you will also be able to select which of these tables to import. You can also import a project saved to a single file. Figure 8.10. Administrator - Import from Disk 


c1title: Changes in MySQL Workbench 5.2.36 (Not yet released)
c2content:
 A.1.2. Changes in MySQL Workbench 5.2.36 (Not yet released) A.1.2. Changes in MySQL Workbench 5.2.36 (Not yet released) This section documents all changes and bug fixes applied to MySQL Workbench since the release of 5.2.35. Functionality Added or Changed The Edit , Format , Beautify Query feature no longer quotes column names. (Bug #13030351) The edit context menus, such as Edit Table Data , now open as new tabs. Before they reused (overwrote) the same tab. (Bug #61774, Bug #12731459) If only one server instance is defined, then the Server administration , Manage security option will now automatically connect to it, instead of prompting to choose a server instance. (Bug #61451, Bug #12647697) Indexes are now shown within the schema tree. And indexed columns are also indicated within the table information panel. (Bug #61295, Bug #12616367) The auto_increment information is now displayed within the SQL editor. (Bug #60933, Bug #12402845) On the SQL Editor tabs, right-clicking a tab now offers the following options: New Tab , Save Tab , Close Tab , Close Other Tabs , and Copy Path to Clipboard . (Bug #60883, Bug #12399369) The query and associated results are no longer displayed in separate tabs, but they are now viewable within a single interface. (Bug #60624, Bug #11926853) The SQL editor windows did not have maximize or minimize buttons, but these windows are now opened in configurable tabs. (Bug #60606, Bug #12617245) The export result set dialog has been redesigned, and now saves the previously used settings. (Bug #60490, Bug #11889185) SQL snippets can now be edited, and then saved. (Bug #58879, Bug #11765873) Tab spacing is now defined as 4 on the Linux and Mac platforms, to be consistent with Windows. (Bug #58867, Bug #11765862) A Paste Row context option was added to the Edit Table Data menu of the Object browser. (Bug #58169, Bug #11765228) Additional Export data types were added to the SQL Browser, which now includes JSON , Excel spreadsheet, and MySQL formatted XML. (Bug #56808, Bug #11764024) The Overview tab was replaced, in favor of the new schema tree view. (Bug #56795, Bug #11764014) Added the ability to edit data from a result set after executing a query. If MySQL Workbench determines that a returned result cannot be edited, then a read-only icon will be displayed, and hovering over the icon reveals a tooltip that explains why it cannot be edited. (Bug #56794, Bug #11764013) Added a input field to filter the schema list in the Object Browser . (Bug #55162, Bug #11762554) The Alter table option defaulted to Table view, but now uses the new table editor. (Bug #55050, Bug #11762454) MySQL Workbench did not support the .dbquery file extension. (Bug #54321, Bug #11761795) Added the Copy Inserts to Clipboard option to the Plugins , Objects menu. (Bug #54036, Bug #11761531) Added toolbar buttons to toggle the sidebars and bottom panel of the SQL Editor. (Bug #53714, Bug #11761243) The table view within the Object Browser has changed. The table view includes another level of grouping, which includes Columns, Indexes, Foreign Keys, and Triggers. Before, only the columns were listed. (Bug #53504, Bug #11761050) The table information window within the Object Browser has been expanded to include foreign keys, triggers, indexes, and data types. (Bug #53502, Bug #11761048) The Overview tab was removed, in favor of the new schema layout. (Bug #53323, Bug #11760879) New entries to the error log are now shown when restarting the MySQL server. When log_output is set to FILE , the log files are now displayed in the MySQL Workbench log page. (Bug #52445, Bug #11760073) The SQL snippets interface been redesigned and relocated to its own sidebar. Its display may also be toggled. (Bug #50069, Bug #11757950) The SQL Editor history tab now auto-scrolls to the bottom, so that the most recent entry is visible. (Bug #49317, Bug #11757294) Added a new format to the SQL Editor for export, which is identical to the XML generated by the mysql --xml command. It's titled XML (mysql format) . (Bug #49305, Bug #11757284) Added the ability to copy Status and System Variables to the clipboard. (Bug #49074, Bug #11757074) Bugs Fixed While using the import/restore feature of the server instance administration area, views and routines were not imported. (Bug #13041684) After right-clicking a cell within the insert grid of the model table editor, an unhandled exception was generated on Microsoft Windows, and a fatal error on Mac OS X. (Bug #13029647) The Manage Security window initially shows the first connection as selected, but it is not. (Bug #13026478) While administrating a server instance, importing a project folder will result in an "Import from Disk" error after the following sequence: Data Export and restore , Export to Dump project folder , with Dump views and Dump stored routines... checked, then exporting a schema with views and/or routines, opening the SQL Editor and dropping the exported schema, then clicking Import to Disk within the server administrator. (Bug #13025419) Pressing Refresh within the Slow Query Log tab resulted in an unhandled exception. (Bug #12928308) Within a diagram view, the Edit , Find , Find advanced option was unrecognized and performed no function. (Bug #12884864) A previously selected object could not be dragged, as it would instead enter "Edit Name" mode after the second click. (Bug #12884796) New server instances created by the Manage Server Instance wizard would send the incorrect service name to the MySQL admin. The command is now constructed at run time using the service name from the server instance profile. (Bug #12567371) Creating a server instance using unicode characters worked, but an error would be generated while attempting to open them. (Bug #63100, Bug #13350556) Using Alter routine to make changes would sometimes crash after clicking Apply . (Bug #63076, Bug #13340307) On Microsoft Windows, upgrading MySQL Workbench required MySQL Workbench to be run as a user with Administrator rights. (Bug #62709, Bug #13116366) Opening model files while using a MySQL Workbench version that was installed over a previous MySQL Workbench installation would sometimes cause permission issues. The workarounds included running MySQL Workbench with administrator privileges, or removing the installation folder before upgrading. (Bug #62703, Bug #13323929) An unhandled exception might be emitted after modifying an EER diagram, with a popup window reading "MySQL Workbench has encountered a problem - Queue empty." (Bug #62651, Bug #13079826) A query history date would incorrectly change when a history entry, other than the last one, was selected when the query was executed. (Bug #62642, Bug #13104635) The Create Routine... feature would report that it created a routine, but it did not, and the error was revealed in the output window. (Bug #62624, Bug #13362190) The Reconnect to DBMS toolbar option would not reconnect after unchecking the Safe Updates preference. A workaround is to uncheck this option, then restart MySQL Workbench. (Bug #62448, Bug #13014798) Expanding then collapsing the query results window within the SQL editor, yielded a different appearance. (Bug #62371, Bug #13007096) On Ubuntu 11.10, MySQL Workbench would freeze at the startup splash screen. (Bug #62347, Bug #13099521) The Configuration File path within the Server Administration panel is now read-only, when before it would temporarily set the path. This path should be set via the profile setting instead. (Bug #62252, Bug #12922746) Fixed a typo, where "database" was misspelled as "dabase" within the DBDesigner description. (Bug #62250, Bug #12912465) The Auto-save feature would behave with unpredictable results, by opening up an incorrect number of windows when MySQL Workbench was next loaded. (Bug #62192, Bug #12907612) Opening Management , Server Logs would generate an unhandled exception when using table-based logging, while the general log was empty. (Bug #62123, Bug #12872836) After setting a default schema, choosing Refresh all while the schema information is "fetching" would result in an unhandled exception. (Bug #62086, Bug #12913399) Switching between two logins for a single database connection required the password to be reentered with each switch. (Bug #62052, Bug #12921420) On Linux, the Database , Generate Catalog Diff Report... model option was disabled. (Bug #62040, Bug #12844314) Within the Routine Editor , opening multiple Apply SQL Script to Database dialogues and then executing one, except for the last one opened, would crash MySQL Workbench. (Bug #61988, Bug #12918227) On Microsoft Windows, the EER diagram search did not work across multiple pages. (Bug #61957, Bug #12818216) Fixed Data export so that routines and views are only exported when they are selected. In addition, individual views may now be selected for export. (Bug #61937, Bug #12949918) Importing a dump would misquote the --defaults-extra-file option, which would cause the import to fail. (Bug #61910, Bug #12912786) A Download Prerequisites link is now displayed when prerequisites, such as the "Visual C++ 2010 Redistributable Package" requirement, are not met. Before, the link was not visible. (Bug #61897, Bug #12769499) Repeatedly refreshing a schema resulted in an unhandled exception. (Bug #61892, Bug #12762893) The File , Open Recent feature would open the incorrect script. (Bug #61856, Bug #12912374) On Mac OS X, switching from the Model tab to the EER Diagram tab caused an error sound. (Bug #61809, Bug #12757337) File , Export , Forward Engineer SQL CREATE Script would append an extra space to TINYINT(1) after converting it from BOOL . (Bug #61696, Bug #12711138) MySQL Workbench would not recognize the active schema with case insensitive servers. As a result, an active schema within the Object browser would be unselected after a USE statement was executed. (Bug #61641, Bug #12711143) The Users and Privileges window did not scale to low screen resolutions like 1024x768. It does now, although MySQL Workbench still has an official minimum screen resolution of 1280x800. (Bug #61518, Bug #12661556) Tab panels within Server Administration would not fresh properly. (Bug #61452, Bug #12647731) The Object editors (such as Alter Table , Alter View , and Alter Routine ) now open as tabs, instead of separate wizard windows. (Bug #61422, Bug #12642157) Exporting SQL for tables that included comments would generate invalid SQL statements. A comma was missing immediately before the COMMENT . (Bug #61393, Bug #12627762) After opening a saved model file, the Control+T shortcut would not work from within a query window. (Bug #61379, Bug #12627716) MySQL Workbench could crash while restoring large files. (Bug #61365, Bug #12627685) The Clear script output and Close this script tab buttons are now disabled in non-script tabs. (Bug #61318, Bug #12616331) On Linux, code folding for stored procedures and loops did not work properly within the SQL editor. (Bug #61302, Bug #12612394) On Microsoft Windows, the Find option ( Control+F ) for the SQL editor was not available. (Bug #61233, Bug #12622697) Executing a slow query would not notify the user that the query was running. The new SQL editor interface does show the progress. (Bug #61231, Bug #12589710) When hovering the mouse pointer over a table figure on a diagram, the foreign key tooltip would hide the table column names. (Bug #61055, Bug #12546715) The default schema selection would be lost after synchronizing a model. (Bug #60975, Bug #12621744) On Linux and Mac OS X, using Tab and Shift+Tab to jump to next/previous fields has been added to the query result view. It had previously only worked on Windows. Additionally, the Escape key will now cancel editing of the current cell, and PageUp / PageDown scrolls one page up and down in the result set. (Bug #60865, Bug #12368205) Manipulating multiple SQL editor tabs would sometimes result in uncaught exceptions. (Bug #60764, Bug #12621640) MySQL Workbench would crash when attempting to use Alter Table or Create Table from within the context menu. (Bug #60760, Bug #12621510) Fixed a crash bug, which would happen on exit. (Bug #60733, Bug #12632325) Factory snippet files were fixed, to include proper line-endings for all platforms. (Bug #60643, Bug #12621434) Closing MySQL Workbench would not prompt to save unsaved work from modified SQL files and windows. (Bug #60557, Bug #11926868) The SQL editor output tab did not report the number of affected rows. (Bug #60535, Bug #12617147) The Syncronize model with Database wizard would not properly handle case-sensitive table names. (Bug #60523, Bug #12617135) Open diagram tabs from a saved MySQL Workbench state were not saved properly. (Bug #60515, Bug #12617096) The Advanced Export Options preferences were not saved, and would reset after restarting MySQL Workbench. (Bug #60497, Bug #11889197) Connection and query tabs can now be reordered, by dragging and dropping with the mouse pointer. (Bug #60409, Bug #11865602) On Linux, viewing the embedded documentation required the python-sqlite2 package. (Bug #60336, Bug #11874507) On Mac OS X, Command+W will now close the active script editor tab, and Command+Shift+W will now close the active connection tab. This is now consistent with behavior on other operating systems. Before, the Command+W combination closed the active connection tab. (Bug #60253, Bug #11829750) Pressing Esc once now escapes out of edit mode within the row editor. Before, it had to be pressed twice. (Bug #60131, Bug #11829997) The Copy Row Content option would throw an unexpected exception, from within a model. In addition, the Paste Row option was added. (Bug #60116, Bug #12417533) The USE statement is now properly quoted. For example, an invalid USE query would be generated if a schema contained a - character. (Bug #59882, Bug #11766711) Copying a table column would lose the data type, when only the column line number was selected instead of the data type or field name. (Bug #59285, Bug #11905520) Within a server instance administration panel, setting Export to Self-Contained File to an invalid path resulted in an unhandled exception. (Bug #59246, Bug #11766194) The Output tab of the SQL editor now adjusts whitespace characters, as to display queries on a single line. (Bug #58989, Bug #11765966) Enabling the Limit Rows SQL editor preference would cause invalid SQL syntax with SELECT INTO statements. (Bug #58732, Bug #11765738) When viewing text at a size greater than 100% (such as 125%), some text field labels would be partially hidden. (Bug #58408, Bug #12628507) Server Administration , Manage Import/Export would return an error about the dump module. (Bug #58098, Bug #11765164) MySQL Workbench would allow the creation of foreign keys on tables using engines that do not support them. A warning is now emitted if this is attempted. (Bug #57875, Bug #11764972) MySQL Workbench did not fully adhere to locale settings, which could result in unhandled exceptions. (Bug #56869, Bug #11764077) The Foreign Keys tab of the Alter Table wizard only created an index, without the foreign key. (Bug #56818, Bug #11764033) Broken views (e.g., a column no longer exists) are now displayed as broken within the schema tree view. (Bug #56701, Bug #11763928) Editor windows would sometimes lose focus, but they are now docked within the main application window, which eliminated this problem. (Bug #55923, Bug #11763235) Auto-scrolling for the SQL output and history windows was added. (Bug #55865, Bug #11763183) The Find feature (search) was replaced with a panel, which offers more consistent behavior across platforms. The Find and Replace feature is also now a panel, instead of a pop-up window. (Bug #54765, Bug #11762197) On Linux, the previously set window positions and sizes were not saved by MySQL Workbench. These settings are now saved upon closing, and used when MySQL Workbench is loaded. (Bug #54025, Bug #11761521) The Finish button was inactive (grayed out) for the Edit Table Data dialog, if the database contained exactly one table. (Bug #52833, Bug #11760422) If a table cannot be edited (e.g., no Primary key), then MySQL Workbench now notifies users of the reason, when before the edit option was simply not available. (Bug #51563, Bug #11759263) Closing and opening the SQL Editor now sets the last used schema as the default, instead of the schema specified within the connection. (Bug #51454, Bug #51026, Bug #11759165, Bug #11758776) A triple-click was required to change the Referenced column of a foreign key, while editing a table within an EER diagram. (Bug #50725, Bug #11758512) 


c1title: Changes in MySQL Workbench 5.1.8 (Not yet released)
c2content:
 A.2.12. Changes in MySQL Workbench 5.1.8 (Not yet released) A.2.12. Changes in MySQL Workbench 5.1.8 (Not yet released) This section documents all changes and bug fixes applied since the release of 5.1.7. Bugs Fixed In the Reverse Engineer Database wizard it was not possible to select only one table to reverse engineer, and then proceed to the next step. (Bug #45881) Using the Inserts Editor caused MySQL Workbench to crash. The error message generated when used was: ** Message: ============================== ** Message: refresh_gui_becb unhandled refresh: 20 RefreshTimer This was due to the fact that, in the 5.1.4 Alpha version of MySQL Workbench, the Inserts Editor had not been implemented. (Bug #40671) 


c1title: Supported Template Markers
c2content:
 7.12.1. Supported Template Markers 7.12.1. Supported Template Markers The following table shows the supported markers. These markers can be used in any template, including custom templates. Marker text Type Data Dictionary defined in (if variable) or parent dictionary (if section) Corresponding data TITLE Variable MAIN Title of the report GENERATED Variable MAIN Date and time when the report was generated STYLE_NAME Variable MAIN The name of the style selected in MySQL Workbench, this is typically used to load the corresponding CSS file, depending on the name of the style selected in MySQL Workbench SCHEMA_COUNT Variable MAIN The number of schemata in the model PROJECT_TITLE Variable MAIN Project title as set for the model in Document Properties PROJECT_NAME Variable MAIN Project name as set for the model in Document Properties PROJECT_AUTHOR Variable MAIN Project author as set for the model in Document Properties PROJECT_VERSION Variable MAIN Project version as set for the model in Document Properties PROJECT_DESCRIPTION Variable MAIN Project description as set for the model in Document Properties PROJECT_CREATED Variable MAIN Automatically set for the model project, but as displayed in Document Properties PROJECT_CHANGED Variable MAIN Automatically set for the model project, but as displayed in Document Properties TOTAL_TABLE_COUNT Variable MAIN The number of tables in all schemata in the model TOTAL_COLUMN_COUNT Variable MAIN The number of columns in all tables in all schemata in the model TOTAL_INDEX_COUNT Variable MAIN The number of indexes in the model TOTAL_FK_COUNT Variable MAIN The number of foreign keys in the model SCHEMATA Section MAIN Used to mark the start and end of a SCHEMATA section; the SCHEMATA data dictionary becomes active in this section SCHEMA_NAME Variable SCHEMATA The schema name SCHEMA_ID Variable SCHEMATA The schema ID TABLE_COUNT Variable SCHEMATA The number of tables in the current schema COLUMN_COUNT Variable SCHEMATA The number of columns in the current schema INDICES_COUNT Variable SCHEMATA The number of indexes in the current schema FOREIGN_KEYS_COUNT Variable SCHEMATA The number of foreign keys in the current schema TABLES Section SCHEMATA Marks the start and end of a TABLES section; the TABLES data dictionary becomes active in this section TABLE_NAME Variable TABLES The table name TABLE_ID Variable TABLES The table ID COLUMNS_LISTING Section TABLES Marks the start and end of a COLUMNS_LISTING section; the COLUMNS_LISTING data dictionary becomes active in this section COLUMNS Section COLUMNS_LISTING Marks the start and end of a COLUMNS section; the COLUMNS data dictionary becomes active in this section COLUMN_KEY Variable COLUMNS Whether the column is a primary key COLUMN_NAME Variable COLUMNS The column name COLUMN_DATATYPE Variable COLUMNS The column data type COLUMN_NOTNULL Variable COLUMNS Whether the column permits NULL values COLUMN_DEFAULTVALUE Variable COLUMNS The column default value COLUMN_COMMENT Variable COLUMNS The column comment COLUMN_ID Variable COLUMNS The column ID COLUMN_KEY_PART Variable COLUMNS (if detailed) The column key type COLUMN_NULLABLE Variable COLUMNS (if detailed) Can the column contain NULL values COLUMN_AUTO_INC Variable COLUMNS (if detailed) Does the column auto-increment COLUMN_CHARSET Variable COLUMNS (if detailed) The column character set COLUMN_COLLATION Variable COLUMNS (if detailed) The column collation COLUMN_IS_USERTYPE Variable COLUMNS (if detailed) Whether the column is a user type INDICES_LISTING Section TABLES Marks the start and end of an INDICES_LISTING section; the INDICES_LISTING data dictionary becomes active in this section INDICES Section INDICES_LISTING Marks the start and end of an INDICES section; the INDICES data dictionary becomes active in this section INDEX_NAME Variable INDICES The index name INDEX_PRIMARY Variable INDICES Whether this is a primary key INDEX_UNIQUE Variable INDICES Whether this is a unique index INDEX_TYPE Variable INDICES The index type; for example, PRIMARY INDEX_KIND Variable INDICES The index kind INDEX_COMMENT Variable INDICES The index comment INDEX_ID Variable INDICES The index ID INDEX_COLUMNS Section INDICES Marks the start and end of an INDEX_COLUMNS section; the INDEX_COLUMNS data dictionary becomes active in this section INDEX_COLUMN_NAME Variable INDEX_COLUMNS The index column name INDEX_COLUMN_ORDER Variable INDEX_COLUMNS The index column order; for example, ascending, descending INDEX_COLUMN_COMMENT Variable INDEX_COLUMNS The index comment INDEX_KEY_BLOCK_SIZE Variable INDEX_COLUMNS (if detailed) The index key-block size REL_LISTING Section TABLES Marks the start and end of a REL_LISTING section; the REL_LISTING data dictionary becomes active in this section REL Section REL_LISTING Marks the start and end of a REL section; the REL data dictionary becomes active in this section REL_NAME Variable REL, FOREIGN_KEYS The relationship name REL_TYPE Variable REL, FOREIGN_KEYS The relationship type REL_PARENTTABLE Variable REL, FOREIGN_KEYS The relationship parent table REL_CHILDTABLE Variable REL, FOREIGN_KEYS The relationship child table REL_CARD Variable REL, FOREIGN_KEYS The relationship cardinality FOREIGN_KEY_ID Variable REL Foreign key ID FOREIGN_KEYS Section SCHEMATA Marks the start and end of a FOREIGN_KEYS section; the FOREIGN_KEYS data dictionary becomes active in this section FK_DELETE_RULE Variable FOREIGN_KEYS The foreign key delete rule FK_UPDATE_RULE Variable FOREIGN_KEYS The foreign key update rule FK_MANDATORY Variable FOREIGN_KEYS Whether the foreign key is mandatory TABLE_COMMENT_LISTING Section TABLES Marks the start and end of a TABLE_COMMENT_LISTING section; the TABLE_COMMENT_LISTING data dictionary becomes active in this section TABLE_COMMENT Variable TABLE_COMMENT_LISTING The table comment DDL_LISTING Section TABLES Marks the start and end of a DDL_LISTING section; the DDL_LISTING data dictionary becomes active in this section DDL_SCRIPT Variable DDL_LISTING Display the DDL script of the currently active entity; for example, SCHEMATA, TABLES Using the table The table shows which variables are defined in which sections. The variable should be used in its correct section or its value will not be displayed. However, remember that the data dictionaries used to perform variable lookups form a hierarchical tree, so it is possible to use a variable in a child section that is defined in a parent section. 


c1title: Changes in MySQL Workbench 5.2.2 (27 July 2009)
c2content:
 A.1.38. Changes in MySQL Workbench 5.2.2 (27 July 2009) A.1.38. Changes in MySQL Workbench 5.2.2 (27 July 2009) This section documents all changes and bug fixes applied since the release of 5.2.1. Bugs Fixed The Synchronize Model with Database wizard contain a spelling mistake. The word “ synchronization ” was mispelled as “ synchronizatiob ”. (Bug #45939) MySQL Workbench 5.1.16 failed to create INSERTs in the exported DDL for some tables. (Bug #45920) MySQL Workbench crashed at startup on Mac OS X. (Bug #45869) If MySQL Workbench gave the message that the MySQL Server was no longer available (because of timeout due to inactivity) then MySQL Workbench crashed when the user tried to reconnect. (Bug #45123) The UML relationship notation was incorrect. When setting a Foreign Key to NULLable, the table referenced by the Foreign Key should be marked as optional. However, MySQL Workbench marked the table containing the Foreign Key itself as optional. (Bug #45069) If a user added a LIMIT clause to a query, the automatically added LIMIT 0,1000 clause caused a syntax error. (Bug #45051) The new SQL IDE, introduced in 5.2, did not support returning results from procedures. When any routine was called, there were no results displayed in the query editor window. However, the log contained the message “ Response: OK ”. When another query was run on the same connection, the log message was: Error Code: 2014 Commands out of sync; you can't run this command now (Bug #44910) 


c1title: Edit SQL Script
c2content:
 6.4. Edit SQL Script 6.4. Edit SQL Script Clicking this action item launches the Edit SQL Script wizard. This is a two-stage wizard. The first stage enables you to select a Stored Connection. The second stage enables you to select an SQL Script file, and optionally have the script executed after it is opened. After the wizard is completed, an SQL Editor tab will be launched, with the script displayed. If you selected to run the script, MySQL Workbench runs the script and displays the results. 


c1title: Chapter 6. SQL Development
c2content:
 Chapter 6. SQL Development Chapter 6. SQL Development Table of Contents 6.1. Open Connection to Start Querying 6.2. New Connection 6.3. Edit Table Data 6.4. Edit SQL Script 6.5. Manage Connections 6.6. Manage DB Connections Dialog 6.6.1. The Password Storage Vault 6.6.2. Standard TCP/IP Connection 6.6.3. Local Socket/Pipe Connection 6.6.4. Standard TCP/IP over SSH Connection 6.7. SQL Editor 6.7.1. Main Menu 6.7.2. Toolbar 6.7.3. SQL Query Panel 6.7.4. Main Tabsheets 6.7.5. Sidebar MySQL Workbench provides extensive facilities for working directly with SQL code. Before working directly with a live server, a connection must be created. After a connection is established, it is possible to execute SQL code directly on the server and manipulate the server using SQL code. The starting point for embarking on SQL Development work is the SQL Development area of the Home window, which has the following action items: Open Connection to start Querying New Connection Edit Table Data Edit SQL Script Manage Connections The following sections describe each of these action items. Note The SQL Development facility in MySQL Workbench provides the functionality that was formerly available in MySQL Query Browser. 


c1title: Creating Routines and Routine Groups
c2content:
 7.7.4. Creating Routines and Routine Groups 7.7.4. Creating Routines and Routine Groups 7.7.4.1. Routines 7.7.4.2. Routine Groups You can add Routine Groups to a database either from the Physical Schemata section of the MySQL Model page or from an EER Diagram. Routines may be added only from the Physical Schemata section of the MySQL Model page. To view an existing schema, along with its Routines and Routine Groups, choose Database , Reverse Engineer... from the main menu. After the schema has been added to the current model, you can see the schema objects on the Physical Schemata panel on the MySQL Model page. The Routines and Routine Groups are listed there. MySQL Workbench unifies both stored procedures and stored functions into one logical object called a Routine. Routine Groups are used to group routines that are related. You can decide how many Routine Groups you want to create and you can use the Routine Group Editor to assign specific routines to a group, using a drag and drop interface. When designing an EER Diagram, you can place the Routine Groups on the canvas by dragging them from the Catalog Palette . Placing individual routines on the diagram is not permitted, as it would clutter the canvas. 


c1title: Modeling Tutorials
c2content:
 7.8. Modeling Tutorials 7.8. Modeling Tutorials 7.8.1. Importing a Data Definition SQL Script 7.8.2. Using the Default Schema 7.8.3. Basic Modeling 7.8.4. Documenting the sakila Database This chapter contains three short tutorials intended to familiarize you with the basics of MySQL Workbench. These tutorials show how MySQL Workbench can be used both to design and to document databases. Creating a database from scratch is the focus of Section 7.8.2, “Using the Default Schema” and exploring the graphic design capabilities of MySQL Workbench is touched upon in Section 7.8.3, “Basic Modeling” . Both these tutorials show the database design capabilities of MySQL Workbench. Importing an SQL data definition script is probably the quickest way to familiarize yourself with MySQL Workbench—this tutorial makes use of the sakila database and emphasizes the use of MySQL Workbench as a documentation tool. Examples taken from the sakila database are used throughout the documentation, so doing this tutorial can be very helpful in understanding MySQL Workbench. 


c1title: The Globals, Classes, and Modules Tabs
c2content:
 9.5.3. The Globals, Classes, and Modules Tabs 9.5.3. The Globals, Classes, and Modules Tabs The Workbench Scripting Shell features the Globals , Classes and Modules tabs, in addition to the main Shell tab. The Globals Tab At the top of the window is a list that is used to select the starting point, or root, of the GRT Globals tree displayed beneath it. By default, this starting point is the root of the tree, that is, '/'. You can expand or collapse the GRT Globals tree as desired. The GRT Globals tree is the structure in which MySQL Workbench stores document data. Clicking any item results in its name and value being displayed in the panel below the tree. The Classes Tab A class is a user-defined data type formed by combining primitive data types: integers, doubles, strings, dicts, lists, and objects. This tab shows the definitions of the classes used by the objects in the Modules tab. Clicking a class causes a brief description of the class to be displayed in a panel below the classes explorer. When the Classes tab is selected, the list displays the following items: Group by Name : Group by the object name Group by Hierarchy : Group by inheritance Group by Package : Group by functionality The default view for this tab is Group By Name . This view shows all the different objects arranged alphabetically. Click the + icon or double-click a package to show the properties of the struct. If you switch to the hierarchical view, you will see GrtObject : the parent object from which all other objects are derived. The Modules Tab The Modules tab enables you to browse the MySQL Workbench installed modules and their functions. Clicking a module within the explorer causes its details to be displayed in a panel below the explorer. This facility is useful for exploring the available modules, and their supported functions. It is also a way to check whether custom modules have been correctly installed. 


c1title: New Server Instance Wizard
c2content:
 8.6.1. New Server Instance Wizard 8.6.1. New Server Instance Wizard Clicking the New Server Instance action item launches the Create a new server instance wizard. The wizard provides a step-by-step approach to creating a new server instance. This is most suitable for beginners. Users who are familiar with the various settings and parameters can also quickly create a new instance from the Manage Server Instances dialog discussed later. The steps presented in the wizard are as follows: Specify Host Machine Database Connection Test DB Connection Management and OS SSH Configuration Windows Management Test Settings Review Settings MySQL Config File Specify Commands Complete Setup Specify host machine On this page you can select Localhost if you intend to manage a server on your local machine. If you select Remote Host , you must provide the IP address or the network name of the remote server. Or, Take Parameters from Existing Database Connection utilizes a pre-existing connection as defined within MySQL Workbench. Click Next to continue. Database Connection This page enables you to select a connection to a specific database. The settings entered previously have been concerned with the connection to the server required for administrative purposes. This page is concerned with connecting to a specific database. You can either launch the Manage DB Connections dialog or select a pre-existing connection from a list. The former is most useful if you have not created any connections. If you must create a connection at this point, refer to Section 6.6, “Manage DB Connections Dialog” . After a connection has been selected, click Next to continue. Test DB Connection On this page, MySQL Workbench tests your database connection and displays the results. If an error occurs, you are directed to view the logs, which can be done by clicking the Show Logs button. Management and OS Used to specify a remote management type and target operating system, which is available when the Host Machine is defined as a remote host. The SSH login based management option includes configuration entries for the Operating System and MySQL Installation Type. SSH Configuration If you specified a Remote Host on the Specify Host Machine page, you will be presented with the Host SSH Connection page, that enables you to use SSH for the connection to the server instance. This facility enables you to create a secure connection to remotely administer and configure the server instance. You must enter the host name and user name of the account that will be used to log in to the server for administration and configuration activities. If you do not enter the optional SSH Key for use with the server, then you will be prompted for the password when the connection is established by MySQL Workbench. Note This connection is to enable remote administration and configuration of the MySQL Server itself. It is not the same as the connection used to connect to a server for general database manipulation. Note You must use an SSH connection type when managing a remote server if you wish to start or stop the server or edit its configuration file. Other administrative functions do not require an SSH connection. Windows Management If a Windows server is used, then the Windows configuration parameters must be set. Windows management requires a user account with the required privileges to query the system status, and to control services. And read/write access to the configuration file is needed to allow editing of the file. Test Settings On the next page your settings are tested and the wizard reports back the results after attempting to connect to the server. If an error occurs, you are directed to view the logs, which can be done by clicking the Show Logs button. MySQL Workbench must know where the MySQL Server configuration file is located to be able to display configuration information. The wizard is able to determine the most likely location of the configuration file, based on the selection made on the Operating System page of the wizard. However, it is possible to test that this information is correct by clicking the Check path and Check section buttons. The wizard then reports whether the configuration file and server configuration section can in fact be accessed. It is also possible to manually enter the location of the configuration file, and the section pertaining to MySQL Server data; these manually entered values should be tested using the buttons provided. Click the Next button to continue. Review Settings The modified settings may be reviewed, which also includes the default values. Check the Change Parameters checkbox if the the MySQL Config File section will be edited, and then click Next to continue. MySQL Config File Allows configuration of the MySQL server version. It also allows the editing and validation of the configuration file path, and validation of the server instance section. Click Next to continue. Specify Commands This page enables you to set the commands required to start, stop, and check the status of the running server instance. It is possible to customize the commands if required, but the defaults should be suitable in most cases. The defaults are set based on the options selected in the Operating System page of the wizard. Click Next to continue. Complete Setup On this page, you finally assign a name to the server instance. This name is used in various parts of the GUI to enable you to refer to this instance. After setting a suitable name, click Finish to save the instance. 


c1title: Creating Foreign Key Relationships
c2content:
 7.7.2. Creating Foreign Key Relationships 7.7.2. Creating Foreign Key Relationships 7.7.2.1. Adding Foreign Key Relationships Using an EER Diagram 7.7.2.2. The Relationship Editor 7.7.2.3. Connection Properties Foreign key constraints are supported for the InnoDB storage engine only. For other storage engines, the foreign key syntax is correctly parsed but not implemented. For more information, see Foreign Keys . Using MySQL Workbench you may add a foreign key from within the table editor or by using the relationship tools on the vertical toolbar of an EER Diagram. This section deals with adding a foreign key using the foreign key tools. To add a foreign key using the table editor, see Section 7.7.1.3.5, “The Foreign Keys Tab” . The graphical tools for adding foreign keys are most effective when you are building tables from the ground up. If you have imported a database using an SQL script and need not add columns to your tables, you may find it more effective to define foreign keys using the table editor. 


c1title: Creating Images
c2content:
 7.7.8. Creating Images 7.7.8. Creating Images 7.7.8.1. Adding Images to an EER Diagram 7.7.8.2. The Image Editor Images exist only on the EER Diagram canvas; you can add them only from the EER Diagram window. 


c1title: Modeling Menus
c2content:
 7.5.1. Modeling Menus 7.5.1. Modeling Menus 7.5.1.1. The File Menu 7.5.1.2. The Edit Menu 7.5.1.3. The View Menu 7.5.1.4. The Arrange Menu 7.5.1.5. The Model Menu 7.5.1.6. The Database Menu 7.5.1.7. The Plugins Menu 7.5.1.8. The Scripting Menu 7.5.1.9. The Community Menu 7.5.1.10. The Help Menu Some menu items are not available in the OSS version of this application, and are available only in the Standard Edition. This is indicated where applicable. 


c1title: Standard TCP/IP Connection
c2content:
 6.6.2. Standard TCP/IP Connection 6.6.2. Standard TCP/IP Connection This connection method enables MySQL Workbench to connect to MySQL Server using TCP/IP. Parameters tab Hostname : The host name or IP address of the MySQL server. Username : User name to use for the connection. Password : Optional password for the account used. If you enter no password here, you will be prompted to enter the password when MySQL Workbench attempts to establish the connection. MySQL Workbench can store the password in a vault (see Section 6.6.1, “The Password Storage Vault” ). Port : The TCP/IP port on which the MySQL server is listening (the default is 3306). Default Schema : When the connection to the server is established, this is the schema that will be used by default. It becomes the default schema for use in other parts of MySQL Workbench. Advanced tab More parameters can be set for the connection by using the Advanced tab. Figure 6.2. Manage DB Connections - Advanced Tab The Advanced tab includes these check boxes: Use compression protocol : If checked, the communication between the application and the MySQL server will be compressed, which may increase transfer rates. This corresponds to starting a MySQL command-line client with the --compress option. Use SSL if available : This option turns on SSL encryption. The client library must support this option. Note: This feature is currently not supported. Use ANSI quotes to quote identifiers : Treat “ " ” as an identifier quote character (like the “ ` ” quote character) and not as a string quote character. You can still use “ ` ” to quote identifiers with this mode enabled. With this option enabled, you cannot use double quotation marks to quote literal strings, because it is interpreted as an identifier. Note: If this option is selected, it overrides the server setting. 


c1title: CTemplate (Google Template System) License
c2content:
 B.5. CTemplate (Google Template System) License B.5. CTemplate (Google Template System) License The following software may be included in this product: CTemplate (Google Template System) Copyright (c) 2005, Google Inc. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of Google Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 


c1title: Output Tabsheet
c2content:
 6.7.4.2. Output Tabsheet 6.7.4.2. Output Tabsheet The Output tabsheet displays a summary of the communication between the script and the server. The messages displayed can be information or errors. Each message displays the time, the action that was carried out, and the response from the server. This output is useful for troubleshooting scripts. 


c1title: GLib License (for MySQL Workbench)
c2content:
 B.9. GLib License (for MySQL Workbench) B.9. GLib License (for MySQL Workbench) The following software may be included in this product: GLib You are receiving a copy of the GLib library in both source and object code in the following folder: C:\Program Files (x86)\MySQL\MySQLWorkbench 5.2\ on Windows and MySQLWorkbench.app/Contents/Frameworks on Mac OS X. The terms of the Oracle license do NOT apply to the GLib library; it is licensed under the following license, separately from the Oracle programs you receive. If you do not wish to install this library, you may go to the folder C:\Program Files (x86)\MySQL\MySQL Workbench 5.2\ and remove or replace the libglib-2.0-0.dll, libgmodule-2.0-0.dll, libgobject-2.0-0.dll and libgthread-2.0-0.dll files if present on Windows or go to the folder MySQLWorkbench.app/Contents/Frameworks and remove or replace the files libglib-2.*.dylib, libgmodule-2.*.dylib and libgthread-2.*.dylib on Mac OS X, but the Oracle program might not operate properly or at all without the library. This component is licensed under Section B.11, “GNU Lesser General Public License Version 2.1, February 1999” . 


c1title: The MySQL Table Editor
c2content:
 7.7.1.3. The MySQL Table Editor 7.7.1.3. The MySQL Table Editor 7.7.1.3.1. The Main Editor Window 7.7.1.3.2. The Table Tab 7.7.1.3.3. The Columns Tab 7.7.1.3.4. The Indexes Tab 7.7.1.3.5. The Foreign Keys Tab 7.7.1.3.6. The Triggers Tab 7.7.1.3.7. The Partitioning Tab 7.7.1.3.8. The Options Tab 7.7.1.3.9. The Inserts Tab 7.7.1.3.10. The Privileges Tab The MySQL Table Editor is a component that enables the creation and modification of tables. You can add or modify a table's columns or indexes, change the engine, add foreign keys, or alter the table's name. The MySQL Table Editor can be accessed from the MySQL Workbench by first selecting the MySQL Model tab, then double-clicking a table in the Physical Schemata panel. You can also access MySQL Table Editor from an EER Diagram by double-clicking a table object. 7.7.1.3.1. The Main Editor Window Any number of tables may be edited in the MySQL Table Editor at any one time. Adding another table creates a new tab at the top of the editor. By default, the MySQL Table Editor appears docked at the bottom of the application. The MySQL Table Editor is shown in the following figure. Figure 7.8. The Table Editor The MySQL Table Editor provides a work space that has tabs used to perform these actions: Table : Edit features that apply to the table as a whole Columns : Add or modify columns Indices : Add or modify indexes Foreign Keys : Add or modify foreign keys Triggers : Add or modify triggers Partitioning : Manage partitioning Options : Add or modify various general, table, and row options Inserts : Write INSERT statements Privileges : Set privileges on the table The following sections discuss these tabs in further detail. 7.7.1.3.2. The Table Tab Use the Table tab to edit the table name, collation, storage engine, or comment. 7.7.1.3.3. The Columns Tab Use the Columns tab to display and edit all the column information for a table. With this tab, you can add, drop, and alter columns. You can also use the Columns tab to change column properties such as name, data type, and default value. Figure 7.9. The Columns Tab Right-click a row under the Column Name column to open a pop-up menu with the following items: Move Up : Move the selected column up. Move Down : Move the selected column down. Delete Selected Columns : Select multiple contiguous columns by right-clicking and pressing the Shift key. Use the Control key to select noncontiguous columns. Refresh : Update all information in the Columns tab. Clear Default : Clear the assigned default value. Default NULL : Set the column default value to NULL . Default 0 : Set the column default value to 0 . To add a column, click the Column Name field in an empty row and enter an appropriate value. Select a data type from the Datatype list. Select a column property check box as required according to the following list of column properties: PK : Primary key NN : Not null UQ : Unique BIN : Binary UN : Unsigned ZF : Zerofill AI : Auto-increment To change the name, data type, default value, or comment of a column, double-click the value you wish to change. The content then becomes editable. You can also add column comments to the Column Comment field. It is also possible to set the column collation, using the list in the Column Details panel. To the left of the column name is an icon that indicates whether the column is a member of the primary key. If the icon is a small key, that column belongs to the primary key, otherwise the icon is a blue diamond or a white diamond. A blue diamond indicates the column has NN set. To add or remove a column from the primary key, double-click the icon. You can also add a primary key by checking the PRIMARY KEY check box in the Column Details section of the table editor. If you wish to create a composite primary key you can select multiple columns and check the PK check box. However, there is an additional step that is required, you must click the Indexes tab, then in the Index Columns panel you must set the desired order of the primary keys. Note When entering default values, in the case of CHAR and VARCHAR data types MySQL Workbench will attempt to automatically add quotation marks, if the user does not start their entry with one. For other data types the user must manage quoting if required, as it will not be handled automatically by MySQL Workbench. Caution Care must be taken when entering a default value for ENUM columns because a nonnumeric default will not be automatically quoted. You must manually add single quote characters for the default value. Note that MySQL Workbench will not prevent you from entering the default value without the single quotation marks. If a nonnumeric default value is entered without quotation marks, this will lead to errors. For example, if the model is reverse engineered, the script will contain unquoted default values for ENUM columns and will fail if an attempt is made to run the script on MySQL Server. 7.7.1.3.4. The Indexes Tab The Indexes tab holds all index information for your table. Use this tab to add, drop, and modify indexes. Figure 7.10. The Indexes Tab Select an index by right-clicking it. The Index Columns section displays information about the selected index. To add an index, click the last row in the index list. Enter a name for the index and select the index type from the list. Select the column or columns that you wish to index by checking the column name in the Index Columns list. You can remove a column from the index by removing the check mark from the appropriate column. You can also specify the order of an index by choosing ASC or DESC under the Order column. Create an index prefix by specifying a numeric value under the Length column. You cannot enter a prefix value for fields that have a data type that does not support prefixing. To drop an index, right-click the row of the index you wish to delete, then select the Delete Selected Indexes menu item. 7.7.1.3.5. The Foreign Keys Tab The Foreign Keys tab is organized in much the same fashion as the Indexes tab and adding or editing a foreign key is similar to adding or editing an index. To add a foreign key, click the last row in the Foreign Key Name list. Enter a name for the foreign key and select the column or columns that you wish to index by checking the column name in the Column list. You can remove a column from the index by removing the check mark from the appropriate column. Under Foreign Key Options , choose an action for the update and delete events. The options are: RESTRICT CASCADE SET NULL NO ACTION To drop a foreign key, right-click the row you wish to delete, then select the Delete Selected FKs menu item. To modify properties of a foreign key, select it and make the desired changes. 7.7.1.3.6. The Triggers Tab The Triggers tab opens a field for editing an existing trigger or creating a new trigger. Create a trigger as you would from the command line. 7.7.1.3.7. The Partitioning Tab To enable partitioning for your table, check the Enable Partitioning check box. This enables the partitioning options. The Partition By pop-up menu displays the types of partitions you can create: HASH LINEAR HASH KEY LINEAR KEY RANGE LIST Use the Parameters field to define any parameters to be supplied to the partitioning function, such as an integer column value. Choose the number of partitions from the Partition Count list. To manually configure your partitions, check the Manual check box. This enables entry of values into the partition configuration table. The entries in this table are: Partition Values Data Directory Index Directory Min Rows Max Rows Comment Subpartitioning is also available. For more information about partitioning, see Partitioning . 7.7.1.3.8. The Options Tab The Options tab enables you to set several types of options, which are grouped into the following sections: General Options Row Options Storage Options Merge Table options The following discussion describes these options in more detail. General Options Section In the General Options section, choose a pack keys option. The options are Default , Pack None , and Pack All . You may also encrypt the definition of a table. The AUTO_INCREMENT and delayed key update behaviors apply only to MyISAM tables. Row Options Section To set the row format, choose the desired row format from the list. For more information about the different row formats that are available, see MyISAM Table Storage Formats . These options are: Default Dynamic Fixed Compressed Redundant Compact When you expect a table to be particularly large, use the Avg. Row , Min. Rows , and Max. Rows options to enable the MySQL server to better accommodate your data. See CREATE TABLE Syntax for more information on how to use these options. Storage Options Section The Storage Options section is available only for MyISAM tables. Use it to configure a custom path to the table storage and data files. This can help improve server performance by locating different tables on different hard drives. Merge Table Options Section Use the Merge Table Options section to configure MERGE tables. To create a MERGE table, select MERGE as your storage engine and then specify the MyISAM tables you wish to merge in the Union Tables dialog. You may specify the action the server should take when users attempt to perform INSERT statements on the merge table. You may also select the Merge Method by selecting from the list. For more information about MERGE tables, see The MERGE Storage Engine . 7.7.1.3.9. The Inserts Tab Use the Inserts tab to insert rows into the table. To edit a row, click the field you wish to change and enter the new data. Right-clicking a row displays a menu with the following items: Set Field(s) to NULL: Set the column value to NULL . Delete Row(s): Delete the selected row or rows. Copy Row Content: Copies the row to the clipboard. Strings are copied quoted, and NULL values are preserved. Copy Row Content (unquoted): Copies the row to the clipboard. Strings are not quoted and NULL are copied as a space. Copy Field Content: Copies the value of the selected field to the clipboard. Strings are quoted. Copy Field Content (unquoted): Copies the value of the selected field to the clipboard. Strings are not quoted. Note that the insert editor features a toolbar. This has the same functionality as explained in Section 6.7.4.5, “Results Tabsheets” and Section 6.7.4.6, “Live Editing Tabsheets” . You can also hover the cursor over the toolbar to display tooltips. Any rows you add will be inserted when you forward engineer the database (if you choose the Generate INSERT statements for tables option). Note When entering string values that there is slightly different behavior between the 5.0, 5.1, and 5.2 versions of MySQL Workbench. For 5.0 and 5.1, if a string is entered without leading and trailing quotation marks, the Inserts Editor adds quoting and escapes characters that require it. However, if quoted text is entered, the Inserts Editor performs no further checks and assumes that a correctly escaped and quoted sequence has been entered. 5.2 features a new Inserts Editor. In this case, the user enters the string without quoting or escaping and the Inserts Editor takes care of all quoting and escaping as required. Note It is possible to enter a function, or other expression, into a field. Use the prefix \func to prevent MySQL Workbench from escaping quotation marks. For example, for the expression md5('fred') , MySQL Workbench normally would generate the code md5(\'fred\') . To prevent this, enter the expression as \func md5('fred') to ensure that the quoting is not escaped. 7.7.1.3.10. The Privileges Tab Use the Privileges tab to assign specific roles and privileges to a table. You may also assign privileges to a role using the role editor. For a discussion of this topic, see Section 7.5.5.1, “Adding Roles” . When this tab is first opened, all roles that have been created are displayed in the list on the right. Move the roles you wish to associate with this table to the Roles list on the left. Do this by selecting a role and then clicking the &lt; button. Use the Shift key to select multiple contiguous roles and the Control key to select noncontiguous roles. To assign privileges to a role, click the role in the Roles list. This displays all available privileges in the Assigned Privileges list. The privileges that display are: ALL CREATE DROP GRANT OPTION REFERENCES ALTER DELETE INDEX INSERT SELECT UPDATE TRIGGER You can choose to assign all privileges to a specific user or any other privilege as listed previously. Privileges irrelevant to a specific table, such as the FILE privilege, are not shown. If a role has already been granted privileges on a specific table, those privileges show as already checked in the Assigned Privileges list. 


c1title: The Relationship Editor
c2content:
 7.7.2.2. The Relationship Editor 7.7.2.2. The Relationship Editor Double-clicking a relationship on the EER diagram canvas opens the relationship editor. This has two tabs: Relationship , and Foreign Key . The Relationship Tab In the Relationship tab, you can set the caption of a relationship using the Caption field. This name displays on the canvas and is also the name used for the constraint itself. The default value for this name is fk_ source_table_destination_table . Use the Model menu, Menu Options menu item to set a project-specific default name for foreign keys. To change the global default, see Section 5.4.4, “The Model Tab” . You can also add a secondary caption and a caption to a relationship. The Visibility Settings section is used to determine how the relationship is displayed on the EER Diagram canvas. Fully Visible is the default but you can also choose to hide relationship lines or to use split lines. The split line style is pictured in the following figure. Figure 7.12. The Split Connector Note A broken line connector indicates a nonidentifying relationship. The split line style can be used with either an identifying relationship or a nonidentifying relationship. It is used for display purposes only and does not indicate anything about the nature of a relationship. To set the notation of a relationship use the Model menu, Relationship Notation menu item. For more information, see Section 7.5.1.5.4, “The Relationship Notation Submenu” . The Foreign Key Tab The Foreign Key tab contains several sections: Referencing Table , Cardinality and Referenced Table . The Mandatory check boxes are used to select whether the referencing table and the referenced table are mandatory. By default, both of these constraints are true (indicated by the check boxes being checked). The Cardinality section has a set of radio buttons that enable you to choose whether the relationship is one-to-one or one-to-many. There is also a check box that enables you to specify whether the relationship is an identifying relationship. 


