Monday, December 1, 2008

Linux: MySQL case sensitivity

As a matter of principle when writing SQL for mix-OS systems:

USE LOWER CASE ONLY

Example proper case SQL statement:

CREATE TABLE `address` (                       

           `id` bigint(20) NOT NULL auto_increment,     

           `attn_care_of` varchar(255) default NULL,  

           PRIMARY KEY  (`id`)                          

         ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 


This is especially important when developing on Windows systems where case does not matter. It is possible to configure MySQL to be case sensitive/insensitive, but that is seldom done.