The best thing you can do here is to correct the names of your tables so that there are no conflicts. Differentiating solely in the case is a bad idea and leads to confusion (as you probably know).
But try using single quotes around table names at creation time. This works on SUSE / Linux / MySQL 5.0 with a query browser running on Windows.
CREATE TABLE `MySchema`.`test` ( `COMMENT` text ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `MySchema`.`Test` ( `COMMENT` text ) ENGINE=InnoDB DEFAULT CHARSET=utf8; insert into MySchema.test values ('this is table test' ); insert into MySchema.Test values ('this is table Test' ); select * from MySchema.test; select * from MySchema.Test;
Do you want it to fail if a case-independent client requests a table using the wrong case? I believe that it should fail if the MySQL database is running on Linux.
Check out this link βOne notable exception is Mac OS X, which is Unix-based but uses a default file system type (HFS +) that is not case sensitive. However, Mac OS X also supports UFS volumes that are case sensitive. same as any Unix. "
Monkeywrench
source share