Bug #58808 Alter Table dialog fails to detect a case-only change in Name
Submitted: 8 Dec 2010 3:50 Modified: 16 Nov 2011 15:38
Reporter: Terry Nycum Email Updates:
Status: Closed Impact on me:
Category:MySQL Workbench: SQL Editor Severity:S3 (Non-critical)
Version:5.2.30 OS:Windows
Assigned to: CPU Architecture:Any
Tags: alter, ALTER TABLE, case, case sensitivity, rename

[8 Dec 2010 3:50] Terry Nycum
Changes of case in the Name box in at least the Alter Table dialog (perhaps others) aren't detected when the user tries to Apply.

If this is the only change made, the RDMS reply box says no modification was detected. If additional changes were made outside the Name box, only those changes are reflected in the SQL statement generated.

How to repeat:
In Object Browser, right click on a table and select "Alter Table...".
Change the case of one of the characters in the Name box.
Click Apply.
Read message in box directly to the left.

Suggested fix:
Use case-sensitive comparison for Name box unless the version of MySQL server in use is case-insensitive with respect to table names, in which case reply with a specific error pointing that out.
[8 Dec 2010 6:54] Terry Nycum
(refined category, edited synopsis for clarity)
[8 Dec 2010 15:37] Johannes Taxacher
In Applications preferences there is an option whether identifiers shoould be treated case-sensitive or not.
if the setting "SQL Identifiers are Case Sensitive" is off, the message, about no changes detected appears (which is valid in that case).
Still there is a problem when the preference setting is activated: if the only change in the table editor is a change of Case in table name, then theres an err when trying to apply that complains about "conflicting tablename"
[17 Dec 2010 5:40] Terry Nycum
Hm. I'd forgotten about the preferences, but I believe I did have the "SQL Identifiers are Case Sensitive" box checked when I reported. At any rate, it's checked now, and the message I get is "No changes to object were detected." *shrug*
[16 Nov 2011 15:38] Philip Olson
Fixed as of 5.2.37:

+        Altering the case of a table name caused an error, when that was
+        the only change and the <literal>SQL Identifiers are Case
+        Sensitive</literal> option was set to true.