here is what I found out when raising the issue to the hosting company who setup the server for us:
This issue of Case-Sensitivity exists in Unix versions, Windows versions are case in-sensitive as far as table names are concerned. You may be experiencing problems related to this difference if you are transfering working MySql code from Windows to a Unix platform.
It is rumored that this issue may be resolved on newer versions of MySql. In the meantime, to avoid data transfer problems stemming from lettercase of database or table names, you have two options:
* Use "lower_case_table_names=1" on all systems. The main disadvantage with this is that when you use "SHOW TABLES" or "SHOW DATABASES", you don't see the names in their original lettercase.
* Use "lower_case_table_names=0" on Unix and "lower_case_table_names=2" on Windows. This preserves the lettercase of database and table names. The disadvantage of this is that you must ensure that your statements always refer to your database and table names with the correct lettercase on Windows. If you transfer your statements to Unix, where lettercase is significant, they do not work if the lettercase is incorrect.
Exception: If you are "using InnoDB" tables, you should set "lower_case_table_names" to 1 on all platforms to force names to be converted to lowercase.
Note that if you plan to set the "lower_case_table_names" system variable to 1 on Unix, you must first convert your old database and table names to lowercase before restarting mysqld with the new variable setting.