Re: Dbms_identifiers_and_case_sensitivity

Lorenzo Alberton has a nice post about understanding how different databases handle quoting identifiers and case sensitivity. There was one thing I thought worth adding to the discussion, which was to remind folks that along with the inconsistent behavior you get running MySQL on different operating systems, you need to be aware that it also uses a non-standard quoting mechanism; using ` rather than ” for quoting identifiers. You can change this behavior to something more standard by using the SQL_MODE parameter, worth looking at if you’re doing cross database development (or just future proofing your app). Of course, thinking about SQL_MODE, you also have to be aware of things like lowercase_table_names, which can also change the behavior that you might see (i’d recommend defining that setting as part of your database naming conventions). And of course, you can override a lot of these things at the session level, so you can’t necessarily count on setting these in your mysql conf file (consider an application that overrides this behavior). Blech… sometimes TMTOWTDI is more trouble than it is worth.